Releases: Thoroslives/zilean
Release list
v3.10.1
Highlights
Torznab and /dmm/filtered searches with a trailing year in q= (e.g. q=Oppenheimer 2023 or q=Oppenheimer (2023)) now return results. Previously they returned zero because the trigram match was running against the cleaned title (which never contains a year) and failing the similarity threshold.
This was an inherited upstream issue dating to iPromKnight/zilean@5149cd1 (Nov 2024).
The trailing year is now extracted from q= and routed into the structured Year filter automatically. Explicit &year= still wins when both are provided. Bare-year queries like q=1923 (the show) and mid-string years like q=The Matrix 1999 Remastered are unaffected.
Closes #22.
Bug Fixes
- extract trailing year from q= in filtered search (6c8e0d1)
v3.10.0
3.10.0 (2026-05-10)
Features
Highlights
Parsing.VerboseLogging(defaultfalse): gates per-title Python loguru lines and demotes C# matcher per-torrent logs (TorrentUpdated/TorrentRetained/NoSuitableMatchFound) toLogLevel.Debug. Operators wanting full per-torrent visibility set the flag totrue(Python side) and drop SerilogMinimumLeveltoDebug(C# side).- Per-batch stage timings:
Batch N stage timings: parse=Xms populate=Yms match=Zms upsert=Wmsemitted atInformation. Spot bottlenecks per stage without--trace. asyncio.to_threadreverted: prototyped + measured at 5.74x regression on synthetic 5K parse (RTN'sparse()holds the GIL through Pythonre, dispatch overhead dominates). True multicore parser parallelism parked for a future PR.
Addresses parser-side observability + log gating from #19; true multicore is separate.
v3.9.4
3.9.4 (2026-05-09)
Bug Fixes
Highlights
Imdb.MatchCacheSize(default100000, ~25-50 MB): bounds the in-memory(title, year, category)to IMDb ID cache. Replaces an unboundedConcurrentDictionarythat grew across long ingests.Imdb.SnapshotMaxAgeHours(default24, set0to disable): logs a one-shot warning recommending a restart so the in-memory snapshot is rebuilt from a refreshedImdbFilestable.- Synthetic Lucene-matcher throughput benchmark (~9.6x speedup on 2K-row test corpus). Tagged
[Trait("Category", "Benchmark")]and excluded from default CI.
Addresses the IMDb-matcher half of #19.
Documentation
v3.9.3
v3.9.2
v3.9.1
v3.9.0
v3.8.3
v3.8.2
Test Infrastructure
- Add
dotnet testto CI pipeline (Python tests excluded via trait filter) - Add 12 new tests: 6 unit (Torznab XML, query validation) + 6 integration (health checks, search endpoints)
- Add ZileanWebApplicationFactory, TestDataBuilder, and Testcontainers fixture
- Fix Testcontainers port binding (random ports instead of fixed 5432)
- Enable branch protection on main (require CI pass before merge)
No user-facing changes. Internal test infrastructure only.