Commit Graph
10605 Commits
Author SHA1 Message Date
Ankur Tyagi 9faedff29f python3-ansi2html: upgrade 1.9.3-> 1.9.5
Changelog:
https://github.com/pycontribs/ansi2html/releases/tag/v1.9.5

Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-27 17:09:49 -07:00
Ankur Tyagi 82e2d308a2 python3-astroid: upgrade 4.3.1-> 4.3.2
Changelog:
https://github.com/pylint-dev/astroid/releases/tag/v4.3.2

Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-27 17:09:49 -07:00
Ankur Tyagi 8cb59f9bdd python3-pywbem: upgrade 1.9.0-> 1.9.1
Changelog:
https://pywbem.readthedocs.io/en/1.9.1/changes.html

Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-27 17:09:49 -07:00
Ankur Tyagi d2adc8b27e python3-ldap: upgrade 3.4.7-> 3.4.8
Changelog:
https://github.com/python-ldap/python-ldap/releases/tag/python-ldap-3.4.8

Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-27 17:09:48 -07:00
Khem Raj 3e3c03ebdf python3-filelock: upgrade 3.32.4 -> 4.0.4
Add python3-crypt to RDEPENDS: the library now imports hashlib
(_identity.py, pulled in by "import filelock" through the soft and
strict locks).

Changelog: https://github.com/tox-dev/filelock/blob/4.0.4/docs/changelog.rst

4.0.4
- Hostnames differing only past their first 253 escaped characters now
  publish distinct soft-lock owners.

4.0.3
- Skip the fork-safety audit hook on CPython 3.10/3.11, where it broke
  thread creation under coverage or a debugger.

4.0.2
- Fix OS lock leaks, double closes and false deadlocks from concurrent
  acquire()/release() on thread_local=False locks.
- Async read-write locks give each asyncio task its own hold.

4.0.1
- Validate poll_interval at construction, on the setter and on acquire().

4.0.0 (breaking)
- SoftReadWriteLock uses a new on-disk generation-log protocol under
  <path>.rw that earlier releases do not see; all participants on a lock
  path must be upgraded together. It now requires os.link.
- SoftReadWriteLock exposes a generation fencing token, reports lost
  holds through on_compromise, and no longer deadlocks when a holder on
  another host dies mid-transition.

AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-27 12:55:51 -07:00
Khem Raj 2a36133394 python3-pyzmq: skip test_close_all_fds ptest on musl
test_close_all_fds closes the socket through the IOLoop's shadow socket
and then reads s.closed. pyzmq implements that by calling
zmq_getsockopt() on the handle, which libzmq's reaper thread may already
have freed. With glibc the memory stays mapped, libzmq's tag check fails
and ENOTSOCK comes back; musl's allocator can unmap it, so the ptest run
segfaults intermittently and loses every result after it:

  File ".../tests/test_future.py", line 319 in test_close_all_fds
  Segmentation fault (core dumped)

Closing a socket via a shadow and then querying .closed on the original
segfaults on musl every time in a standalone reproducer and survives on
glibc. Skip the test for musl.

Tested with meta-python-image-ptest-python3-pyzmq on qemux86-64 with
yoe-musl-systemd-wayland.

AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-27 12:55:51 -07:00
Jan Vermaete 356405bad1 python3-construct: new recipe version 2.10.70
Recipe taken from meta-homeassistant of Tom Geelen.

Added ptests.  But removed the tests with binary data (e.g. .so file).
Those tests gave to much issues with QA rules of Yocto/Openembedded.

Moved from pypi to github to have all test code.

Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-27 12:54:16 -07:00
Leon Anavi daddebfde3 python3-pydantic: Upgrade 2.13.4 -> 2.13.5
Upgrade to release 2.13.5:

- Allow reuse of validators when plugins are set
- Fix missing GC traversal on some pydantic-core struct fields
- Fix missing GC traversal in pydantic-core for
  GeneralFieldsSerializer
- Count validated model fields once in smart unions

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-24 21:56:18 -07:00
Leon Anavi cafc18e150 python3-pydantic-core: Upgrade 2.46.4 -> 2.46.5
Upgrade to release 2.46.5 and keep all crates encapsulated in file
python3-pydantic-core-crates.inc. Drop the patch that enables
getrandom on all musl platforms because it has been merged in the
upstrea.

Release 2.46.5 brings the following changes:
- Fix missing GC traversal in pydantic-core for
  GeneralFieldsSerializer
- Fix missing GC traversal on some pydantic-core struct fields
- Count validated model fields once in smart unions

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-24 21:56:18 -07:00
Khem Raj 40455d6dbc layers: Update to use blacksail release series name
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-23 13:10:17 -07:00
Leon Anavi a31a426973 python3-ruff: Upgrade 0.16.4 -> 0.16.8
Upgrade to release 0.16.8:

Bug fixes

- Visit functional TypedDict keyword arguments correctly
- [flake8-simplify] Detect nested async with under sync parent
  (SIM117)
- [flake8-simplify] Preserve operand order in SIM109 fix
- [pyupgrade] Preserve required parentheses in multiline UP040
  fixes
- [pyupgrade] Skip TypeVarTuple and ParamSpec conversions with
  bounds or constraints (UP040, UP046, UP047)

Rule changes

- Add support for __lazy_modules__
- Recognize PEP-728 TypedDict class keywords
- Recognize quoted types in typing.TypeForm
- Support conditional assignment to __lazy_modules__
- [flake8-type-checking] Prefer lazy imports over TYPE_CHECKING on
  Python 3.15 and later (TC001, TC002, TC003)
- [pyupgrade] Make the fix for UP040 always unsafe
- [pyupgrade] Stop recommending deprecated ByteString aliases
  (UP035)
- [ruff, flake8-use-pathlib] Recognize the parent_mode argument
  (RUF064, PTH103)
- [ruff] Detect \Z in pytest.raises() match patterns (RUF043)

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:20 -07:00
Leon Anavi 83d9ea6021 python3-pybind11: Upgrade 3.0.4 -> 3.1.0
Upgrade to release 3.1.0:

- Support for Python 3.8 was removed. The minimum supported version
  is now Python 3.9.
- Support for MSVC 2017 has been dropped. #6110
- Changed strict-mode numeric conversions for PEP 484 compatibility:
  float now accepts int, and complex now accepts int and float.
- Small extra features added to the pybind11 command line tool
  based on python-config.
- Added subinterpreter_thread_state, an RAII wrapper that owns a
  reusable PyThreadState for a sub-interpreter, together with a
  subinterpreter_scoped_activate overload that activates it. This
  lets an OS thread re-enter one or more sub-interpreters without
  creating and destroying a PyThreadState on every activation.
- Add py::mod_gil_used() as replacement spelling to
  py::mod_gil_not_used(false).
- Fixed a crash in py::subinterpreter::create() when called without
  a current PyThreadState, which its documentation explicitly allows
  - for example from an embedder that ended initialization with
  PyEval_SaveThread(), or from a worker thread that has never
  touched Python. error_scope is now constructed after a thread
  state has been attached instead of before.
- Make py::print delegate to the current frame/interpreter built-ins
  print entry, fixing handling of sys.stdout = None, following the
  active runtime's stream, keyword, and error semantics, and
  remaining a no-op if the entry is unavailable during teardown.
- Include the builtin complex type in the input annotation of the
  std::complex<T> type caster.
- String views (e.g. std::string_view) are now kept alive only when
  loaded from a transient source (such as a generator), fixing both
  a use-after-free and a regression where casting a view from a
  durable object outside a bound function would throw.
- Drop Python 2 prepend to evaluated source, causing errors to be
  off by one.
- Fix data race on last_storage_ptr_ cache in
  gil_safe_call_once_and_store.
- Allow user defined __str__ on enum_.
- Fix generated Callable type annotations for Python callbacks
  passed into C++ by inverting the callback's argument/return I/O
  context relative to the enclosing function signature.
- Correct __delitem__ for negative-step slices and re-enable
  contiguous erase fast path.
- Do not pass -fno-fat-lto-objects to GCC on macOS, which made all
  LTO probes fail and silently disabled LTO.
- Fixed cross-compilation to Emscripten/Pyodide with CMake >= 4.1
  by no longer overriding an explicitly set
  PYBIND11_USE_CROSSCOMPILING when CMAKE_CROSSCOMPILING_EMULATOR
  is defined.
- Unset stale PYTHON_MODULE_DEBUG_POSTFIX and correct
  USE_PYTHON_INCLUDE_DIR variable.
- Apply -undefined dynamic_lookup to all Apple platforms.

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:20 -07:00
Leon Anavi bc6b98c7ce python3-nanobind: Upgrade 3.0.0 -> 3.1.0
Upgrade to release 3.1.0:

- Python subclasses can now combine one nanobind base with
  additional :ref:`Python mixins <python_mixins>`, including
  cooperative super() calls on CPython and PyPy. Inheriting from
  multiple nanobind bases remains unsupported.
- The low-level instance API gained
  :cpp:func:`nb::inst_python_derived() <inst_python_derived>`,
  which reports whether a nanobind instance belongs to a
  Python subclass of the bound type.
- Added new low-level functions :cpp:func:`nb::keep_alive_obj()
  <keep_alive_obj>` and :cpp:func:`nb::keep_alive_cb()
  <keep_alive_cb>`, which expose the mechanism behind the
  :cpp:class:`nb::keep_alive <keep_alive>` annotation.
- The new function :cpp:func:`intrusive_counter::ref_count()`
  returns the reference count of an intrusively reference-counted
  object while it is owned by C++.
- Fixed stale trampoline override caches on PyPy. Changing an
  attribute of a nanobind type now correctly invalidates the caches
  of its Python subclasses.
- The std::map/std::unordered_map and std::set type casters can now
  also handle containers like std::flat_map whose iterators return
  temporary values.
- The :ref:`Bazel documentation <bazel>` was rewritten and now
  presents an approach based on the Bazel Central Registry.
- Miscellaneous minor improvements.

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:20 -07:00
Leon Anavi ae0db48cac python3-pikepdf: Upgrade 10.11.0 -> 10.13.0.post1
Upgrade to release 10.13.0.post1:

- Behavior change: pikepdf.DataDecodingError now derives from
  pikepdf.PdfError. A stream that will not decode is a defect in
  the document, and the same call that raises it -
  Object.read_bytes() - already raised PdfError for other kinds of
  damage, so except PdfError was a handler that looked correct,
  passed on healthy files, and let a traceback escape on damaged
  ones. Code catching DataDecodingError by name is unaffected. Code
  that orders except PdfError before except DataDecodingError will
  now take the first branch; if the distinction matters, reverse
  the order.
- Behavior change: pikepdf.PdfParsingError now derives from
  pikepdf.PdfError, for the same reason.
- pikepdf.PasswordError remains a sibling of PdfError, not a
  subclass. A wrong password does not mean the document is
  defective, and handlers that report the two separately depend on
  except PdfError not catching it.
- pikepdf.NotExtractableError is now exported. It was already the
  base class of the exported HifiPrintImageNotTranscodableError but
  could not be caught by name.
- Fixed the exceptions documentation, which referenced a nonexistent
  FormCopyWarning (the class is PageCopyWarning) and omitted
  ReferenceCycleError, PageCopyWarning and NotExtractableError.
- XMP assigns a type to every standard property, and software that
  reads XMP discards a property whose type is wrong - Ghostscript
  strips these silently, and PDF/A validators reject them. pikepdf
  used to choose the RDF container from the Python type of the
  value it was handed, so meta['dc:subject'] = ['a', 'b'] wrote an
  rdf:Seq where the specification requires an rdf:Bag, and
  meta['dc:creator'] = 'Author' wrote a bare string where an
  rdf:Seq belongs. pikepdf now knows the type of the properties in
  the standard schemas and converts values to it.

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:20 -07:00
Leon Anavi 76eef1fd48 python3-tzdata: Upgrade 2026.3 -> 2026.4
Upgrade to release 2026.4:

- Canada's Northwest Territories moved to permanent -06 on
  2026-08-21.
- Obsolescent settings like TZ="EST5EDT" now conform better to
  POSIX.
- Fix security, performance and porting bugs in zic and localtime.

This work was sponsored by GOVCERT.LU.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:20 -07:00
Markus Volk d2df0dd0b6 python3-behave: switch to a six-free main snapshot
The 1.3.3 snapshot on release/v1.3.x uses six in 68 files. Upstream has
removed six on main, so take a snapshot from there instead of carrying a
large local patch. main also replaces the cucumber-tag-expressions-only
matcher setup with cucumber-expressions and drops the tomli dependency
for Python 3.11 and newer.

Sent as RFC because main has not been released yet: its own version file
still says 1.4.0.dev0, so the version the recipe claims may still change
before upstream tags 1.4.0.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:19 -07:00
Markus Volk 3e668a6795 python3-cucumber-expressions: add recipe
cucumber-expressions provides the step-matcher expression parser that
behave requires from 1.4 onwards. Pure Python, no runtime dependencies
beyond the standard library, built with the uv backend that is already
used for python3-cucumber-tag-expressions.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:19 -07:00
Markus Volk d17f04b732 python3-attrdict3: remove the recipe
attrdict3 is a fork of the unmaintained attrdict package; its last
release is from 2022 and it still relies on six. With the native
dependency gone from python3-wxgtk4 nothing in the layers requires it
any more, and it is not part of any packagegroup. Remove it instead of
carrying a dead Python 2 compatibility package.

Verified that no recipe references python3-attrdict3.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:19 -07:00
Markus Volk 7ff29cc050 python3-wxgtk4: drop the six and attrdict3 dependencies
wxPython's build no longer imports six or attrdict; both native
dependencies are stale.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:19 -07:00
Markus Volk db1529396a python3-txws: drop the six dependency
Patch txWS to use bytes literals, str and bytes instead of six.b and the
six type aliases, and remove the six.PY2 ord() fixups since indexing a
bytes object already yields an int.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:18 -07:00
Markus Volk 5dce4b4467 python3-txdbus: drop the six dependency
Patch txdbus to use the dict methods, int, str, bytes indexing, next and
io.StringIO instead of the six helpers, and drop the runtime dependency.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:18 -07:00
Markus Volk b7d17ad71c python3-transitions: drop the six dependency
Patch transitions to use the Python 3 equivalents of the six helpers and
drop the runtime dependency.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:18 -07:00
Markus Volk faafeefc54 python3-smpplib: drop the six dependency
Patch smpplib to use dict.items, a bytes literal and a latin-1 encode
instead of six.iteritems, six.int2byte and six.b, and drop the runtime
dependency.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:18 -07:00
Markus Volk 8c1500fb22 python3-slip-dbus: drop the six dependency
Patch slip to use the metaclass keyword argument in the class statement
instead of six.with_metaclass, and drop the runtime dependency.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:18 -07:00
Markus Volk 31050083a1 python3-rouge-score: drop the six dependency
Patch rouge-score to use the builtins and itertools.zip_longest instead
of the six.moves aliases and the dict methods instead of six.iteritems
and six.iterkeys. The six.ensure_str call sites are all passed str
already.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:18 -07:00
Markus Volk 1365764f61 python3-qface: drop the six dependency
qface declares six in install_requires but does not import it anywhere.
Patch it out and drop the dependency from the recipe.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:18 -07:00
Markus Volk 7b53b21596 python3-pywbemtools: upgrade 1.3.1 -> 1.4.1
The new release drops six, pydicti and custom-inherit and adds toposort,
psutil, pyparsing and urllib3. It builds with the setuptools build
backend and needs setuptools-scm and wheel at build time.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:17 -07:00
Markus Volk 49c01e7584 python3-pywbem: drop the six dependency
pywbem has not used six since the 1.x series; both the native build
dependency and the runtime dependency are stale.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:17 -07:00
Markus Volk 0ebc7c6b75 python3-pyu2f: drop the six dependency
Patch pyu2f to use queue, range and the input builtin instead of the
six.moves aliases, and drop the runtime dependency.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:17 -07:00
Markus Volk 4ddf2d5650 python3-pyperf: drop the six dependency
pyperf no longer uses six at build time; the native dependency is stale.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:17 -07:00
Markus Volk ac333a0075 python3-pymemcache: drop the six dependency
pymemcache no longer uses six at build time; the native dependency is
stale.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:17 -07:00
Markus Volk 08a45c21fc python3-pathlib2: remove the recipe
pathlib2 is a backport of the Python 3 pathlib module for Python 2 and
early Python 3, and it pulls in six. Nothing in the layers depends on it
any more, so drop it rather than carry a Python 2 compatibility package.

Verified that no recipe references python3-pathlib2.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:17 -07:00
Markus Volk aedd881866 python3-parse-type: drop the six dependency
Patch parse_type to use str instead of six.string_types and drop six from
the requirement lists and from the ptest dependencies.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:16 -07:00
Markus Volk 2e4c59231d python3-nocaselist: drop the six dependency
nocaselist has not imported six since the 2.x series; the runtime
dependency is stale.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:16 -07:00
Markus Volk 290168ed82 python3-nocasedict: drop the six dependency
nocasedict has not imported six since the 2.x series; the runtime
dependency is stale.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:16 -07:00
Markus Volk cae07967dd python3-jsonpath-rw: drop the six dependency
Patch jsonpath-rw to use int, str and range instead of six.integer_types,
six.string_types and six.moves.xrange, and drop the runtime dependency.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:16 -07:00
Markus Volk 82bbd82620 python3-ecdsa: drop the six dependency
Patch ecdsa to use the Python 3 equivalents of the six helpers and drop
the runtime dependency.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:16 -07:00
Markus Volk cc050b5982 python3-dateutil: drop the six dependency
Patch dateutil to use the standard library instead of the six metaclass
decorators, type aliases, raise_from and six.moves imports, and drop the
runtime dependency.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:16 -07:00
Markus Volk a95fd184da python3-configshell-fb: upgrade 1.1.30 -> 2.0.3
The new release drops the six dependency and the 2to3 conversion, and
switches the build backend from poetry-core to hatchling, which needs
hatch-vcs at build time. The COPYING checksum changed with the new
license file header.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:15 -07:00
Markus Volk 3c69311353 python3-astroid: drop the six dependency
astroid has not imported six since the 2.x series; the runtime dependency
is stale.

Built for intel-corei7-64.

AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-22 11:36:15 -07:00
Markus Volk 0369c15532 python3-html5lib: drop the six dependency
openembedded-core removed python3-six, so the recipe no longer resolves.
html5lib 1.1 only used six as a Python 2 compatibility layer; patch the
imports over to the Python 3 builtins and drop the runtime dependency.

Signed-off-by: Markus Volk <f_l_k@t-online.de>
AI-Generated: Uses Claude Code (Claude Fable 5.1)
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-21 08:13:56 -07:00
Ross Burton 370780c0fd meta-python: remove obsolete dependencies on python3-six
These recipes no longer use six, so remove the dependency.

The list of recipes that still use six is a somewhat useful proxy for
packages that are no longer maintained...

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-21 08:13:54 -07:00
Ross Burton ce1713c062 python3-six: add (from oe-core)
Python 2 was end-of-lifed six years ago now, so move the python3-six
recipe from oe-core to meta-python.  Plenty of recipes still claim to
depend on it, but reviewing these is both a good way to review the
dependencies and potentially identify unmaintained packages.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-20 23:23:59 -07:00
Khem Raj 0d404d8ab3 python3-pylint: fix crash with astroid >= 4.2
pylint 4.0.8 passes asname=False to Import.infer(), a keyword argument
astroid 4.2 removed. With the astroid 4.3.1 in meta-python this makes
pylint crash on any import of a missing submodule:

  TypeError: NodeNG.infer() got an unexpected keyword argument 'asname'

which shows up in ptest as astroid-error in three functional tests:

  FAIL: tests/test_functional.py:test_functional[fallback_import_enabled]
  FAIL: tests/test_functional.py:test_functional[import_error]
  FAIL: tests/test_functional.py:test_functional[no_name_in_module]

Backport the pylint/ part of upstream commit 554b1d192434 ("Bump
astroid to 4.2.0b4"), which drops the argument.

meta-python-image-ptest-python3-pylint on qemux86-64 now passes
872 tests with none failing.

AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-12 16:52:16 -07:00
Khem Raj 084f3411c7 python3-dnspython: skip DDR tests when DDR is not available
test_basic_ddr_sync and test_basic_ddr_async only check that the
Internet is reachable. On networks that intercept port 53, 1.1.1.1 and
8.8.8.8 still answer ordinary queries but return NXDOMAIN for
_dns.resolver.arpa SVCB, so try_ddr() cannot upgrade the nameservers
and the tests fail:

  FAIL: tests/test_ddr.py:test_basic_ddr_sync
  FAIL: tests/test_ddr.py:test_basic_ddr_async
  assert isinstance('1.1.1.1', dns.nameserver.Nameserver)

Add a patch to skip them unless both resolvers return DDR SVCB records.

AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-12 16:52:16 -07:00
Khem Raj 9bfe6f0ea9 python3-fastnumbers: fix denoise of large floats when built with clang
float_as_int_without_noise() returns early when the floored value fits
in a long, checking it with floor_val == static_cast<long>(floor_val).
For values outside the range of long the conversion is undefined
behavior; clang -O2 folds the round trip into "floor_val is integral",
which is always true, so the denoising is skipped:

  FAIL: tests/test_fastnumbers_examples.py:test_try_real
  FAIL: tests/test_fastnumbers_examples.py:test_try_forceint
  assert 3452999999999999737856 == 3453000000000000000000

Add a patch that only does the conversion when the value is in range.
A reduced reproducer returns the wrong answer with the recipe's clang++
at -O2 and the right one with the fix (and with -O0 or gcc).

AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-12 16:52:16 -07:00
Khem Raj 549be445de python3-glances: install config and test data for ptest
tests/test_core.py runs glances with ./conf/glances.conf and reads plugin
test data from ./tests-data, both relative to the ptest directory.
Neither was installed, and tests-data is not part of the pypi sdist, so
four tests failed:

  test_023_get_alert: AssertionError: 'DEFAULT' != 'OK_LOG'
  test_025_npu: IndexError: list index out of range
  test_026_mpp: AssertionError: 0 != 3 : Expected 3 MPP engines
  test_108_fs_zfs_: AssertionError: False is not true

Fetch tests-data from the v4.5.6 tag and install it, together with
conf/, next to the tests. Only tests-data/plugins is used by the tests.

With these in place tests/test_core.py passes 52/52 on qemux86-64.

AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-12 16:52:16 -07:00
Khem Raj 9ed32b0779 python3-betamax: skip the live-network hook tests in ptest
tests/integration/test_hooks.py records live https://httpbin.org
requests (no cassettes are shipped for them), so the ptest fails
whenever the service resets the connection, e.g.:

  FAIL: tests/integration/test_hooks.py:TestHooks.test_post_start_hook
  requests.exceptions.ConnectionError: ('Connection aborted.',
    ConnectionResetError(104, 'Connection reset by peer'))

The same tests pass when the service behaves (3 out of 3 runs in a
qemux86-64 VM), so they are flaky rather than broken. Leave them out
of the ptest run.

AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-12 16:52:15 -07:00
Ross Burton fff60c4b27 tomcli: add new recipe
tomcli is a CLI for working with TOML files.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-11 22:47:20 -07:00
Ross Burton cbec9a20d7 packagegroup-meta-python: remove python3-booleanpy
This was moved into oe-core, but it's entry in the packagegroup remained.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
2026-09-08 10:15:58 -07:00