classifier multiple classifier*.yml configurations#379
Open
rraymondgh wants to merge 7 commits into
Open
Conversation
giorgiobrullo
added a commit
to giorgiobrullo/bitmagnet
that referenced
this pull request
Mar 1, 2026
…ILES env Cherry-pick of PR bitmagnet-io#379. Classifier now loads classifier*.yml glob pattern from XDG config and CWD, allowing split configs (e.g. classifier-tags.yml, classifier-flags.yml). Also supports EXTRA_CLASSIFIER_FILES env var for additional config file paths (comma-separated). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
giorgiobrullo
added a commit
to giorgiobrullo/bitmagnet
that referenced
this pull request
Mar 1, 2026
…agnet-io#379) Two issues from the cherry-pick of PR bitmagnet-io#379 (multiple classifier config files): 1. Tests referenced the old `rawSourceProvider` field which was replaced by `raw []byte` + `err error` in yamlSourceProvider. Updated to use `coreSourceProvider{}.provider()` instead. 2. JSON schema was missing the new `keywords_override` and `extensions_override` properties, causing validation to fail with additionalProperties: false. Added both as nullable object types since they serialize as null when unset. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I have been running torznab profiles with tag filters. sonarr RSS runs well, when torrents are pre-tagged and filtered by these tags. I have an hypothesis that 100 torrent limit means that sonarr does not poll all the torrents on content type filter alone. (I have not observed enough requests to torznab endpoint) Running a classifier config equivalent to:
This is far better server by keeping often changing
flaglists in separate YaML files. Hence reason for this PR. Changing flag list files can be created with a scheduler, currently with a restart of bitmagnet.I will look into fsnotify for watching used YaML files to automatically trigger a regeneration of CEL environment as a subsequent change.
A few notes on implementation
filepath.Glob(glob)code will not try to open a none existent file. Hence no checking for that any more