- Add a public VersionRange API and SpecifierSet.to_range(),
representing the versions a specifier set accepts as an interval set
that supports intersection, union, difference, complement, set
relations, membership tests, and filtering.
VersionRange.to_specifier_set() converts a range back to a
SpecifierSet where a PEP 440 form exists.
- PEP 808: accept Metadata-Version: 2.6.
- Add a limit argument to parse_tag() for compressed tag sets.
- Add a prefer_sdist_predicate argument to Pylock.select() to prefer
source distributions over wheels for selected packages.
- Add pure_python_tags() to generate the pure-Python tags for a Python
version without touching the running platform.
- Add SpecifierSet.is_subset(), SpecifierSet.is_superset(), and
SpecifierSet.is_disjoint(), which compare the versions two specifier
sets accept.
- Drop support for Python 3.8; packaging now requires Python 3.9 or
later.
- Prefer native linux_* platform tags over manylinux and musllinux tags
on Linux. - Add a musl/Alpine test job and make the test suite pass on
musl.
The tests now work on musl so don't skip the manylinux tests.
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
LICENSE = "Apache-2.0 OR BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=faadaedca9251a90b205c9167578ce91"
LICENSE = "Apache-2.0 OR BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=faadaedca9251a90b205c9167578ce91"
-SRC_URI[sha256sum] = "ff452ff5a3e828ce110190feff1178bb1f2ea2281fa2075aadb987c2fb221661"
+SRC_URI[sha256sum] = "94edc256424af38762eb31306eed28beb9f0efc50a8837492c9d6fd6004aed79"
SRC_URI += "file://run-ptest.in"
SRC_URI += "file://run-ptest.in"
# This test needs tomli_w which isn't currently in meta/
SKIPLIST = "--ignore=tests/test_pylock.py"
# This test needs tomli_w which isn't currently in meta/
SKIPLIST = "--ignore=tests/test_pylock.py"
-# Tests don't handle manylinux+musl (https://github.com/pypa/packaging/issues/850)
-SKIPLIST:append:libc-musl = " --deselect=tests/test_manylinux.py::test_is_manylinux_compatible_old --deselect=tests/test_tags.py::TestManylinuxPlatform --deselect=tests/test_tags.py::TestSysTags"
do_compile:class-native () {
python_flit_core_do_manual_build
do_compile:class-native () {
python_flit_core_do_manual_build