Commit Graph

25 Commits

Author SHA1 Message Date
CodeX 324d4e7b18 Distinguish qBittorrent and Cleanuparr pattern syntax in README
qBittorrent's excluded file names field uses Qt glob wildcards only.
The regex: prefix is supported by Cleanuparr's Malware Blocker but
not by qBittorrent. Split the Pattern syntax section into two
subsections documenting each consumer's capabilities and recommend
wildcards as the safe default for all entries.
2026-04-10 16:26:42 +02:00
CodeX 94180d85a7 Merge pull request 'Replace broken regex patterns with wildcards' (#6) from fix/wildcard-archive-patterns into main
Reviewed-on: #6
2026-04-10 15:53:44 +02:00
CodeX 5cc26422f1 Replace broken regex patterns with wildcards
qBittorrent's excluded file names field uses simple wildcards, not
regex. The regex: prefix is not supported and was silently ignored.

Replace the two non-functional regex lines with four wildcard patterns:

  *.7z.*   - 7z multi-volume (.7z.001, .7z.002, ...)
  *.r??    - rar volumes (.r00-.r99)
  *.s??    - rar overflow (.s00-.s99)
  *.z??    - zip splits (.z00-.z99)

These overlap harmlessly with upstream's existing literal entries
(*.r00-*.r04 etc.) and will be preserved as custom additions by the
three-way merge.
2026-04-10 15:51:10 +02:00
CodeX 455af2029f Merge pull request 'Add regex patterns for split-archive coverage gaps' (#5) from feat/regex-rar-coverage into main
Reviewed-on: #5
2026-04-08 17:53:02 +02:00
CodeX 05f53e4cfc Replace with cleaner 2-pattern regex version
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.
2026-04-08 17:25:40 +02:00
CodeX 80c8abcb12 Add regex patterns for split-archive coverage gaps
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.
2026-04-08 16:45:10 +02:00
CodeX 0d5de162a0 Merge pull request 'Document supported pattern syntax in README' (#4) from docs/pattern-syntax into main
Sync blocklists from upstream / sync (push) Successful in 44s
Reviewed-on: #4
2026-04-07 22:00:06 +02:00
CodeX 3a664675b5 Document supported pattern syntax in README
Add a Pattern syntax section listing the five pattern forms accepted
by qBittorrent's excluded file names (suffix, prefix, contains, exact,
regex), which are the same forms that the entries in blacklist and
whitelist must use. Note that the merge script subtracts whitelist
from blacklist as exact strings regardless of pattern form, so
equivalent patterns written differently are not interchangeable.
2026-04-07 21:45:35 +02:00
CodeX 182b825af2 Merge pull request 'Correct consumer model in README' (#3) from docs/cleanuparr-only-consumers into main
Reviewed-on: #3
2026-04-07 02:15:49 +02:00
CodeX 6ca8a85ae5 Correct consumer model in README
qBittorrent does not read any URL from this repository. Cleanuparr's
Blocklist Sync feature fetches the blacklist and pushes the patterns
to qBittorrent via its Web API. Cleanuparr's Malware Blocker feature
consumes the whitelist for Sonarr/Radarr queue inspection. Update
the header, prerequisites, and Usage section to reflect this.
2026-04-07 02:13:07 +02:00
gitea-actions dd6db2474e Sync blocklists from upstream 2026-04-06 23:43:24 +00:00
CodeX 0a37bffb7d Merge pull request 'Document manual blacklist additions in README' (#2) from docs/readme-blacklist-additions into main
Reviewed-on: #2
2026-04-07 01:41:58 +02:00
CodeX 2f2ac6897f Document manual blacklist additions in README
Add a "Maintaining the blacklist" section that mirrors "Maintaining
the whitelist" and explains the manual-addition escape hatch
preserved by the three-way merge. Clarify that direct removals do
not work and must go through the whitelist instead.
2026-04-07 01:26:13 +02:00
CodeX 570fa858e8 Merge pull request 'Simplify to whitelist/blacklist model' (#1) from feat/whitelist-strip-blacklist into main
Reviewed-on: #1
2026-04-07 01:12:57 +02:00
CodeX 14fd0cf511 Simplify to whitelist/blacklist model
- Rewrite merge_blocklists.py to sync a single blacklist from upstream
  and subtract the locally-maintained whitelist
- Replace whitelist contents with subtitle + webm seed
- Remove blacklist_permissive, whitelist_with_subtitles, and all
  .prev files that are no longer needed
- Rewrite README to reflect the two-file model and link to wiki
2026-04-07 01:09:17 +02:00
CodeX 568d27bbf1 Change run frequenzy
Sync blocklists from upstream / sync (push) Successful in 36s
change from 6 hours to 7 days at 04.00
2026-03-23 09:31:23 +01:00
gitea-actions 897f60250a Sync blocklists from upstream 2026-03-22 16:18:23 +00:00
CodeX 25df98253d Initial creation
Readme for usage
2026-03-22 16:58:24 +01:00
CodeX 4ecfa39b0c Moved python code to separate script
moved python code to separate script
2026-03-22 16:56:57 +01:00
CodeX 9fed65b469 Initial creation
Python script for threeway merge, called from runner action script
2026-03-22 16:53:20 +01:00
CodeX a411d9805d Initial creation
Create action for threeway merge of upstream
2026-03-22 16:50:52 +01:00
CodeX 4408749108 Initial creation 2026-03-22 16:31:05 +01:00
CodeX ba8a27460d Initial creation 2026-03-22 16:30:15 +01:00
CodeX cfff880017 Initial creation 2026-03-22 16:29:29 +01:00
CodeX 5501df1016 Initial creation 2026-03-22 16:28:10 +01:00