Upgrade to release 4.4.0:
- Fix history ranges starting past the end
- Fix History.truncate() leaving session start index stale
- Flush window title updates without waiting for a prompt
- Fix two races behind the flaky pipeline job-control test
- Add security policy naming the Security Maintainer
- Preserve history session boundaries across list mutations
- Track history session membership by entry instead of index
- Preserve live history while persisting a bounded copy
- Address review feedback on persisted history copy
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 6.2.0.post1:
- Build Pyodide (pyemscripten) wheels for Python 3.14
From 6.2.0:
- Added the strict_hashable_types parameter to CBORDecoder, load()
and loads() which, when enabled, restricts map keys and set
elements to text strings and byte strings in order to prevent
denial-of-service attacks via hash collisions
(GHSA-p6xp-9h6j-r278)
- Documented decoding concatenated CBOR objects with EOF checks
between objects
- Fixed CBOREncoder.encode_to_bytes() sharing the string reference
namespace of the enclosing encode operation when called from a
default hook
- Fixed the encoder writing the repr() of a bytes regular
expression pattern (tag 35) instead of the pattern itself, so the
regular expression decoded back as the text pattern b'...' and no
longer matched the same input
- Fixed shared references (tag 29) allowing the decoder to
construct object graphs nested deeper than max_depth, which could
crash the interpreter with a segmentation fault when such an
object was hashed (as a map key or set member)
(GHSA-55vx-2phh-7grr)
- Fixed mission conversion of date values (tags 100 and 1004) to
JSON as ISO formatted strings
- Fixed a PanicException on Python 3.10 when decoding a string-form
datetime (tag 0) whose fractional seconds part contains a
multi-byte Unicode numeric character, as the microsecond padding
treated those as digits and then truncated the part on a byte
index inside one of them
- Fixed the decoder accepting a set (tag 258) whose payload is not
an array, folding a text string, byte string or map into a set of
its characters, bytes or keys instead of rejecting it
- Fixed the decoder accepting a non-integer exponent or mantissa in
a decimal fraction (tag 4) or a bigfloat (tag 5)
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 7.2.8:
- Fix type stubs for TTLCache and TLRUCache with default timer.
- Minor documentation and unit test improvements.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 4.16.0:
- Added BlockingPortal.call_async() for asynchronously calling into
an event loop with optional abandonment on cancellation
- Added SOCK_SEQPACKET support to connect_unix() and
create_unix_listener()
- Changed UDP sockets on the asyncio backend to make send() wait
until the datagram has been passed to the operating system
- Fixed documentation implying that use_uvloop=True falls back to
the standard event loop when uvloop (winloop on Windows) is not
installed, and showed how to skip the corresponding pytest
backend variant when the dependency is missing
- Fixed get_current_task() on the asyncio backend raising an opaque
TypeError: cannot create weak reference to 'NoneType' object
instead of a clear error when called from a callback scheduled
via loop.call_soon_threadsafe() (e.g. from within
from_thread.run_sync()), where asyncio.current_task() is
legitimately None
- Fixed CancelScope on the asyncio backend swallowing a native
Task.cancel() that was delivered in the same event loop iteration
as the scope's own cancellation (such as a move_on_after()
deadline expiring), which left the host task with a pending
cancellation request that never raised CancelledError (\#1214)
- Fixed UDP socket closing hanging if a datagram send was still in
flight
- Fixed concurrent aclose_forcefully() calls on asyncio socket
streams returning before the underlying socket was closed
- Fixed aclose() on sockets not checkpointing, and thus failing to
raise a cancellation exception when called inside a cancelled
scope (affected UNIX socket streams and UNIX datagram sockets on
asyncio, and all sockets on Trio)
- Fixed aclose() on asyncio TCP socket listeners not checkpointing,
and leaking the listening socket if cancelled while another task
was waiting in accept()
- Fixed accept() on asyncio UNIX socket listeners hanging forever,
and leaving the listening socket registered with the event loop,
when the listener was closed by another task
- Fixed send() on asyncio TCP and UDP sockets returning normally,
despite the data being discarded, when the socket was closed by
another task (or, for TCP, the connection was lost) while send()
was waiting for the operating system to accept the data
- Fixed SocketStream.send() on the asyncio backend handing its data
to a paused transport after a previous send() was cancelled
- Fixed sleep() treating a negative delay (including -inf)
inconsistently across backends (asyncio returned immediately;
Trio raised ValueError) by raising ValueError on all backends
- Fixed create_tcp_listener() occasionally failing with a message
like Could not create 2 listeners with a consistent port when an
ephemeral port is requested and IPv6 is enabled and the
dual-stack path is not available or a specific local host name
was given
- Fixed AsyncFile not shielding against cancellation while closing
- Fixed TemporaryDirectory.cleanup() reacting to cancellation
prematurely when the host task was already cancelled, causing the
actual cleanup operation to be skipped
- Fixed a NaN deadline being accepted on asyncio while Trio raised
ValueError, which silently disabled the timeout
(fail_after(math.nan) returned instead of raising TimeoutError);
CancelScope now rejects it on both backends
- Fixed FileReadStream and FileWriteStream leaving files open when
cancelled during context manager exit, including unflushed writes
- Fixed Condition.notify() and Condition.notify_all() failing when
the underlying lock was acquired directly rather than through the
condition
- Fixed importing AnyIO with loaders that do not provide __file__,
such as PyOxidizer, raising TypeError instead of falling back to
eager imports
- Fixed text receive streams silently discarding incomplete
characters at end-of-file instead of applying the configured
decoding error handler
- Fixed Semaphore(fast_acquire=True) losing its fast-acquire
behavior when instantiated outside a running event loop
- Fixed BlockingPortalProvider permanently failing with an
AttributeError on every subsequent use if the first attempt to
start its blocking portal failed
- Fixed create_udp_socket() silently ignoring the local_port
argument when local_host was omitted, making the socket bind to a
random ephemeral port instead of the requested one
- Fixed worker threads on the asyncio backend never returning to
the idle pool (and thus never being reused or pruned) when a
to_thread.run_sync() call was cancelled after it had been queued
for the worker but before the worker thread had picked it up
- Fixed pytest plugin running Hypothesis async tests only on the
first parametrized backend instead of each backend
- Fixed TypeError when subclassing an existing TypedAttributeSet
subclass, and this subclass contains type annotations
- Fixed Lock.locked() (and Condition.locked()) raising
NoEventLoopError when the lock was created outside a running
event loop
- Fixed connect_tcp() leaking a connected socket when an enclosing
cancel scope was cancelled before the connection attempt task
group exited
- Fixed create_connected_udp_socket() silently ignoring local_port
when local_host was not given: the local address was left unset,
so the OS picked an ephemeral port instead of the requested one
- Fixed BlockingPortalProvider not passing the exception raised in
its with block on to the start_blocking_portal() context manager
it wraps
- Fixed anyio.itertools.islice() not consuming the first start
items when stop <= start
- Fixed BufferedByteReceiveStream.receive_exactly() and
receive_until() returning buffered data after explicit closure
instead of raising ClosedResourceError
- Fixed a TLS stream sending records the peer could no longer
decrypt after a cancelled send() lost an already-encrypted
record; the stream now raises BrokenResourceError on further use
instead
- Fixed close() on memory object streams not waking up tasks
blocked in send() or receive() on the same stream
- Fixed anyio.itertools.product() acquiring and consuming unused
input iterables when repeat=0
- Fixed SpooledTemporaryFile rolling over to disk on writes when
max_size is zero (the default)
- Fixed Trio UDP sockets remaining open when initialization failed
or was cancelled
- Fixed SpooledTemporaryFile.rollover() moving the current file
position to the end of the file
- Fixed cancellation during temporary directory creation leaving
the directory behind while its context manager is retained
- Fixed cancellation during SpooledTemporaryFile.rollover() losing
buffered contents
- Fixed TextSendStream.send() re-emitting the byte order mark on
every item with BOM-emitting encodings (utf-16, utf-32,
utf-8-sig), which made the peer decode a stray \ufeff in front of
every message after the first
- Fixed buffered byte streams returning empty bytes when a wrapped
object stream received empty messages instead of waiting for data
or raising EndOfStream
- Fixed BlockingPortal crashing with InvalidStateError when a
future it returned was cancelled just as the callable was
completing
- Fixed UNIXSocketStream.send_fds() silently truncating messages on
short socket writes
- Fixed cancelled TCP receives on the asyncio backend leaving
transport reads enabled, allowing incoming data to accumulate
while the application was not receiving.
- Fixed CapacityLimiter.acquire_on_behalf_of() on asyncio releasing
the wrong borrower when the acquiring task was cancelled during
the cancel-shielded checkpoint that runs after a non-blocking
acquisition
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
For native recipes, the prefix variable is not '/usr', resulting
in iperf3-native searching for wrong location for ssl.h.
Fix to use the correct location to find ssl.h.
With this fix, iperf3, iperf3-native, nativesdk-iperf3 all succeed
to build.
Signed-off-by: Chen Qi <chenqi_hycx@cetc.com.cn>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
python3-tomlkit was added to oe-core (46d3b26a63 "python3-tomlkit: add
new recipe (from meta-oe)") and is at 0.15.2 there, so the meta-python
0.15.1 copy is not used. Drop it, and drop it from the meta-python ptest
list as oe-core's ptest-packagelists.inc already lists it.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Cc: Ross Burton <ross.burton@arm.com>
libfaketime was imported into oe-core (f3a4faaf4c "libfaketime: Import
recipe from meta-oe") and has had fixes there since: a 32-bit build fix,
the clang 23 fix, -O1 for the clobbered-variable error and the man page
install. Both copies are 0.9.13 at the same layer priority, so bitbake
picks one by parse order and currently ends up with the outdated meta-oe
copy.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Cc: Ross Burton <ross.burton@arm.com>
Add leancrypto-module to build and package leancrypto.ko
independently of the userspace library.
Move common source and license metadata into leancrypto.inc and include the
submitted upstream patch to generate headers using the target kernel
architecture instead of the build host.
Signed-off-by: Ayoub Zaki <ayoub.zaki@embetrix.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.0.0:
- Configurable layout spaces through BoxStyle.gfx["SPACE"], with an
ordinary-space fallback for existing palettes.
- Declared the existing public API stable, without breaking changes
from 0.4.0.
Fixes:
WARNING: python3-asciitree-1.0.0-r0 do_check_backend: QA Issue:
inherits setuptools3 but has pyproject.toml specifying backend
setuptools.build_meta, use the correct class [pep517-backend]
License-Update: Update copyright years to 2015-2026
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
"make install" depends on a doc target which runs "make -C docs man html".
With -j both goals start their own sphinx-build sharing _build/doctrees,
which sphinx does not write atomically, so one can read a doctree the
other is rewriting. do_install then fails at random:
AttributeError: 'dict' object has no attribute 'append'
make: *** [Makefile:138: doc] Error 2
Add .NOTPARALLEL to docs/Makefile so that the goals run one after the
other. Running "make -j64 man html" on an oversubscribed host failed 71
out of 576 times without this change and never with it.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
AI-Generated: Uses Claude Code
lcov 2.6 makes "make install" depend on a new xs_lib target which runs
"perl Makefile.PL" with the host perl. That loads lcovutil.pm, so
do_install fails on hosts without Capture::Tiny:
Can't locate Capture/Tiny.pm in @INC
make: *** [Makefile:169: xs_lib] Error 2
The extension can't be cross-built this way, since it would use the host
perl configuration. It is an optional speedup and lcovutil.pm falls back
to pure Perl without it, so set LCOV_NO_XS=1.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changes from v2.5 release:
- new html2lcov tool
* Capture source diff and 'baseline' coverage from lcov HTML report - suitable
as input to generate differential coverage report versus 'now'. See the html2lcov documentation for details.
- new jacoco2lcov tool
* Translate JaCoCo java coverage data to lcov format - e.g., for multi-language
coverage reporting or to take advantage of lcov features. See the jacoco2lcov documentation for details.
- new XS back end (on plaforms which support it).
* C++ implementation of some key types and operations - to improve execution
time and memory footprint compared to pure Perl.
- various bug fixes and test coverage improvements.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Brings following changes
3c04036 Fix: make static ECDH selectable with the br_ssl_client_set_single_ec() helper function.
3d9be2f Added dependencies to better support parallel or shuffled compilation.
3479195 Fixed chunked decoding in case of errors (if decoding failed at some point, subsequent chunks should be ignored, trying to reenter the decoder after a failure is a recipe for Bad Thing). Impacted functions were not used over malicious on-the-wire data for "normal" SSL/TLS usage.
8f795e5 Fixed Makefile dependencies.
7bea48e Fixed bug in handling incoming records with invalid length (impacted CBC encryption with 3DES or with the aes_small or aes_big AES implementations; only 3DES was selectable by default).
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
.circleci and scripts/ci are upstream's tooling for its AWS Ubuntu test
runners. They hardcode /home/ubuntu, which trips the buildpaths QA check
on build hosts whose HOME has the same path:
File .../influxdb/.circleci/config.yml in package influxdb-dev contains
a reference to the build host HOME directory.
Remove them before do_install instead of setting OEQA_BUILDPATHS_SKIP,
as they are of no use in influxdb-dev and a skip would also hide real
leaks. run_perftest.sh goes with them, so drop the sed fixing its shebang.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
libaccountsservice uses sd-login for its session tracking and links
against libsystemd or libelogind unconditionally. There is no elogind
recipe to satisfy the alternative, so on sysvinit distros configure fails:
meson.build:206:2: ERROR: Assert failed: systemd required but not found
Declare the requirement so that the recipe is skipped there.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The systemdsystemunitdir option defaults to auto, which makes meson look
up systemd.pc. That only worked because systemd ends up in the sysroot
through other dependencies, and it fails on sysvinit distros:
meson.build:36:18: ERROR: Dependency "systemd" not found
Pass the unit directory explicitly. The unit is installed unconditionally
and systemd.bbclass removes it again on distros without systemd.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
malcontent and malcontent-ui depend on accountsservice, which needs
systemd now, so they can not be built on sysvinit distros. Declare it so
the skip message names the actual requirement.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
fwupd-efi finds the linker with find_program(cc.get_linker_id()),
which looks for a program named ld.bfd. meson.cross only sets ld, so
meson falls back to PATH and picks up ld.bfd from HOSTTOOLS. That breaks
cross builds on an x86-64 host:
hosttools/ld.bfd: cannot represent machine `aarch64'
and on x86-64 targets it silently links with the host linker.
Set ld.bfd in an additional cross file
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Universe builds every recipe, so the unconditional PROVIDES puts this
recipe and polkit in the same build, and bitbake -c fetch universe
reports that multiple .bb files provide polkit.
Claim the name only when PREFERRED_PROVIDER_polkit selects smolkit. With
the overlap gone, smolkit is no longer dropped from the world targets.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Universe builds every recipe and ignores EXCLUDE_FROM_WORLD, so the
unconditional PROVIDES puts this recipe and GNU coreutils in the same
build, and bitbake -c fetch universe reports that multiple .bb files
provide coreutils, coreutils-native and nativesdk-coreutils.
Claim the name only when this recipe is the preferred provider, checked
separately for the target, native and nativesdk variants so they can
still be selected independently.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The GPL-2.0 entry dates back to the first recipe (AOSP android-5.1.1_r37,
2016) and was carried over unchanged to the Debian android-platform-tools
based 35.0.2 recipe.
In the android-5.1.1_r37 repos the recipe fetched, the only GPLv2 mentions
are headers which are dual licensed "Apache 2.0 OR GPLv2"
(system/core include/cutils/ashmem.h, include/utils/ashmem.h,
include/log/logger.h), kernel headers in libion which are not built, and
documentation templates. Apache-2.0 can be chosen for all of them.
The 35.0.2 sources come from Debian's android-platform-tools, whose
debian/copyright lists no GPL license: the files are Apache-2.0, BSD,
Expat, Khronos, PSF and public-domain, and a scan of the unpacked tarball
finds no GPL licensed source files.
Remove GPL-2.0-only from LICENSE and LIC_FILES_CHKSUM so that the recipe is
not wrongly treated as GPL by license based tooling (e.g. copyleft source
archiving).
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Release notes: https://github.com/fastapi/fastapi/releases
* opentelemetry-api is now a runtime dependency
* Add opentelemetry-sdk and git to ptest dependencies, used by the new
telemetry and translation script tests
* Ignore telemetry tests that need logfire, the opentelemetry OTLP
exporter and the opentelemetry fastapi instrumentation, which are not
packaged in meta-python
* Fixes the ptest hang in
test_frontend_dependency_restores_existing_dependency_stacks with
starlette 1.10, fixed upstream in 0.142.0
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
opentelemetry-sdk requires opentelemetry-api, opentelemetry-semantic-conventions
and typing-extensions, without them importing opentelemetry.sdk fails with:
ModuleNotFoundError: No module named 'opentelemetry.semconv'
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
test_runtime_dir_unreachable_xdg_runtime_dir_warns hardcodes the glibc
strerror(ELOOP) text "Too many levels of symbolic links", whereas musl
reports "Symbolic link loop". Backport the upstream fix which uses
os.strerror() instead.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
pyroute2/ndb/task_manager.py imports the resource module and it is
pulled in when importing pyroute2, so every ptest module failed to
import with:
ModuleNotFoundError: No module named 'resource'
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
setup.py imports tuna.version from the source tree. The setuptools
build_meta backend does not put the source directory on sys.path, so
do_compile fails:
File "<string>", line 9, in <module>
ModuleNotFoundError: No module named 'tuna'
ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel
It only worked so far because python3targetconfig added an empty entry,
i.e. the current directory, to PYTHONPATH. The same happens with a plain
"python3 -m build" outside of OE.
pyproject.toml already gets the version from tuna.version via
[tool.setuptools.dynamic], so drop the import from setup.py.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
pyproject.toml specifies setuptools.build_meta as the build backend.
Inheriting setuptools3 with INSANE_SKIP for pep517-backend was a
workaround for the top level build.py shadowing pyproject-build's own
"build" module, which is fixed in oe-core's python3targetconfig class
("python3targetconfig: Do not add the current directory to PYTHONPATH").
pyproject.toml pins sip == 6.12.0, which is only used to regenerate the
wrapper sources that the sdist already ships, so skip the build
dependency check.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.6.1:
- Update CI dependencies
- Drop support of Python 3.10, support Python 3.15
- Replace deprecated license classifier
- Use HTTP server for Doconfly
Fixes:
WARNING: python3-webencodings-0.6.1-r0 do_check_backend: QA Issue:
inherits setuptools3 but has pyproject.toml specifying backend
flit_core.buildapi, use the correct class [pep517-backend]
License-Update: Use LICENSE file
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.1.0:
- Cancel queued requests on close
- Remove the unused build attribute and the Python 2.7 NullHandler
fallback
- Close owned sessions after their background requests finish,
including when using a supplied executor, and reject requests
after close
- Pickle check covers request arguments, not just the callable
- background_callback now emits a DeprecationWarning instead of a
log line
- Fix pool sizing for supplied sessions
- Preserve falsy callback results
Fixes:
WARNING: python3-requests-futures-1.1.0-r0 do_check_backend:
QA Issue: inherits setuptools3 but has pyproject.toml specifying
backend setuptools.build_meta, use the correct class [pep517-backend]
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 18.0.0:
- Upgrade to Unicode 18.0.0.
- Drop support for Python 3.8 (requires Python 3.9+).
- Refactor architecture and optimize table loading for better
performance.
- Modernize packaging (pyproject.toml) and adopt Nox for testing.
Fixes:
WARNING: python3-pyunormalize-18.0.0-r0 do_check_backend: QA Issue:
inherits setuptools3 but has pyproject.toml specifying backend
setuptools.build_meta, use the correct class [pep517-backend]
License-Update: Copyright years updated
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 2.0.0:
- Add support for Python 3.13 & 3.14
- Drop support for Python 3.8 & 3.9
- performance: remove redundant cast
- chore: partial upgrade project management to ApeWorX standard
- fix(docs): build with uv
- fix(docs): skip --locked because uv.lock file is not used
- fix(docs): use official uv install command
Fixes:
WARNING: python3-hexbytes-2.0.0-r0 do_check_backend: QA Issue:
inherits setuptools3 but has pyproject.toml specifying backend
setuptools.build_meta, use the correct class [pep517-backend]
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.14.0:
- Fix BaseModel typing error on Pydantic >= 2.12
- Template upgrade
- Bump eth-utils to allow for CamelModel usage
- Add cell proofs for peerdas compat (Fusaka)
- Inherit from eth-utils CamelModel for pydantic types
- Breaking/add remaining breaking changes for major
- refactor: drop <3.10; add <=3.14; migrate to prek and ruff; use
Github Actions
Fixes:
WARNING: python3-eth-account-0.14.0-r0 do_check_backend: QA Issue:
inherits setuptools3 but has pyproject.toml specifying backend
setuptools.build_meta, use the correct class [pep517-backend]
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 6.0.0:
- add funding.json
- docs: fix the installation package
- Template upgrades
- feat: optimize encode and decode
- refactor: drop <3.10; add <=3.14; migrate to prek and ruff; use
Github Actions
Fixes:
WARNING: python3-eth-abi-6.0.0-r0 do_check_backend: QA Issue:
inherits setuptools3 but has pyproject.toml specifying backend
setuptools.build_meta, use the correct class [pep517-backend]
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.3.3:
- restore toplevel re-exports for full 1.2 API compatibility
- docs: quote pip extras url in installation instructions
- ci: test python 3.9 in the matrix
- dbc: import BA_ BU_ attribute for unknown ecu
- j1939: fill unset bits with 1 on encode
- fix: fix canmatrix.utils import in xlsx
Fixes:
WARNING: python3-canmatrix-1.3.3-r0 do_check_backend: QA Issue:
inherits setuptools3 but has pyproject.toml specifying backend
setuptools.build_meta, use the correct class [pep517-backend]
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 2026.6:
- Cuba will not fall back 2026-11-01; stays on -04 through
2027-11-07.
- No more leap seconds, and leap second tables no longer expire.
- Improve 1965/1966 data for Brazil.
Changes to future timestamps:
- Cuba will not fall back to -05 on 2026-11-01 and instead plans to
maintain -04 through 2027-11-07.
Changes to past timestamps:
- In 1965 Brazil ended DST on 03-31 at 24:00 not 00:00, and in 1966
it ended DST on 03-01 at 01:00 not 00:00.
Changes to documentation and commentary:
- Documentation and commentary now reflect leap seconds' demise.
Changes to commentary:
- Discussion on timekeeping in northwestern Ontario has been updated
to reflect that provincial regulation has been issued to allow
these areas to stay aligned with America/Winnipeg and follow
Manitoba's adoption of year-round -05 after all.
- Discussion on timekeeping in Saskatchewan has been updated to
document its new Time Act, 2026 which comes into force on
2026-10-30. No change is expected.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.17.3:
Preview features:
- [suspicious] Add shared-clock-mock
Bug fixes:
- [pyupgrade] Avoid incorrect conversions to f-strings (UP032)
Performance:
- Buffer stdout in ruff format
- Specialize ASCII identifier lexing
- Speed up identifier and keyword lexing
Documentation:
- [flake8-bandit] Describe what the rule actually checks for
httpx (S113)
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>
Upgrade to release 2026.6:
- IANA 2026f
- tz changes for Brazil
- Northwestern Ontario is expected to follow Manitoba
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 4.1.0:
- Drop support for EOL python 3.10
- Significant performance improvements
- Fix handling of Literal and Annotated for lazy imports
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.45.2:
- opentelemetry-api: limit traceparent header length to 512
characters in TraceContextTextMapPropagator during extraction
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.2.4:
- fallback: pass object_pairs_hook a list of pairs
- fallback: leave the object unread when a header type does not
match
- fallback: return bytes from Unpacker.read_bytes
- Run tracemalloc tests sequentially
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>