10168 Commits

Author SHA1 Message Date
mnightingale
40a3941b9e Fix os.umask race and unnecessary (#3530) 2026-07-30 11:24:06 +03:00
mnightingale
eb9229d326 Prevent concurrent dirscanner scans (#3529) 2026-07-29 22:51:41 +03:00
coopa11y
0411e8acc1 Label schedule time, enable, and delete controls for screen readers (#3525)
* Label schedule time, enable, and delete controls

* Use ARIA label for schedule enable control

---------

Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-28 21:12:47 +03:00
mnightingale
f405b8927a Reduce BPS allocations and fix scale (#3527)
* Replace per-second bps list copy

* Consistent x-axis scale after startup

* Advance time when padding
2026-07-28 19:50:14 +03:00
mnightingale
47a507f5a6 Fix flaky test_api_queue_sort test and to_unit at boundaries (#3522)
* Fix flaky sort test by comparing at the same resolution

* Fix consistency of values printed at reduced precision

* Replace the float-string roundtrip with rounding and adjust to next unit if required

* Comment styling
2026-07-28 17:59:47 +03:00
Amajiro
bdca9715b2 Add Ayatana AppIndicator tray support on GNOME (#3508)
* Add Ayatana AppIndicator tray support on GNOME

* Only load tray icon fallback backends when needed
2026-07-28 17:44:00 +03:00
SABnzbd Automation
0954ac143d Update translatable texts
[skip ci]
2026-07-28 14:43:46 +00:00
coopa11y
9122633907 Label SABnzbd login fields and help link for screen readers (#3524)
* Label SABnzbd login fields and help link

* Use ARIA labels for login fields

---------

Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-28 17:42:48 +03:00
renovate[bot]
1b6aea3afb Update all dependencies (#3526)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-27 08:43:03 +03:00
coopa11y
af10190e0b Improve Glitter status table accessibility (#3523)
Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-26 20:07:31 +03:00
SABnzbd Automation
1acfc5139c Update translatable texts
[skip ci]
2026-07-26 13:28:53 +00:00
Parsa Yazdani
404060373b feat: add 'Sort by Remaining Size' queue sort option (#3512)
* feat: add 'Sort by Remaining Size' queue sort option

Add a new 'remaining_bytes' sort field that sorts the queue by absolute
remaining bytes (bytes - bytes_tried), complementing the existing
'remaining' sort which uses percentage downloaded and the 'size' sort
which uses total bytes.

Changes:
- nzbqueue.py: add remaining_bytes sort field, fix update_sort_order()
  to parse field+direction from config instead of hardcoding 'remaining'
- skintext.py: add Glitter-sortRemainingBytesAsc/Desc translation strings,
  update auto_sort explanation text
- Glitter UI: add dropdown entries and JS handlers for both directions
- Config: add auto_sort options for remaining_bytes asc/desc
- Tests: parametrize remaining_bytes asc/desc against sizeleft slot field

* style: wrap long string for Black formatting

* fix: limit remaining-size sorting to ascending

---------

Co-authored-by: QuixThe2nd <QuixThe2nd@users.noreply.github.com>
2026-07-26 16:28:08 +03:00
coopa11y
a84544bef8 Improve Glitter message accessibility (#3518)
Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-25 12:50:52 +03:00
coopa11y
f38b602924 Improve interface options form accessibility (#3516)
Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-25 11:50:58 +03:00
mnightingale
db57321cb8 Fix postproc scripts on Windows (#3514)
* Verify external_processing failure on Windows

* Implement fix

* Clip complete_dir and newfiles in external_processing
2026-07-25 11:50:20 +03:00
mnightingale
b825636d3f Fix crc32 may be being combined out-of-order (#3519) 2026-07-25 11:47:23 +03:00
SABnzbd Automation
fa3f8735ea Update translatable texts
[skip ci]
2026-07-25 05:04:06 +00:00
mnightingale
c359b21d89 Ruff styling for move None to the end of the type union (#3517) 2026-07-25 08:03:27 +03:00
coopa11y
3ab1782dc2 Improve Add NZB form accessibility (#3511)
Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-22 22:15:35 +03:00
Safihre
91c228353b Correct Signal Wakeup FD Registration for DirScanner
When `DirScanner` is initialized on the main thread, `asyncio.new_event_loop()` can register its self-pipe as the process-wide signal wakeup FD. As the `DirScanner`'s loop runs and is closed on a separate thread, this registration would become stale, potentially breaking signal delivery during application shutdown. Explicitly unregistering the FD prevents this issue.
2026-07-21 15:39:10 +02:00
coopa11y
1336d66f78 Restore keyboard access to queue actions (#3503)
Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-21 15:25:04 +02:00
coopa11y
1f7bec651d Improve Glitter history row accessibility (#3504)
Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-20 10:24:13 +02:00
SABnzbd Automation
8f02e59c31 Update translatable texts
[skip ci]
2026-07-20 08:24:01 +00:00
coopa11y
efb16cc69b Improve Glitter search and pagination accessibility (#3505)
* Improve Glitter search and pagination accessibility

* Fixed: Preserve pagination keyboard shortcuts

---------

Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-20 10:23:24 +02:00
SABnzbd Automation
f6020aa9f7 Update translatable texts
[skip ci]
2026-07-20 06:35:11 +00:00
renovate[bot]
2d2b88e771 Update all dependencies (#3509)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-20 08:34:32 +02:00
SABnzbd Automation
6731da2d68 Update translatable texts
[skip ci]
2026-07-17 10:23:59 +00:00
Safihre
cf8ab5a8d5 Suggest NNTP pipelining increase for high-latency connections
During NNTP server tests, detect high latency and low pipelining settings.
Provide a helpful warning to users to consider increasing their 'Articles per request'
setting to improve download speed.

Closes #3284
2026-07-17 12:23:17 +02:00
Safihre
636aa91e21 Restore queue action buttons 2026-07-17 08:58:52 +02:00
Safihre
a1c9a8aab1 Update text files for 5.1.0RC1 5.1.0RC1 2026-07-16 21:50:07 +02:00
Safihre
73e7dd8084 Update sabctools to 9.6.2 2026-07-16 21:48:27 +02:00
SABnzbd Automation
6eb257388b Update translatable texts
[skip ci]
2026-07-16 19:25:19 +00:00
mnightingale
ba2099d006 Add RSS Age rule (#3498)
* RSS age rule

* Support years (y) and months (mo) and do not approximate durations in seconds

* Better handling of entries with no age

* Formatting

* Allow >=, =>, <=, and =< aliases

* Implement feedback

* Fix existing issue with From SxxEyy in default row

* Test unitless ages
2026-07-16 21:24:41 +02:00
Safihre
8f044bb19e Remove Frugal Usenet IPv6 hostname mappings
@sanderjo they added IPv6 to their main host and the tests caught it :)
2026-07-16 21:20:30 +02:00
Safihre
889fbf688d Correct CSS for queue rows
After #3477
2026-07-16 21:17:53 +02:00
Safihre
ab879cc7d0 Add workflow for manual Claude AI code reviews
Allows maintainers to trigger an AI code review on a pull request by commenting `@claude`.
2026-07-16 21:05:55 +02:00
SABnzbd Automation
5b7a89ffb8 Update translatable texts
[skip ci]
2026-07-16 05:52:39 +00:00
coopa11y
1eed5c7866 Improve Glitter queue row accessibility (#3477)
* Improve Glitter queue row action labels

* Simplify queue row accessibility labels

---------

Co-authored-by: coopa11y <coopa11y@users.noreply.github.com>
2026-07-16 07:51:36 +02:00
Safihre
44777dc3cf Add Python 3.15-dev to integration testing matrix
Install libxml2 and libxslt for integration testing
2026-07-14 16:04:10 +02:00
mnightingale
c91b53d290 Add SAB_FILES environment variable for postproc scripts (#3497)
* Add SAB_FILES environment variable for postproc scripts

* Test external_processing SAB_* environment variables
2026-07-14 14:34:33 +02:00
SABnzbd Automation
ef2ee17c13 Update translatable texts
[skip ci]
2026-07-13 07:52:55 +00:00
mnightingale
a2aec15a38 Remove unwanted extensions after unpack (#3493) 2026-07-13 09:52:20 +02:00
mnightingale
73af985e60 Optimise scanning for orphan jobs and retry all (#3492)
* Optimise scanning for orphan jobs and retry all

* Require start and limit for build_history
2026-07-13 09:26:17 +02:00
SABnzbd Automation
988955374c Update translatable texts
[skip ci]
2026-07-13 05:01:16 +00:00
renovate[bot]
28eaa6c20d Update all dependencies (#3495)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-13 07:00:26 +02:00
mnightingale
5c247e008c Fix test for when rarfile flags has_header_encryption after a failed password attempt (#3491) 2026-07-10 22:02:23 +02:00
Safihre
bf02e9da44 Add defusedxml to release requirements 5.1.0Beta3 2026-07-10 15:46:07 +02:00
Safihre
fb9dbcf824 Update text files for 5.1.0Beta3 2026-07-10 15:36:19 +02:00
Safihre
6a85b2daea Update sabctools dependency to 9.6.1 2026-07-10 15:30:04 +02:00
Safihre
a2ac2b0435 Refactor RAR volume information extraction and deobfuscation
Modernizes `get_rar_extension` to leverage the `rarfile` library's internal header parsing, significantly improving the robustness and reliability of RAR volume number and original extension detection.

The `rar_renamer` function in post-processing is also refactored for improved clarity and maintainability, including the extraction of a dedicated helper function for renaming and various code simplifications.
2026-07-10 11:13:41 +02:00