USE_PYTHON=pep517 takes no arguments. Operation is similar to
USE_PYTHON=distutils, although the build backend specified in
pyproject.toml is to be specified in BUILD_DEPENDS explicitly. A
usage guide and implementation primer is available at:
https://wiki.freebsd.org/Python/PEP-517
With hat: python
Approved by: fluffy (mentor)
Co-authored by: yuri
PR: 255722
Differential Revision: https://reviews.freebsd.org/D36290
Change proposal was in discussion with open questions and additional
documented design requirement [0] for submitter to review and provide
feedback on, which was not provided.
Submitter (and anyone else) is welcome to work with python@ to
produce an appropriately reviewed feature.
[0] https://wiki.freebsd.org/Python/PEP-517
With hat: python (vishwin, koobs)
PR: 255722, 265660, 265692, 265693
Approved by: fluffy (mentor)
USE_PYTHON=build supports PEP-517 at the level of individual ports.
Global support (making PEP-517 be used for all ports) is outside of the
scope of this patch.
PR: 255722
Approved by: python (maintainer's timeout; 14 days)
Differential Revision: https://reviews.freebsd.org/D36061
This patch adds preliminary support for "make test". It supports nose, nose2,
pytest, unittest and unittest2. Enable this by adding one of the following:
USE_PYTHON=nose
USE_PYTHON=nose2
USE_PYTHON=pytest
USE_PYTHON=unittest
USE_PYTHON=unittest2
The pytest support was derived from USES=pytest. All user-facing variables are
kept unchanged except PYTEST_ARGS which has been changed to generic TEST_ARGS.
USES=pytest can be changed to USE_PYTHON=pytest as follows:
USES=pytest -> USE_PYTHON=pytest
USES=pytest:4 -> USE_PYTHON=pytest4
PYTEST_ARGS -> TEST_ARGS
Run Tools/scripts/indent_make_if.pl on all of Mk.
These white space changes contribute greatly to the readability of those files.
As we have a version control system, finding out the reasons for the changes
prior to these white space changes is still easily possible
Differential Revision: https://reviews.freebsd.org/D35024
Reviewed by: portmgr (rene, bapt)
Obviously the world did not manage to get rid of Python 2.7
by 2020-12-31, so remove that target and just advise users
to move on to Python 3.
This is the commit 1/9 of review D33922
Differential Revision: https://reviews.freebsd.org/D33922
Python is an interpreted object-oriented programming language, and is
often compared to Tcl, Perl or Scheme.
WWW: https://www.python.org/
PR: 259745
Approved by: python
Add devel version of cython. Apart from that 3.x cython branch is
where all the development goes on, 0.29.x only getting backported
bugfixes, this is currently the only version which supports python
3.11. Because of that, wire USE_PYTHON=cython to cython-devel for
python >= 3.11 in Uses/python.mk as well and limit supported python
versions with <= 3.10 for cython.
PR: 259898
Approved by: python (lwhsu)
- Copy devel/py-setuptools to devel/py-setuptools44 (for Python 2.7 support)
- Update devel/py-setuptool to 57.0.0 (adding support for Python 3.10)
- Update Mk/Uses/python.mk to chose between py-setuptools and
py-setuptools44 based on Python version
This allows us to have latest setuptools and working Python 3.10
without breaking packages requiring Python 2 support for remaining
reports that require it.
Exp-run showed 3 ports failing to build with latest setuptools and
they were fixed.
PR: 256173
Exp-run by: antoine
Reviewed by: koobs (python)
Approved by: koobs (python)
Differential_Revision: https://reviews.freebsd.org/D30473
This brings python framework in consistense with handbook recommendations
to prefer DISTVERSION and simplifies adding prerelease versions of
python
PR: 255013
Differential Revision: https://reviews.freebsd.org/D29418
Exp-run by: antoine
Approved by: wen@, no objection from python@ or portmgr@
This is getting us one step further to deorbitting Python 2.7.
Reviewed by: rene, antoine, swills
Differential Revision: https://reviews.freebsd.org/D28459
This shared macro was necessary to use with flavors and not break ports with
USES=python (all versions).
All ports that depends on Sphinx are using the latest version on tree.
Approved by: python (with hat)
The devel/py-futures port was removed in r559976 as it was for
Python 2.7 only and no longer referenced in the default cases.
However it was still defined in Mk/Uses/python.mk in PY_FUTURES,
leaving a dangling reference.
Remove it from Mk/Uses/python.mk and from affected ports, as
it was already an empty definition for Python 3.6+
Bump minimal Python version of security/theonionbox to 3.6+
The graphics/py-pillow6 port was removed in r559976 as it was for
Python 2.7 only and no longer referenced in the default cases.
However it was still defined in Mk/Uses/python.mk in PY_PILLOW,
leaving a dangling reference.
Remove it from Mk/Uses/python.mk, leaving only the Python 3
version of that port, graphics/py-pillow, defined and bump the
minimal verion of Python to 3.6 for affected ports.
Since Python-3.8.7 it uses unified with other platforns shared libs naming scheme:
instead of plain .so suffix now it refers to used cpython: .cpython-${PYTHON_SUFFIX}.so
Future Python releases will use this scheme too, it will be hooked via version check
PR: 252057
Approved by: python (wen)
When python package lists are generated by distutils, any file entry that
includes a space will be surrounded in double quotes. This is unnecessary
and causes problems elsewhere such as when stripping ${PREFIX} for staging
or checking the package list in stage-qa.
PR: 248981
Approved by: kevans, portmgr (mat), python (koobs)
Differential Revision: https://reviews.freebsd.org/D26221