Changes since 1.7.0:
- v1.8.0: Add support for custom socket options and improved
proxy handling
- v1.9.0: Fix compatibility with Python 3.12+ deprecations
- Various bug fixes for connection handling and error reporting
Also add test.sh to verify version and core API imports.
Changes since 0.4.4:
- v0.5.0: Improved handling of CTEs and window functions
- v0.5.0: Better token classification for SQL dialects
- v0.5.x: Various bug fixes for edge cases in formatting
and statement splitting
Also add test.sh to verify formatting, splitting, and parsing.
Changes since 5.3.1:
- v6.0: Drop Python 3.7 support; add Python 3.12/3.13
- v6.0: TTLCache now uses monotonic time for expiry
- v7.0: Cache classes are now generic (PEP 585 type hints)
- v7.0: New MRUCache (most-recently-used) eviction policy
- Various performance improvements across all cache types
Also add test.sh to verify LRU/LFU/TTL caches and @cached decorator.
Changes since 1.0.1:
- Support for multi-select list/hash expressions with enhanced
function argument validation
- Minor performance improvements in expression parsing
Also add test.sh to verify field access, wildcards, and filters.
Changes since 4.4.2:
- v5.x rewrites the implementation using the standard library
inspect module, dropping the code generation approach
- Signature preservation is now based on functools.wraps internals
- New contextmanager and asynccontextmanager decorator support
- Python 3.8+ required; Python 2 no longer supported
Also add test.sh to verify signature preservation and basic usage.
Changes since 0.9.0:
- New 'outline' table format
- Support for multi-line cell values in more formats
- Improved alignment for mixed-type columns
- Various bug fixes for edge cases in number formatting
Also add test.sh to verify version and basic table rendering.
Changes since 0.7.5:
- Fix handling of Optional keys with default values
- Improve error messages for nested schema failures
- Various bug fixes and compatibility improvements
Also add test.sh to verify version and data validation API.
stunnel: create PID directory before alt_config_file return
When alt_config_file is set, global_defs() returns before creating
the PID file directory. stunnel then fails to start because it
cannot write its PID file to the nonexistent directory.
Move the PID directory creation and ownership setup above the
alt_config_file early return so it runs regardless of config mode.
Fixes: openwrt/openwrt#28982 Signed-off-by: Joshua Klinesmith <redacted> Co-Authored-By: Claude Opus 4.6 (1M context) <redacted>
Eric Fahlgren [Mon, 30 Mar 2026 11:41:04 +0000 (04:41 -0700)]
owut: update to 2026.03.30
Bug fixes:
efahl/owut@c243c697c723 owut: report only enabled branches and their data
efahl/owut@f381ad78eca5 owut: handle true redirects
Enhancements:
efahl/owut@670907a5081f owut: modernize what provides lookups
efahl/owut@98471fa15682 owut: fix color of status message
Changes since 4.5.1:
- v4.6+: Add support for WebTransport protocol
- v4.9+: Improved async task handling and cancellation
- v4.11.0: Required minimum for python-socketio 5.12+
- Various fixes for connection lifecycle and error handling
Also add test.sh to verify WSGI/ASGI app wrappers and server creation.
Pure-Python WebSocket protocol implementation, implements RFC6455
and RFC7692 (WebSocket Compression Extensions).
Required as a dependency of python-simple-websocket.
Changelog since 3.1.2:
- Fix security vulnerability GHSA-68rp-wp8r-4726: session now marked as
accessed for key-existence checks (in, len) to prevent timing attacks
Add python3-blinker as dependency (should have been there also in 3.1.2)
Add test.sh.
Full changelog: https://flask.palletsprojects.com/en/stable/changes/
There is no clear user for this package.
It's a pure-python package which could be installed via pip on a target.
Unless there is someone who comes forward and asks that we keep it,
I see no reason to keep it.
These are a massive help for keeping things stable on the
mid-to-longterm when updating packages.
We might even feel comfortable partially automating the process.
These are a massive help for keeping things stable on the
mid-to-longterm when updating packages.
We might even feel comfortable partially automating the process.
v26.0.0:
- Drop Python 3.7 support
- Minimum cryptography version is now 46.0.0
- Security fix: properly raise an error if a DTLS cookie callback
returned a cookie longer than DTLS1_COOKIE_LENGTH bytes, previously
resulting in a buffer-overflow (CVE-2026-27459)
- Security fix: Context.set_tlsext_servername_callback now handles
exceptions raised in the callback instead of silently swallowing
them (CVE-2026-27448)
- Added support for using aws-lc instead of OpenSSL
- Added OpenSSL.SSL.Connection.get_group_name
v25.x:
- Added OpenSSL.SSL.Context.set_tls13_ciphersuites
- Added OpenSSL.SSL.Connection.set_info_callback
- Added OpenSSL.SSL.Context.clear_mode
- pyOpenSSL now sets SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER by default
- typing-extensions added as a runtime dependency (for Python < 3.13)
Full changelog:
https://www.pyopenssl.org/en/stable/changelog.html
Co-Authored-By: Claude Sonnet 4.6 <redacted> Signed-off-by: Alexandru Ardelean <redacted>
v1.4.2:
- Ensure the uv installer uses the current version of Python,
avoiding an issue if UV_PYTHON is set
- Fix _has_valid_outer_pip returning True when pip is missing,
causing build to try using a non-existent pip instead of
falling back to virtualenv
Pygments is a generic syntax highlighting library that supports over
500 languages and text formats. It is used by a wide range of tools
for terminal, HTML, and LaTeX output.
Added as a required dependency for python-pytest >= 7.x, which uses
Pygments to syntax-highlight code snippets in failure reports and
tracebacks.
The package uses hatchling as its build backend and has no runtime
dependencies beyond the Python standard library.
Co-Authored-By: Claude Sonnet 4.6 <redacted> Signed-off-by: Alexandru Ardelean <redacted>
Required by python-pytest >= 9.0.0, which needs pluggy >= 1.5.0.
v1.5.0 added support for deprecating specific hook parameters via
warn_on_impl_args (used by pytest 9.x hookspecs). Without this,
pytest fails to import with:
TypeError: HookspecMarker.__call__() got an unexpected keyword
argument 'warn_on_impl_args'
v1.6.0 changes:
- Drop Python 3.8 support
- Fix regression where get_result() on a failed Result caused the
exception traceback to grow longer on each call
- Fix StopIteration passing through hook wrappers
- Fix Python 3.14 SyntaxWarning
Chen Minqiang [Thu, 26 Mar 2026 16:40:04 +0000 (00:40 +0800)]
openvpn: fix quoting and deprecated option filtering
This patch fixes two issues in the netifd protocol script:
1. Fix logic error in deprecated option filtering:
Previously, ${f%%:*} was called before checking for the deprecated
flag (:d). This stripped the suffix and made the check [ "${f#*:}" = "d" ]
always fail. The cleaning of $f is now deferred until after this check.
2. Improve parameter quoting for specific options:
- Adds single quotes to --push and --push-remove parameters to handle
spaces (e.g., "route 10.0.0.0 255.255.255.0").
- Unifies quoting for 'file' type options to improve shell safety.
- Refactors the build logic using a case statement for better
extensibility.
Dirk Brenken [Fri, 27 Mar 2026 09:18:38 +0000 (10:18 +0100)]
adblock: update 4.5.3-4
* harden adblock backend: removed all needless eval calls
* more fixes & optimizations
* LuCI: Allow dns instance selection for smartdns (not only for dnsmasq)
* LuCI: more fixes & optimizations
* readme update
Stan Grishin [Sat, 21 Mar 2026 01:12:02 +0000 (01:12 +0000)]
adblock-fast: update to 1.2.2-r14
* fix: ensure output in CLI in status and quick start commands
* fix: ensure relevant directories exist when using a (gzip) cache file on
first boot
* add: update functional tests
v3.0 removes the dependency on PLY by rewriting pycparser with a
hand-written lexer and recursive-descent parser for C. No API changes
or functionality changes - the same AST is produced as before.
Other changes:
- Drop EOL Python 3.8 and 3.9 support (minimum now 3.10)
- Add support for Python 3.14
Since PLY is no longer used:
- Remove python-ply from PKG_BUILD_DEPENDS and HOST_BUILD_DEPENDS
- Remove +python3-ply from package DEPENDS
- Remove 001-use-external-ply.patch (no longer needed)
Full release notes:
https://github.com/eliben/pycparser/releases/tag/release_v3.00
Co-Authored-By: Claude Sonnet 4.6 <redacted> Signed-off-by: Alexandru Ardelean <redacted>
Tim Flubshi [Wed, 18 Mar 2026 20:55:29 +0000 (21:55 +0100)]
ddns-scripts: add netcup.com support
Add a new netcup DDNS provider using the netcup DNS api
(ccp.netcup.net) with API key authentication.
Configuration mapping:
* username = netcup customer number
* password = netcup API password
* param_enc = netcup API key (generated in the CCP)
* domain = fully qualified subdomain to update (e.g. home.example.de)
* param_opt = (optional) root/zone domain override (e.g. example.de)
When omitted the root domain is derived by stripping the
leftmost label from 'domain'. This only works correctly for
a single subdomain level (e.g. "home.example.de").
param_opt MUST be set explicitly in two cases:
1. Deep subdomains: domain=test.internal.example.org
2. ccSLD apex domains: domain=example.co.nz
v6.0.0:
- process_iter() is now ~20x faster (no longer pre-emptively checks
PID reuse); add process_iter.cache_clear() API
- Process.connections() renamed to Process.net_connections()
(old name deprecated)
- disk_partitions() namedtuple drops maxfile/maxpath fields
- Support building with free-threaded CPython 3.13
v7.0.0:
- Drop Python 2.7 support
v7.2.0:
- New heap_info() and heap_trim() functions for native C heap allocator
access (glibc, mimalloc, libmalloc)
- Tests are no longer part of the installed package
v7.2.2:
- [Linux] Process.wait() now uses pidfd_open() + poll() for waiting
(no busy loop, faster response); requires Linux >= 5.3 + Python 3.9,
falls back to polling otherwise
- [macOS/BSD] Process.wait() now uses kqueue() for waiting
- Various macOS memory leak and error handling fixes
Also refresh 100-fix-non-Linux-compile.patch for the updated setup.py
(noqa comment style changed; _compat imports removed upstream).
Add test.sh.
Full changelog:
https://github.com/giampaolo/psutil/blob/master/HISTORY.rst
Co-Authored-By: Claude Sonnet 4.6 <redacted> Signed-off-by: Alexandru Ardelean <redacted>
v3.17.0 changes:
- Drop Python 3.9 support (minimum now 3.10)
- Drop deprecated coreapi support
- Add Python 3.14 support
- Add ability to specify output format for DurationField
- Add missing decorators: @versioning_class(), @content_negotiation_class(),
@metadata_class() for function-based views
- Support violation messages in UniqueConstraint
Full release notes:
https://github.com/encode/django-rest-framework/releases/tag/3.17.0
Co-Authored-By: Claude Sonnet 4.6 <redacted> Signed-off-by: Alexandru Ardelean <redacted>
Also update micropython-lib to v1.27.0. Switch micropython-lib from a
git source to the release tarball from:
https://github.com/micropython/micropython-lib/releases/tag/v1.27.0
Update libvpx to v1.16.0 "Xenonetta Duck". Highlights include:
- Arm SVE2 and Neon optimizations for 12-tap filters.
- AVX512 implementations for Sum of Absolute Differences (SAD).
- Support for per-frame and per-spatial-layer PSNR calculation.
- ABI incompatible with the previous release.
Includes changes from intermediate releases:
- v1.15.2: Fixes CVE-2025-5283 (bug webm:413411335).
- v1.15.1: SO major version bump and changelog corrections.
- v1.15.0: New codec control for key frame filtering and RTC improvements.
Changelog: https://github.com/webmproject/libvpx/blob/v1.16.0/CHANGELOG Signed-off-by: Luiz Angelo Daros de Luca <redacted>
v10.0.0 is a major release with these key changes:
- Drop Python 3.8 and 3.9 support; minimum is now Python 3.10
- Depend on vcs-versioning for core version inference logic, allowing
other build backends to reuse it without a setuptools dependency
- Version files (write_to, version_file) are now written to the build
directory during build_py instead of the source tree during version
inference, enabling builds from read-only source directories
v10.0.1 fixes the release pipeline tooling only (no functional changes).
Full release notes:
https://github.com/pypa/setuptools-scm/releases/tag/setuptools-scm-v10.0.0
Co-Authored-By: Claude Sonnet 4.6 <redacted> Signed-off-by: Alexandru Ardelean <redacted>
python-vcs-versioning: add new package (version 1.0.1)
vcs-versioning provides the core VCS version inference logic that was
extracted from setuptools-scm into a standalone library. This enables
other build backends to use the same version inference without a
setuptools dependency.
Required as a new dependency for setuptools-scm >= 10.0.0.
Co-Authored-By: Claude Sonnet 4.6 <redacted> Signed-off-by: Alexandru Ardelean <redacted>
Pillow 12.x introduces pybind11-based C extension bindings and a
custom build backend (wrapping setuptools.build_meta). This requires:
- Replacing python-setuptools-scm with python-setuptools as build dep
- Adding python-pybind11 as a new build dependency (host)
- Updating build config settings from --build-option flags to the new
key=value format (e.g. zlib=enable, imagequant=disable)
- Removing the separate webpmux flag (merged into webp feature)
Full release notes:
https://pillow.readthedocs.io/en/stable/releasenotes/index.html
Remove 001-remove-setuptools-version-limit.patch
That's an old relic since when setuptools was packaged inside Python3
Changelog since 3.1.3:
- v3.1.4: Fix special device name access on Windows in send_from_directory
(security); fix multipart parser \r\n handling at chunk boundaries;
improve Watchdog reloader CPU efficiency
- v3.1.5: Extend Windows path protection against special device names
(security); fix multipart form parser \r\n at chunk boundaries; fix
AttributeError in DebuggedApplication with pin_security=False
- v3.1.6: Block special device names in multi-segment paths on Windows
via safe_join (security)
Add test.sh.
Full changelog:
https://werkzeug.palletsprojects.com/en/stable/changes/
Changelog since 25.3.0:
- v25.4.0: Add python-hatch-fancy-pypi-readme as build dependency
- v26.1.0: Field aliases now resolved before calling field_transformer,
with new Attribute.alias_is_default flag (#1509); fix type annotations
for validators.optional() with tuples (#1496); validators.disabled()
now supports nesting (#1513); frozen classes support
on_setattr=attrs.setters.NO_OP (#1515); attrs.fields() accepts
instances in addition to classes (#1529)
Full changelog: https://www.attrs.org/en/stable/changelog.html
Dirk Brenken [Sun, 22 Mar 2026 18:55:08 +0000 (19:55 +0100)]
adblock: update 4.5.3-3
* renamed f_query to f_search (Query => Search)
* add better input validation to the f_search function,
to compensate for the very limited Wildcard ACL mechanisms in LuCI, see
https://github.com/openwrt/luci/issues/8435 for reference
* LuCI: add a proper poll mechanism to mitigate Reporting timeouts
on "Search" and "Refresh", even with big pcap files
* LuCI: Refine some ACLs
* LuCI: more fixes & optimizations
* readme update
Dirk Brenken [Sun, 22 Mar 2026 15:14:10 +0000 (16:14 +0100)]
banip: update 1.8.1-3
* add better input validation to the f_content and f_search functions,
to compensate for the very limited Wildcard ACL mechanisms in LuCI, see
https://github.com/openwrt/luci/issues/8435 for reference
* LuCI: add a proper poll mechanism to mitigate Reporting timeouts
on "Search" and "Refresh", even with big Sets
* LuCI: Refine some ACLs
* LuCI: more fixes & optimizations
* readme update
Based on https://github.com/openwrt/packages/issues/28709#issuecomment-4060013105
it has been noted that the number config.in files was high compared to actual
config selections.
Therefore move smaller selection back into the Makefile. They are still kept
with the most appropriate package which they configure.
Changes since 0.22.1:
- Require Python >= 3.8 (dropped 3.7)
- Performance improvements and internal refactoring
- Better type annotations and mypy support
- Various bug fixes
Also add PKG_BUILD_DEPENDS on python-setuptools/host as bidict uses
setuptools.build_meta build backend.
Changes since 1.16.0:
- Drop Python 2.7 and 3.5 support
- Add ensure_str(), ensure_binary(), ensure_text() helpers
- Various minor fixes and maintenance updates
six 1.17.0 switched to pyproject.toml with setuptools build backend,
so add PKG_BUILD_DEPENDS on python-setuptools/host.
Changelog since 2.2.2:
- Add mpz.array() method for NumPy interaction
- Implement mpq.limit_denominator() functionality
- Add is_integer() method for mpz/mpq types
- Add mixed-mode arithmetic support for mpc types
- Enhanced formatting using context's rounding mode defaults
- Full free-threaded Python build support
- Fix memory leaks in MPFR/MPC cache and context exit
- Drop CPython 3.8 support (requires 3.9+)
Add test.sh.
gmpy2 2.3.0 switched to pyproject.toml with setuptools-scm for version
management. Add python-setuptools-scm/host to PKG_BUILD_DEPENDS.
Full changelog:
https://github.com/aleaxit/gmpy/releases
- Fixes multiple security critical bugs with H3 handling. CVE submission is
pending.
- Updated haproxy PKG_VERSION and PKG_HASH
- Removed get-latest-patches.sh as it is not used anymore.
- See changes: http://git.haproxy.org/?p=haproxy-3.2.git;a=shortlog