Versions in this module Expand all Collapse all v1 v1.0.0 Jul 12, 2026 Changes in this version + var ErrNoEligibleRelease = errors.New("rss: no eligible release for movie") + type Downloader interface + Grab func(ctx context.Context, result indexer.SearchResult, movieID uint32) (*ent.DownloadRecord, error) + type EpisodeGrabber interface + GrabEpisode func(ctx context.Context, result indexer.SearchResult, episodeID uint32) (*ent.DownloadRecord, error) + type EpisodeMissingSearcher struct + func NewEpisodeMissingSearcher(store WantedEpisodeLister, indexers TVIndexerSearcher, ...) (*EpisodeMissingSearcher, error) + func (s *EpisodeMissingSearcher) Run(ctx context.Context) error + func (s *EpisodeMissingSearcher) SearchShow(ctx context.Context, showID uint32) error + type FeedRunner interface + Run func(ctx context.Context) error + type FeedScanner struct + func NewFeedScanner(store db.Store, indexers IndexerFeeder, grabber Downloader) (*FeedScanner, error) + func (s *FeedScanner) Run(ctx context.Context) error + type IndexerFeeder interface + Feed func(ctx context.Context, indexerName string) ([]indexer.SearchResult, error) + type IndexerSearcher interface + SearchMovie func(ctx context.Context, titles []string, tmdbID uint32) ([]indexer.SearchResult, error) + type MissingSearchRunner interface + Run func(ctx context.Context) error + type MissingSearcher struct + func NewMissingSearcher(store db.Store, indexers IndexerSearcher, downloads Downloader) (*MissingSearcher, error) + func (s *MissingSearcher) Run(ctx context.Context) error + func (s *MissingSearcher) SearchOne(ctx context.Context, m *ent.Movie) error + type QualityConfig struct + MaxGrabFailures uint8 + MinResolution string + NoMatchCooldown time.Duration + PreferredResolution string + UpgradeAllowed bool + func (q QualityConfig) Accepts(releaseTitle string) bool + type TVIndexerSearcher interface + SearchEpisode func(ctx context.Context, titles []string, tvdbID uint32, season, episode uint16) ([]indexer.SearchResult, error) + SearchSeason func(ctx context.Context, titles []string, tvdbID uint32, season uint16) ([]indexer.SearchResult, error) + type WantedEpisodeLister interface + IncrementEpisodeGrabFailures func(ctx context.Context, id uint32) error + ListWantedEpisodes func(ctx context.Context) ([]*ent.TVShow, error) + ResetEpisodeGrabFailures func(ctx context.Context, id uint32) error + SetEpisodeLastSearchAt func(ctx context.Context, id uint32, when time.Time) error + SetEpisodeStatus func(ctx context.Context, id uint32, status episode.Status) error