github jacred-fdb/jacred 3.1.0

5 hours ago

Summary

Large internal refactor of the single JacRed web project — splits god-classes into focused modules, unifies tracker sync patterns, and modernizes hosting. No HTTP route, API JSON shape, or FileDB on-disk layout changes.

Architecture

  • TracksTracksDB → facade + TracksIndexManager, TracksPathResolver, TracksAnalyzer (core / Workflow / Remote partials), TracksExportService, TracksStatsCache, TracksLogging, TracksModels
  • FileDB — partials (Metadata, UrlParsing, Cron, MasterDb); StaticDb.cs removed
  • Stats — moved to Infrastructure/Stats/ (StatsCollector, StatsTorrentIndex, StatsSummary)
  • SearchJackettCardMatcher, JackettResultBuilder; thin JackettSearchService
  • DevApplication/Dev/Migrations/* + dispatcher DevMigrationService; TracksAdminService (renamed from DevTracksService)
  • ConfigurationConfiguration/Schema/ConfigSchema, AppConfigurationValidator, AppConfigurationDiff
  • TrackersTrackerSyncHelpers (RunParseAsync, RunParseAllTaskAsync, RunParseLatestAsync); all 17 *SyncService migrated

Post-refactor cleanup

  • Models.TorrentInfoMasterDbShard (master index metadata; Models.Api.TorrentInfo unchanged)
  • ConfigSaveRequestModels/ConfigSaveRequest.cs
  • LostfilmParser → partial classes; Rutracker / Toloka / NNMClub #region → private methods
  • Minimal hosting: Startup.cs removed, wiring in Program.cs (WebApplication)
  • SyncController debug Console.WriteLineJacRedLog
  • IDE0005: .editorconfig + EnforceCodeStyleInBuild; 64 files — redundant using removed

Full Changelog: 3.0.0...3.1.0

Don't miss a new jacred release

NewReleases is sending notifications on new releases.