-
v0.11.0 Stable
released this
2026-10-20 19:13:02 +00:00 | 12 commits to main since this releaseChanged
- Breaking: The titles extension is the TMDB extension.
SNIFFARR_TITLES_CONCURRENCY,SNIFFARR_TITLES_RATE,SNIFFARR_TITLES_RETRYandSNIFFARR_SEARCH_TITLES_MAXareSNIFFARR_TMDB_CONCURRENCY,SNIFFARR_TMDB_RATE,SNIFFARR_TMDB_RETRYandSNIFFARR_SEARCH_TMDB_MAX. A release carriestmdb_layerandtmdb_confidencein place oftitle_layerandtitle_confidence, and the enum isTMDBLayerwithTMDB_LAYER_UNSPECIFIED,TMDB_LAYER_SEARCHandTMDB_LAYER_CLASSIFIER. The metricssniffarr.titles.matchesandsniffarr.titles.requestsaresniffarr.tmdb.matchesandsniffarr.tmdb.requests, with the attributessniffarr.tmdb.layerandsniffarr.tmdb.status. The tablestitlesandtitle_idsaretmdb_worksandtmdb_ids; a migration renames them.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Breaking: The titles extension is the TMDB extension.
-
v0.10.0 Stable
released this
2026-10-20 18:37:44 +00:00 | 13 commits to main since this releaseChanged
- Breaking:
-public-ipis gone.-sniffasks a STUN server for its public address at start,-stun, defaultstun.l.google.com:19302; the node ID takes the BEP 42 prefix of the answer, and is used as stored when the server does not answer within 5 seconds or-stunis empty.
Removed
- The line under the charts of the data page that pointed at Grafana for the rest of the telemetry.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Breaking:
-
v0.9.0 Stable
released this
2026-10-20 13:59:04 +00:00 | 14 commits to main since this releaseAdded
- The DHT node of
-sniffserves the peers announced to it:get_peersreplies carry up to 50 peers announced within the last 30 minutes, held in memory only, up to 100 per infohash and 200,000 infohashes. Metricssniffarr.dht.infohashesandsniffarr.dht.peers. - The node answers BEP 51
sample_infohasheswith up to 20 of the infohashes it holds, their count, the nodes nearest the target and an interval of 1800 seconds, one reply per source every 10 seconds. Metricsniffarr.dht.replies. - The node answers a
get_peerswithscrapeby BEP 33: the reply carries theBFsdandBFpebloom filters of the seeds and the other peers held for the infohash, theseedflag ofannounce_peertelling them apart. - The node's ID is kept across restarts:
IngestService.HashKeyreturnsnode_id, 20 bytes the API generates once into its store, and-sniffwaits for it before the node starts.-public-ipgives the ID the BEP 42 prefix of the node's public address.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- The DHT node of
-
v0.8.0 Stable
released this
2026-10-20 12:20:42 +00:00 | 18 commits to main since this releaseChanged
- A torrent's card links to TMDB and IMDb: the work's pages when its IDs are known, else searches for its title.
- The work named on a torrent's card and in search results links to that work in the top with its releases open, in place of the top of its kind.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v0.7.1 Stable
released this
2026-10-20 12:01:33 +00:00 | 19 commits to main since this releaseFixed
- A torrent stored by
-apigets itswork_key,yearandseasonat insertion; a stored torrent that has none takes them at the next start. - The DHT node of
-sniffputs a token in itsget_peersreplies, so it receivesannounce_peer: torrents are discovered withSOURCE_ANNOUNCEand their announcing peers are counted. It still serves no peers.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- A torrent stored by
-
v0.7.0 Stable
released this
2026-10-20 11:21:25 +00:00 | 22 commits to main since this releaseAdded
- Peers per torrent, as HyperLogLog sketches and nothing else:
-sniffcounts the senders ofannounce_peerand-fetchthe peers it meets, for stored torrents only, and both send their sketches to the API withIngestService.Peersevery 3 minutes, hashing eachIP:portwith the keyIngestService.HashKeygives. The store keeps hourly sketches for 8 days and daily ones for 65. - Works:
work_key,yearandseasonon every torrent; a movie or an album is its title and year, a series its title and season. - The top of works,
BrowseService.TopandWork, recomputed every 10 minutes formovie,seriesandmusicover the windows24h,7dand30dand the voice filtersany,p50andexplicit, each entry with its peers, releases and change against the previous window. BrowseService.Home;Pagetakessort(peers,last_seen,size) and lists matchingworks;Cardcarriespeersover three windows, the torrent'swork, itsreleasesandrelease_rank;Releasecarriespeers_week.SightResponse.storedsays, per infohash sent, whether the torrent is stored.- Web UI: a home page at
/with a summary, the top at/topand/top/w/{id}, a works block and a 7-day peers column in search results sorted bysort, peers over three windows and the work on a torrent's card, and?lang=ru|enremembered in a cookie for a year. - Metrics
sniffarr.ingest.sketches,sniffarr.sniff.peersandsniffarr.sniff.sketches.
Changed
- The search page does not poll for new torrents; the data page still does.
- The web UI's English locale is
en;CandPOSIXresolve to it.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Peers per torrent, as HyperLogLog sketches and nothing else:
-
v0.6.0 Stable
released this
2026-10-20 09:22:09 +00:00 | 42 commits to main since this releaseAdded
BrowseService, behind the search token:Pagelists releases with the UI's filters,Cardgives one release with its files,Statsgives the counts of the data page.- The chart's
uicomponent: Deployment and Service<release>-uirunningsniffarr -ui, withui.service.targetPortnaming a port of a proxy inui.extraContainersandSNIFFARR_OIDC_ISSUERset throughui.env. - The chart's
single.enabled: one Deployment<release>running-apiwith every enabled component ofui,sniffandfetch, withsingle.replicasfixed at 1.
Changed
- Breaking: one binary,
sniffarr, whose components are the flags-api,-ui,-sniffand-fetch;sniffapiandsniffdhtare gone, and the image's entrypoint issniffarr. Every environment variable and DHT flag keeps its name. - Breaking:
-discoveris-sniff; the web UI is served by-ui, andSNIFFARR_UI_ADDRdefaults to:8081. - The web UI reads through
BrowseService: in a process with-apiover an in-memory connection, else atSNIFFARR_URLwithSNIFFARR_SEARCH_TOKEN.SNIFFARR_URLset in a process with-apiis refused. -log-levelgiven wins overSNIFFARR_LOG_LEVEL.- Every component reports telemetry as the service
sniffarrunlessOTEL_SERVICE_NAMEsays otherwise. - The chart's containers are named
api,sniffandfetch.
Removed
- Breaking: the chart's
api.ui;uireplaces it, and a values file still settingapi.uifails to render.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads