A fetch that failed logged reqwest's words, which name the whole address: Patreon's auth key went to Loki on 2026-10-15, and, since scan events go to every open page, to everyone's browser too. #225 had taken queries out of the traces' address fields only. Every event is redacted where it is emitted, for the log, the live stream and a terminal alike: address fields lose their query and password, and so does any address in an error's words (feed::redact_text). The artwork proxy's warnings and the directory's failed checks the same. The error kept on the feed, shown to its own subscribers, keeps the detail. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2.5 KiB
2.5 KiB
Changelog: ipx-directory
The directory of public podcasts that ipx servers share (docs/directory.md). ipx's changelog is crates/ipx/CHANGELOG.md, the page's web/CHANGELOG.md.
Its version is in crates/directory/Cargo.toml, and a release is tagged directory-vX.Y.Z.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Security
- A failed feed check is logged without its address's query or password (#238).
Changed
- The directory checks five feeds at a time, so a publisher that does not answer no longer holds up the rest of its round (#227).
- A feed's server that takes 10 s to connect, or sends nothing for 15 s, is given up on (#230).
1.1.0 - 2026-10-13
Added
- With
metrics_bindset, the directory serves Prometheus metrics on a port of its own: memory, open files, and the feeds it has fetched and their bytes. A feed check's trace says how large the feed was (#224).
Changed
- The directory uses mimalloc instead of glibc's allocator, so it gives back memory it has freed instead of holding over a gigabyte while idle (#224).
- The example in docs/directory.md has no healthcheck;
ipx-directory healthis still there to run by hand (#218).
Security
- A feed check's trace keeps the feed's address without its query or password (#225).
1.0.0 - 2026-10-12
Added
- Anyone can browse the directory in a web browser, read only: the most subscribed, categories, every feed A to Z, a search by name, and each feed's page with its latest items and its address to copy into any podcast app (#215).
GET /v1/instanceslists the servers holding a snapshot, with their feeds and subscribers, for an admin token (#206).ipx-directory, a directory of public podcasts that ipx servers share: each sends the public feeds its people subscribe to, and any server with a token browses them, each feed listed once it has been read. Tokens are in its config file, each read-only, read-write or admin, and revoked one at a time (#204, #205).- Traces: a span a request, joining the trace of the ipx server that called, and a trace a refresher round with a span a feed (#213).