Changelog:
===========
- Never add a vendored smmap directory to sys.path
- Revise and update the readme
- Set Dependabot submodule update cadence to weekly
- Add missing asserts in test_base.py
- Use contextlib.suppress instead of except: pass
- Add support for Python 3.13
- Potential Race Condition Fix - OS Rename & Chmod - PermissionError
- Bump gitdb/ext/smmap from 256c5a2 to 04dd210
- Bump actions/setup-python from 4 to 5
(From OE-Core rev: d899b50547e319cca8bea41301a4758e7635b6cf)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The newly added ptest-python-pytest removes duplication for:
1. Copying pytest files to the ptest directory
2. Adding standard pytest dependencies
3. Adding a common run-ptest script using pytest
(From OE-Core rev: 8d84d9e19b9292b1863921611924714d77c41d21)
Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog: https://docs.python.org/3/whatsnew/changelog.html#python-3-13-1-final
- Patch 'fix-armv5.patch' is in 3.13.1, so no longer needed:
|tgamblin@megalith ~/workspace/git/pythonsrc/cpython ((HEAD detached from v3.13.1))$ git tag --contains 18b9079ddbc149d6b99c922630c246812e4d8ae7
|v3.13.1
- While patch 'crosspythonpath.patch' is listed as 'Inappropriate
[OE-Core integration specific]' specific in the commit message, it is
now breaking the build, while removing it allows python3 to build OK.
It appears that there is a similar change in upstream 3.13.1:
https://github.com/python/cpython/commit/909d5ac2959e
- gcc-symlinks had to be added to ptest RDEPENDS so that 'gcc' could be
found on the path for the
test_ctypes.test_dlerror.TestNullDlsym.test_null_dlsym test.
- Also reformat the DEPENDS and RDEPENDS lists to be alphabetical
and one-per-line, since that's easier to read and modify.
- buildall-qemu output:
|BUILDALL-QEMU LOG FOR python3
|START TIME: 2024-12-18_20:38:01
|HOSTNAME: megalith
|HOST OS: Debian GNU/Linux 12 (bookworm)
|HOST KERNEL: 6.1.0-28-amd64
|===============
|BUILD RESULTS:
|[glibc]
|FAIL: qemuloongarch64
|PASS: qemuriscv32
|PASS: qemuarmv5
|PASS: qemuppc
|PASS: qemumips64
|PASS: qemuriscv64
|PASS: qemuarm64
|PASS: qemuarm
|PASS: qemux86-64
|PASS: qemuppc64
|PASS: qemux86
|PASS: qemumips
|[musl]
|FAIL: qemuloongarch64
|FAIL: qemuriscv32
|PASS: qemuarmv5
|PASS: qemuppc
|PASS: qemumips64
|PASS: qemuriscv64
|PASS: qemuarm64
|PASS: qemuarm
|PASS: qemux86-64
|PASS: qemuppc64
|PASS: qemux86
|PASS: qemumips
|===============
|PASSED: 21
|FAILED: 3
(From OE-Core rev: 08c44d3b140b220ead6334db26097b28612d445a)
Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
License-Update: Copyright year updated to 2024.
Changelog:
===========
- Pull request #388: Remove 'URLopener' and 'FancyURLopener' classes from
'urllib.request' when running on Python 3.14 or greater.
- Pull request #365, issue #283: 'six.moves.UserDict' now points to
'UserDict.IterableUserDict' instead of 'UserDict.UserDict' on Python 2.
(From OE-Core rev: dd62b4f7b46bb5551e5397404356c56905dda9ce)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog:
===========
- Fix self.instance._outcome is None
- Add support for Python 3.13.
- Dropped support for EOL Python 3.8.
- Fixed output when using TestCase.skipTest
- Fixed pytest requirement to >=7.3
(From OE-Core rev: 2e76adbe47584736a6aa639b339392a36af5e872)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
0001-build_context-improve-wheel-reproducibility-by-sorti.patch
removed since it's included in 1.7.8
Changelog:
==========
- Fix aarch64 Windows cross compilation
- [pre-commit.ci] pre-commit autoupdate
- Fix aarch64 Windows cross compilation
- fix abi3 interpreter discovery on Windows
- fix: remove extra indent in generated CI
- Upgrade cargo-xwin to unify rustls versions
- Normalize python source directory path
- Enable fat LTO for maturin release workflow
- Use different binding dirs for different uniffi modules
- Update minimal Python minor version for pyo3 0.23
- Limit minimal PyPy version based on bindings crate version
- Remove hard coded pip show in fix_direct_url
- Do not use xwin to compile on Windows when MSVC compiler can build for the target
- fix abi3 interpreter discovery on Windows
- allow -i 3.13t
- propagate abiflags to wheel name on Windows
- Add free-threaded wheel build to generate-ci by default
- Bump metadata version to 2.4 to fix license bug
- allow -i 3.13t
- propagate abiflags to wheel name on Windows
- Add free-threaded wheel build to generate-ci by default
- Auto detect Python 3.13
- feat: add skip attestation option to maturin ci github
- generate-ci: use macos-13 runner for x86_64 build job
- Improve wheel reproducibility by sorting libs
- Fix inverted workspace inclusions
- Fix broken links to PyO3 building docs
- Update goblin to 0.9
- Don't resolve python interpreter when building sdist only
- include timestamps in the suggested log format
- Add support for GNU/Hurd
- Fix __init__ exports when using multiple UniFFI bindings
- Add free-threaded Python support
(From OE-Core rev: f4accbf8704f690c5a50b05af815d61b75e8a2ce)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog:
===========
- [bug] [lexer] Reverted the fix for #140 released in Mako 1.3.7 as it produced
regressions in existing user code.
- [bug] [codegen] [lexer] During the lexical analysis phase, add an additional prefix for undeclared
identifiers that have the same name as built-in flags, and determine the
final filter to be used during the code generation phase based on the
context provided by the user.
- [bug] [lexer] Support the direct passing of dictionary literals when calling functions
and fix the errors caused by nested braces. This revises the fix that was
released in 1.3.4 and then reverted in 1.3.5.
(From OE-Core rev: 76e1577b99b4319a9ea45fa4fb2b07d849f35f68)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
With the upstream check migrated to the simple repo API, a number of the
recipes required updates to:
1. Remove outdated UPSTREAM_CHECK_REGEX checks
2. Add recipe specific UPSTREAM_CHECK_PYPI_PACKAGE definitions for
packages that use '_', CamelCase, or other deviations from PEP625 in
the source archive
(From OE-Core rev: efbb98977664cd5392ec00d97d0eaf5374a32573)
Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Remove patch, as it is a leftover from meta-virtualization times
where python3-dtc was ahead of dtc in oe-core and had to be tweaked.
(From OE-Core rev: 0706f0e3a60713bffad219c0658b15020010eb5e)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
1.26.3:
- Support an old import path that is still used by some consumers like
Hatch
1.26.2:
- Back-populate string license fields (License-Expression) for core
metadata versions prior to 2.4
- Remove the License-Expression and License-Files core metadata from
version 2.2 that was missed in the previous minor release
1.26.1:
- Add backward compatibility for the old license-files metadata field
- Support an old import path that is still used by some consumers like
Hatch
1.26.0:
- The license-files metadata field has been updated to the latest spec
and is now just an array of glob patterns
- Support version 2.4 of core metadata for the wheel and sdist targets
- Add HATCH_METADATA_CLASSIFIERS_NO_VERIFY environment variable to
disable trove classifier verification
- Add .pixi to the list of directories that cannot be traversed
- Bump the minimum supported version of packaging to 24.2
- No longer write package metadata for license expressions and files for
versions of core metadata prior to 2.4
- Properly enable Zip64 support for the wheel target
- Properly ignore parent .gitingore files when the project root matches
one of the patterns
(From OE-Core rev: 2c09f03e62f96016c2a3713362f83a7591bd0f9b)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* The package now requires python3-hatch-vcs-native at build-time
* Updated HOMEPAGE to point to the correct Github repository. The old link re-directs to the same link.
2.2.3 (2024-09-12)
==================
Features
--------
- Added support for Python 3.13.
Bugfixes
--------
- Fixed the default encoding of chunked request bodies to be UTF-8 instead of ISO-8859-1. All other methods of supplying a request body already use UTF-8 starting in urllib3 v2.0.
- Fixed ResourceWarning on CONNECT with Python < 3.11.4 by backporting https://github.com/python/cpython/issues/103472
- Adjust tolerance for floating-point comparison on Windows to avoid flakiness in CI
- Fixed a crash where certain standard library hash functions were absent in restricted environments.
- Fixed mypy error when adding to ``HTTPConnection.default_socket_options``.
HTTP/2 (experimental)
---------------------
See details: https://github.com/urllib3/urllib3/releases/tag/2.2.3
Deprecations and Removals
-------------------------
- Note for downstream distributors: the ``_version.py`` file has been removed and is now created at build time by hatch-vcs.
- Drop support for end-of-life PyPy3.8 and PyPy3.9
(From OE-Core rev: 61331e291a2f96c7ac7efccd7d95de68432ea992)
Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Looking at the history, python3-six was removed as a dependency
in the poetry.lock file in v1.5.2
Even before v1.5.2 and until now (v1.9.1) there is no code in
the package which imports the six module. So it can be safely
dropped from the recipe.
(From OE-Core rev: 1ed30cd9426e1f8a6caf31277f0349343a06f2d4)
Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Seems every time python is updated this gets removed. That's likely
because the tk option can't be enabled in python3-native without
creating a dependency loop.
Instead of manually editing the manifest every time, explicitly
add it in the recipe as suggested by Alexander Kanavin.
(From OE-Core rev: d2e82fc12509950ea30fa20fcbe9fc148b6cff1c)
Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Instead of relying completely on the python packaging manifest,
allow some default values. This is useful for the edge cases that
can't be found automatically by the create_manifest step.
In particular, tkinter can't be built for python3-native, so its
consistently missed in manifest updates.
(From OE-Core rev: cc5ec75b50618ce42d5b19d0aad0b44611bf8fbe)
Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Summary of changes:
- The ``--python`` option can now take the path of a virtualenv folder, as an
alternative to a Python executable.
- The metadata in packages now has the names of optional dependency groups
("extras") normalised, complying with version 2.3 of the metadata standard.
- Fix potential substitution of environment variables into passwords read from
``.pypirc`` files.
- A warning is now shown when building packages which specify the old
``flit.buildapi`` backend, which should be replaced by
``flit_core.buildapi``. It's a good idea to always set a maximum
version for the build requirement, to protect against changes in
future major versions of Flit.
- Avoid using the deprecated ``datetime.utcfromtimestamp()``.
- The tests for ``flit_core`` are no longer part of the installed package,
reducing the size of the wheels.
Remove the -tests package, as the tests are no longer installed.
(From OE-Core rev: 102e3524361d7d07f0dee09b1b12346b1184268f)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This was supposed to be added in oe-core commit fd656aaf7fbe
("python3-numpy: upgrade 1.26.4 -> 2.1.3"), but it somehow got missed in
the final version of that patch. Add it now to fix possible do_compile
errors on some systems, due to host paths sneaking into the meson build
options, e.g.:
| Build machine cpu family: x86_64
| Build machine cpu: x86_64
| Host machine cpu family: x86_64
| Host machine cpu: x86_64
| Target machine cpu family: x86_64
| Target machine cpu: x86_64
| Program python3 found: YES (/home/tgamblin/workspace/yocto/poky/build/tmp/work/core2-64-poky-linux-musl/python3-numpy/2.1.3/recipe-sysroot-native/usr/bin/nativepython3)
| Did not find pkg-config by name 'pkg-config'
| Found pkg-config: NO
| Run-time dependency python found: NO (tried pkgconfig, pkgconfig and sysconfig)
|
| ../numpy-2.1.3/meson.build:41:12: ERROR: Python dependency not found
|
| A full log can be found at /home/tgamblin/workspace/yocto/poky/build/tmp/work/core2-64-poky-linux-musl/python3-numpy/2.1.3/build/meson-logs/meson-log.txt
and notably (meson-log.txt snippet):
|x86_64-poky-linux-musl-g++ -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -fstack protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/media/build/poky/build/tmp/work/core2-64-poky-linux-musl/python3-numpy/2.1.3/recipe-sysroot -I/media/build/poky/build/tmp/work/core2-64-poky-linux-musl/python3-numpy/2.1.3/recipe-sysroot/usr/include/python3.13 -I/usr/include/python3.13
A bug has been filed about this and the related gcc issue: https://bugzilla.yoctoproject.org/show_bug.cgi?id=15672
With pkgconfig on the inherit line, all include directives in
meson-log.txt end up looking something like:
|-I/home/tgamblin/workspace/yocto/poky/build/tmp/work/core2-64-poky-linux-musl/python3-numpy/2.1.3/recipe-sysroot/usr/include/python3.13
(From OE-Core rev: b8503a2c5000262a400375321de75161357111fb)
Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
python3-rdflib was the last consumer of this recipe in oe-core.
(From OE-Core rev: 72cc499429b0869385223ba21fe03849c6145b89)
Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog:
==========
Fixed pure Python wheels converted from eggs and wininst files having the ABI tag in the file name
(From OE-Core rev: 06fcf1f8ae763eee996294e8636aedbdbf388491)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changelog:
============
- Supported max_queue=None in the asyncio and threading implementations for
consistency with the legacy implementation, even though this is never a good idea.
- Added close_code and close_reason attributes in the asyncio and threading
implementations for consistency with the legacy implementation.
- Once the connection is closed, messages previously received and buffered can
be read in the asyncio and threading implementations, just like in the legacy implementation.
(From OE-Core rev: b36742c5153873832fbf5fb1788d5c333286a583)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>