Add regex patterns for split-archive coverage gaps #5

Merged
CodeX merged 2 commits from feat/regex-rar-coverage into main 2026-04-08 17:53:03 +02:00
Owner

Add regex patterns for split-archive coverage gaps

Upstream blacklist provides partial coverage for rar, zip, and 7z
multi-volume archives:

rar: .r00-.r04 (bare letters stop at .r04, no .r05+ coverage)
zip: .z00-.z04 (bare letters stop at .z04, no .z05+ coverage)
7z: *.7z.001, *.7z.002 (no .7z.003+ coverage)

Releases using higher volume numbers slip through qBittorrent's
file-level exclusion filter. Cleanuparr's Malware Blocker does
remove the torrent from the Sonarr/Radarr queue on its 15-second
inspection cycle, but in the window between torrent add and removal
qBittorrent can accumulate hundreds of MB of data -- enough to
trigger HnR (hit-and-run) penalties on trackers.

Fix: add two regex patterns to blacklist as manual local additions
preserved by the three-way merge:

regex:(?i)^..7z.\d+$ - 7z multi-volume (.7z.001 onwards)
regex:(?i)^.
.[r-z]\d+$ - rar volumes (.r00-.r99), rar overflow
letters (.s00-.y99), and zip splits
(.z00-.z99), case-insensitive

Between them these two patterns cover every rar, zip, and 7z
multi-volume variant in any case (upper or lower), including overflow
letters (t, u, v, w, x, y) that rar uses after .r99. The existing
*.rar literal entry already handles .rar and .partNN.rar (both end
with .rar).

Verified against the whitelist: neither pattern matches any of the
eight whitelisted extensions (*.ass, *.avi, *.mkv, *.mp4, *.srt,
*.ssa, *.sub, *.webm). The only meaningful side-effect catch is
*.s3 (ScreamTracker music modules), which does not occur in the
Sonarr/Radarr media workflow.

Add regex patterns for split-archive coverage gaps Upstream blacklist provides partial coverage for rar, zip, and 7z multi-volume archives: rar: *.r00-*.r04 (bare letters stop at .r04, no .r05+ coverage) zip: *.z00-*.z04 (bare letters stop at .z04, no .z05+ coverage) 7z: *.7z.001, *.7z.002 (no .7z.003+ coverage) Releases using higher volume numbers slip through qBittorrent's file-level exclusion filter. Cleanuparr's Malware Blocker does remove the torrent from the Sonarr/Radarr queue on its 15-second inspection cycle, but in the window between torrent add and removal qBittorrent can accumulate hundreds of MB of data -- enough to trigger HnR (hit-and-run) penalties on trackers. Fix: add two regex patterns to blacklist as manual local additions preserved by the three-way merge: regex:(?i)^.*\.7z\.\d+$ - 7z multi-volume (.7z.001 onwards) regex:(?i)^.*\.[r-z]\d+$ - rar volumes (.r00-.r99), rar overflow letters (.s00-.y99), and zip splits (.z00-.z99), case-insensitive Between them these two patterns cover every rar, zip, and 7z multi-volume variant in any case (upper or lower), including overflow letters (t, u, v, w, x, y) that rar uses after .r99. The existing *.rar literal entry already handles .rar and .partNN.rar (both end with .rar). Verified against the whitelist: neither pattern matches any of the eight whitelisted extensions (*.ass, *.avi, *.mkv, *.mp4, *.srt, *.ssa, *.sub, *.webm). The only meaningful side-effect catch is *.s3 (ScreamTracker music modules), which does not occur in the Sonarr/Radarr media workflow.
CodeX added 1 commit 2026-04-08 16:45:17 +02:00
Upstream blacklist enumerates rar volume extensions only up to .r04,
.s09, .z04, with the .003 split missing entirely and no coverage for
the .partNN.rar multi-part naming convention. Releases with files like
.r05 and beyond slip through the file-level filter, and Malware
Blocker's queue-level cleanup is too slow to prevent qBittorrent from
downloading enough data to incur HnR penalties.

Add five regex patterns to the blacklist as manual local additions
preserved by the three-way merge:

  regex:^.*\.\d{3}$           - all 3-digit numeric splits (.000-.999)
  regex:^.*\.part\d+\.rar$    - multi-part rar new style
  regex:^.*\.r\d+$            - all rar volume numbers (old style)
  regex:^.*\.s\d+$            - rar volumes after r99
  regex:^.*\.z\d+$            - zip splits

These patterns are added directly to blacklist via the manual addition
escape hatch documented in README and Lists.md. The Whitelist stripped
log line will continue to function normally; new lines appear under
Custom preserved.
CodeX added 1 commit 2026-04-08 17:25:45 +02:00
Replace the 5 separate regex patterns with a tighter 2-pattern version
that covers the same rar/zip gaps plus overflow letters (t, u, v, w,
x, y) not caught by the 5-pattern version, and adds 7z multi-volume
coverage. Both patterns are case-insensitive.

  regex:(?i)^.*\.7z\.\d+$     - 7z multi-volume (.7z.001+)
  regex:(?i)^.*\.[r-z]\d+$    - rar volumes, overflow, zip splits

The .partNN.rar pattern is removed because the existing *.rar literal
entry already covers it (ends-with match). The bare .NNN numeric split
pattern is removed because it was outside the stated scope of blocking
rar, zip, and 7z archives.
CodeX merged commit 455af2029f into main 2026-04-08 17:53:03 +02:00
CodeX deleted branch feat/regex-rar-coverage 2026-04-08 17:53:03 +02:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: arr/blocklists#5