Ports using USE_PYTHON=distutils are now flavored. They will
automatically get flavors (py27, py34, py35, py36) depending on what
versions they support.
There is also a USE_PYTHON=flavors for ports that do not use distutils
but need FLAVORS to be set. A USE_PYTHON=noflavors can be set if
using distutils but flavors are not wanted.
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
added to cope with Python ports that did not have the Python
PKGNAMEPREFIX but are flavored.
USES=python now also exports a PY_FLAVOR variable that contains the
current python flavor. It can be used in dependency lines when the
port itself is not python flavored. For example, deskutils/calibre.
By default, all the flavors are generated. To only generate flavors
for the versions in PYTHON2_DEFAULT and PYTHON3_DEFAULT, define
BUILD_DEFAULT_PYTHON_FLAVORS in your make.conf.
In all the ports with Python dependencies, the *_DEPENDS entries MUST
end with the flavor so that the framework knows which to build/use.
This is done by appending '@${PY_FLAVOR}' after the origin (or
@${FLAVOR} if in a Python module with Python flavors, as the content
will be the same). For example:
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
PR: 223071
Reviewed by: portmgr, python
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12464
Revert r426059 which removed py-unittest2.
(1) The port was revived and (2) the change was incomplete, breaking the
test target/phase because tests were not confirmed to continue to work
(without downloading the dependency, which is not allowed in poudriere),
or updated to work without unittest2.
Removing *_DEPENDS alone for whatever reason (expiry/deletion in this case)
is insufficient for ports of Python packages, as their code may still
register, reference or attempt to import that (package) code, and fatally
error if it is not available.
Other ports modified in that revision very likely require similar
updates, if they haven't been updated or fixed already.
[1] svnweb.freebsd.org/changeset/ports/426059
- Update to 1.25.0
- Switch to CHEESEHOP for distribution files (Geo-aware CDN)
- Canonicalize COMMENT (According to setup.py:description=)
- Switch to requests (2.x)
- Add TESTS option
- Update TEST_DEPENDS values and assignment
- Replace post-patch with a patch, submitted upstream [1]
- Use PYDISTUTILS_SETUP to ensure its setuptools wrapped
- Run pycurl tests that are disabled by default with this weird reverse
logic bit of code, issue created upstream [2]
if not os.environ.get('SKIP_PYCURL_TESTS'):
self.skipTest('Pycurl skipped as SKIP_PYCURL_TESTS is set'
[1] https://github.com/stripe/stripe-python/pull/170
[2] https://github.com/stripe/stripe-python/issues/172
QA: Ran 195 tests in 44.446s OK (skipped=9)
Point all www/py-requests dependants to www/py-requests1 in preparation for
the upgrade of www/py-requests to version 2.x, which substantially breaks API
compatibility.
Maintainers of these ports can update their requests dependency independently
as time for sufficient testing permits.
PR: ports/185631
- Update to 1.9.8
I missed this during the initial port commit. It fixes the failing unit
test.
Changes:
1.9.8 2013-10-17: Removed incorrect test.
1.9.7 2013-10-10: Add support for metadata.
1.9.6 2013-10-08: Fix issue with support for closing disputes.
PR: ports/182313