Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 23 Aug 2017 13:27:49 +1000
From:      Kubilay Kocak <koobs@FreeBSD.org>
To:        Ben Woods <woodsb02@FreeBSD.org>, ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org, "python@freebsd.org" <python@freebsd.org>
Subject:   Re: svn commit: r448586 - in head/sysutils/py-salt: . files
Message-ID:  <03f0b3f7-702a-2f66-a761-23585a193d86@FreeBSD.org>
In-Reply-To: <201708222302.v7MN2Llj052610@repo.freebsd.org>
References:  <201708222302.v7MN2Llj052610@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 8/23/17 9:02 AM, Ben Woods wrote:
> +# Python 2.7-3.3 require enum34, unnecessary for Python 3.4+
> +.if ${PYTHON_REL} < 3400
> +RUN_DEPENDS+=	${PYTHON_PKGNAMEPREFIX}enum34>0:devel/py-enum34
> +.endif

A heads-up just in case, as it has occurred numerous times in the past
and is not immediately obvious ...

When matching or modifying package dependencies in Python ports
(conditional dependencies, updating version numbers), especially when
making changes that are not reflected in the upstream sources, make sure
to check and patch setup.py to make sure *everything* matches or is
conditional there also. This includes when changing == to >=
dependencies and similar.

If they're not the same, setuptools will spit out a unsatisfied
dependency errors at runtime.

For conditional dependencies where some Python versions contain the
module, the error will still be produced, as dependencies are checked
only against third-party packages, not the standard library.

In these cases it is still very much OK to depend on the PyPI
(third-party) version (like enum and argparse), if one can't be bothered
or does not want to patch the sources to compensate.

./koobs



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?03f0b3f7-702a-2f66-a761-23585a193d86>