py-werkzeug: update to 3.1.6.
Version 3.1.6
-------------
Released 2026-02-19
- ``safe_join`` on Windows does not allow special devices names in
multi-segment paths. :ghsa:`29vq-49wr-vm6x`
py-textual: update to 8.0.0.
The major version change is due to changing Select.BLANK to Select.NULL, to avoid an unfortunate name clash.
[8.0.0] - 2026-02-16
Added
Added mode argument to push_screen and push_screen_wait to enable pushing a screen to a non-active mode #6362
Added App.mode_change_signal and App.screen_change_signal #6362
Added Tabs.get_tab #6362
Added Catppuccin Frappe and Macchiato themes #6335
Changed
It is no longer a NOOP and warning to dismiss a non-active screen. The dismiss will still work, but the screen may not update if the current mode is not active. #6362
Added 50ms delay when switching screens to allow state to udpate and prevent janky flash of old content #6362
Breaking change: Changed Select.BLANK to Select.NULL to avoid clash with newer Widget.BLANK Classvar #6374
VPN: OpenVPN: Instances - debounce learn-address calls so we limit the number of alias updates to a minimum.
When a lot of clients connect at the exact same time, it doesn't really make sense to keep calling the alias update procedure as logically we are only interested in the last one.
This change simply opens a file, keeps track of its modification stamp and if another updated it after us, assume that caller is responsible for making the magic happen.
Although there is a small downside to this (clients connecting constantly, nobody resposible for accounting), the gain is likely much bigger as it prevents these calls from floodin the system in all cases (saving a lot of load).
py-ruff: update to 0.15.2.
Preview features
Expand the default rule set (#23385)
In preview, Ruff now enables a significantly expanded default rule set of 412 rules, up from the stable default set of 59 rules. The new rules are mostly a superset of the stable defaults, with the exception of these rules, which are removed from the preview defaults:
multiple-imports-on-one-line (E401)
module-import-not-at-top-of-file (E402)
module-import-not-at-top-of-file (E701)
multiple-statements-on-one-line-semicolon (E702)
useless-semicolon (E703)
none-comparison (E711)
true-false-comparison (E712)
not-in-test (E713)
not-is-test (E714)
type-comparison (E721)
lambda-assignment (E731)
ambiguous-variable-name (E741)
[50 lines not shown]
py-pylint: update to 4.0.5.
False Positives Fixed
---------------------
- Fix possibly-used-before-assignment false positive when using self.fail() in tests.
- Fixed false positive for ``logging-unsupported-format`` when no arguments are provided to logging functions.
According to Python's logging documentation, no formatting is performed when no arguments are supplied, so strings like ``logging.error("%test")`` are valid.
- Fix a false positive for ``invalid-name`` where a dataclass field typed with ``Final``
was evaluated against the ``class_const`` regex instead of the ``class_attribute`` regex.
- Avoid emitting `unspecified-encoding` (W1514) when `py-version` is 3.15+.
Other Bug Fixes
---------------
[5 lines not shown]
py-puremagic: update to 2.0.0.
Version 2.0.0
-------------
- Adding deep scan for improved accuracy #102 #94 #85 #70 #69 #12 #3
- Changing to full semantic versioning to be able to denote bugfixes vs minor features
- Changing to use uv instead of requirements
- Removing support for python 3.7, 3.8, 3.9, 3.10 and 3.11 please stick to 1.x release chain to support older versions
py-poetry-dynamic-versioning: update to 1.10.0.
## v1.10.0 (2026-02-14)
* Added:
* Option `tool.poetry-dynamic-versioning.highest-tag`,
to select the numerically highest version even if it is not the chronologically latest tag.
* Changed:
* Updated Dunamai to 1.26.0+ for the latest features.
VPN: OpenVPN: Instances - debounce learn-address calls so we limit the number of alias updates to a minimum.
When a lot of clients connect at the exact same time, it doesn't really make sense to keep calling the alias update procedure as logically we are only interested in the last one.
This change simply opens a file, keeps track of its modification stamp and if another updated it after us, assume that caller is responsible for making the magic happen.
Although there is a small downside to this (clients connecting constantly, nobody resposible for accounting), the gain is likely much bigger as it prevents these calls from floodin the system in all cases (saving a lot of load).
x11/hyprshutdown: Add port: Graceful shutdown utility for Hyprland
A graceful shutdown/logout utility for Hyprland, which prevents apps
from crashing / dying unexpectedly.
Notes:
- hyprshutdown does not shut down the system, it only shuts down
Hyprland.
- hyprshutdown does not work with anything other than Hyprland, as it
relies on Hyprland IPC.
WWW: https://github.com/hyprwm/hyprshutdown