• v0.18.0 602082fca0

    v0.18.0
    All checks were successful
    Cut release / test (push) Successful in 7m18s
    Cut release / changelog (push) Has been skipped
    Cut release / ci (push) Successful in 0s
    Cut release / cut (push) Successful in 30s
    Roll release / plan (push) Successful in 6s
    Roll release / image (push) Successful in 13s
    Roll release / chart (push) Successful in 11s
    Roll release / release (push) Successful in 1s
    Stable

    agent released this 2026-10-21 17:53:47 +00:00 | 2 commits to main since this release

    Changed

    • The repository moves to https://forge.sarak.sh/arr/sniffarr, the image to sarak.sh/arr/sniffarr and the chart to oci://sarak.sh/arr/charts/sniffarr; the chart's default image.repository follows. Releases from 0.18.0 on are published there and no longer to ghcr.io/mikluko.
    Downloads
  • v0.17.1 85ec4ed857

    v0.17.1 Stable

    github-actions[bot] released this 2026-10-21 17:41:37 +00:00 | 3 commits to main since this release

    Fixed

    • An audio mark names the studio when the name or a file has one, even after a word of the language: Silo.S03E10.1080p.rus.LostFilm.TV.mkv marks LostFilm, not rus; stored marks are recomputed once at the first start.
    Downloads
  • v0.17.0 c9bf24eabe

    v0.17.0 Stable

    github-actions[bot] released this 2026-10-21 16:14:02 +00:00 | 4 commits to main since this release

    Added

    • The release card lists the rules that recognised features in its name, with the matched fragments, and the audio markers found in the name or file paths; CardResponse carries them as rules, recomputed when the card is opened.
    Downloads
  • v0.16.0 b46a7c68d7

    v0.16.0 Stable

    github-actions[bot] released this 2026-10-21 15:17:56 +00:00 | 5 commits to main since this release

    Added

    • The web UI searches movies and series in the store and on TMDB together; what TMDB finds is listed after the movies and series with releases, and stored even without releases.
    • A page per movie or series at /w/{id}, m348 or tv1399: its TMDB details, its places in the tops over 24 hours, 7 days and 30 days, its peers, the audio of its releases, and its releases filtered by quality, source, size, audio, season and episode.
    • The torrents tab at /torrents: every release, matched or not, filtered by kind, match, quality, audio, source, layer and size, each matched one linked to its movie or series.
    • BrowseService.SearchTitles, Title, TitleReleases and Torrents.
    • A release's quality, 2160p, 1080p, 720p or sd, and its episode, read from its name; Release carries quality, season and episode, and stored releases get them at the first start.
    • An audio marker records its mark, the word or studio as written; Audio carries mark, and stored markers get theirs at the first start.
    • TopRequest.voice_language picks the audio language a voice applies to among the configured ones.

    Changed

    • Breaking: BrowseService is reshaped for the movies and series of TMDB: Card returns the release's work and rank_in_work in place of work, releases and release_rank, TopEntry carries a WorkSummary with audio, sources and first_seen in place of Work, and Stats counts music, books and software as KIND_OTHER.
    • Breaking: the tops rank TMDB movies and series: releases of every title key matched to one TMDB work count together, and a release matched to none is in no top.
    • Breaking: music, books and software have no top and no page in the web UI; they show as "other" among the torrents.
    • Breaking: VOICE_LIKELY and voice=p50 admit releases with a marker as well as those with a probability of at least 0.5.
    • Breaking: a movie or series is named by its ID, m348 or tv1399, in place of the work key WorkRef.key gave; Release.work carries it.
    • A movie's or series' TMDB details are fetched once for all its title keys.

    Removed

    • BrowseService.Page and BrowseService.Work, with PageRequest, WorkMatch, WorkRef and Work.
    • The web UI's /top/w/{id}: it redirects to /w/{id}.
    Downloads
  • v0.15.1 7c718a718b

    v0.15.1 Stable

    github-actions[bot] released this 2026-10-21 11:13:47 +00:00 | 6 commits to main since this release

    Changed

    • The source labels of the web UI are lower case in both languages: web, rip, remux.
    Downloads
  • v0.15.0 55ecb7795d

    v0.15.0 Stable

    github-actions[bot] released this 2026-10-21 11:03:32 +00:00 | 7 commits to main since this release

    Added

    • BrowseService.Settings returns the API's audio languages, BCP-47 tags in its order; the web UI asks it at start and listens only once it has answered.
    • TMDBWork.poster_path is the poster TMDB serves for the request's lang, ru or en, stored per language in tmdb_texts; a language without one takes the other's, then the work's en-US poster.

    Changed

    • Breaking: SNIFFARR_AUDIO_LANGUAGES has no default: unset or empty, the audio extension is off, and no audio is recorded, asked about or shown. Installs that relied on the default set SNIFFARR_AUDIO_LANGUAGES=ru.
    • The migration marks every matched work's details unfetched, so the TMDB worker's backfill fetches each once more, two requests a work, to record both posters; until it has, the work shows its match without details.

    Removed

    • SNIFFARR_AUDIO_LANGUAGES of -ui: the UI takes the languages from the API.
    Downloads
  • v0.14.1 06fcb82ef5

    v0.14.1 Stable

    github-actions[bot] released this 2026-10-21 10:49:33 +00:00 | 8 commits to main since this release

    Fixed

    • -fetch no longer crashes a few times an hour: the BitTorrent and DHT libraries are back at their released versions, v1.61.0 and v2.24.0, whose sample_infohashes reply the node frames itself.
    Downloads
  • v0.14.0 5c6f3cd24b

    v0.14.0 Stable

    github-actions[bot] released this 2026-10-20 21:58:30 +00:00 | 9 commits to main since this release

    Changed

    • Among several TMDB candidates that fit a title, the one with a popularity of at least 20 and ten times every other's is the match, under layer tmdb with confidence 0.8; the classifier is asked only when none stands out, and it is shown each candidate's language, countries, popularity and votes.
    • A title key that matched nothing is looked up again after 7 days by default, SNIFFARR_TMDB_RETRY 168h, in place of 30.
    Downloads
  • v0.13.0 3fc86d2f8d

    v0.13.0 Stable

    github-actions[bot] released this 2026-10-20 21:24:16 +00:00 | 11 commits to main since this release

    Added

    • A matched title's TMDB details: type, original title, poster path, rating and votes, runtime, a series' status and seasons, countries and language in tmdb_works, and its title, overview and genres in Russian and English in the table tmdb_texts; a migration adds them. Release, Work and WorkMatch carry tmdb, a TMDBWork, with the texts in the request's lang, ru or en, which SearchRequest, GetRequest, PageRequest, CardRequest, TopRequest and WorkRequest take; a title looked up and not found is a TMDBWork with id 0.
    • The TMDB worker backfills the details of matches that lack them, oldest match first, under SNIFFARR_TMDB_RATE and SNIFFARR_TMDB_CONCURRENCY.
    • The web UI shows the match on a torrent's card, in the rows of the top and in the block over search results, with posters from image.tmdb.org, links to TMDB and IMDb, and the method, confidence and date of the match; an unmatched title gets TMDB and IMDb searches.
    • The TMDB logo and the notice "This product uses the TMDB API but is not endorsed or certified by TMDB." at the foot of every page of the web UI.

    Changed

    • The block over search results is "Titles" (Russian «Названия»); the top's caption no longer names works; the card's "work" row and "look up" links are the TMDB block.
    • A match's IMDb, TVDB and Wikidata IDs come with the work's page, so a match costs two requests past its searches instead of one, and a backfilled match two; a page TMDB refuses to serve leaves the match with empty details instead of recording a failed match.
    Downloads
  • v0.12.0 2e2f15e98f

    v0.12.0 Stable

    github-actions[bot] released this 2026-10-20 20:11:00 +00:00 | 12 commits to main since this release

    Changed

    • The tables are named after their module: torrents → torrent_releases, torrents_fts → torrent_releases_fts, files → torrent_files, audio → torrent_audio, queue → ingest_queue, dead → ingest_dead, rejected → ingest_rejected, token_usage → ingest_token_usage, peers_hour → stat_peers_by_hour, peers_day → stat_peers_by_day, top → stat_top; tmdb_works, tmdb_ids, settings and schema_migrations keep their names. A migration renames them with their indexes, and the index title_ids_id becomes tmdb_ids_id. The queue metrics report the instrumentation scope github.com/mikluko/sniffarr/internal/store.
    Downloads