v0.7.0
Changes
New features
This release introduces the Event Streaming API (#293), bringing real-time SSE-based event subscriptions to the SDK. Alongside that, the homeserver picks up a new GET /signup_tokens/{token} endpoint (#319) for checking whether a signup token is valid or already used
On the developer experience side, pubky-testnet now supports an optional embedded Postgres mode (#308), so you can spin up fully self-contained test environments without needing an external database.
Auth flows have been reworked to use a new /inbox relay endpoint (#316) (replacing the previous /link channel), and the token validity window has been extended from 45 seconds to 3 minutes (#318).
Under the hood several major dependencies were bumped: pkarr (3.x → 5.x), reqwest (0.12 → 0.13), and ed25519-dalek (2.x → 3.0-pre). See the breaking changes section below for migration details.
Breaking changes
pubky-common
pkarr3.10 → 5.0 anded25519-dalek2.x → 3.0.0-pre.1EventCursormoved here from the homeserver crate, with inner type changed fromi64→u64- Auth timestamp window widened from 45 seconds to 3 minutes
- New
pub mod eventsadded (additive)
pubky-sdk (pubky)
pub use pkarr::DEFAULT_RELAYSremoved — must now usepubky::pkarr::DEFAULT_RELAYSDEFAULT_HTTP_RELAYdeprecated (/link→/inbox) — replaced byDEFAULT_HTTP_RELAY_INBOXHttpRelayLinkChannel/EncryptedHttpRelayLinkChanneldeprecated. Replaced by*InboxChannelvariants- Auth flows default to
/inboxendpoint reqwest0.12 → 0.13- New event streaming API added:
Event,EventCursor,EventStreamBuilder,EventType(additive)
pubky-homeserver
axum-server0.7 → 0.8- New endpoint
GET /signup_tokens/{token}for querying signup token status (additive)
pubky-testnet
- HTTP relay now enables CORS (cors_allow_all(true)) by default
- DHT builder API changed (chaining style, from pkarr/mainline upgrade)
- New
Testnet::new_unseeded()method (additive) - New
embedded-postgresfeature flag withEphemeralTestnetBuilder::with_embedded_postgres()(additive)
pubky-wasm (JS bindings)
wasm-bindgen0.2.100 → 0.2.108 andwasm-streams0.4 → 0.5- Auth relay default changed from
/linkto/inbox(inherited from SDK) - New event streaming bindings added:
EventStreamBuilder,Event,PubkyResource(additive)
What's Changed
- feat: events-stream sdk by @86667 in #293
- chore: Re-export
pkarrby @ok300 in #297 - chore: Group
dependabotPRs by @ok300 in #305 - fix: Fix crate naming issue preventing
dependabotruns by @ok300 in #304 - feat: Add feature for embedded Postgres by @86667 in #308
- chore: Bump
pkarr,mainline,pkarr-relayby @ok300 in #315 - feat: increased auth token life time from 45s to 3min + clean code refactor by @SeverinAlexB in #318
- feat: GET /signup_tokens/{token} resource by @86667 in #319
- fix: Macos mainline tests binding to 127.0.0.1 by @SeverinAlexB in #320
- fix: pubky-testnet readme local cargo test by @SeverinAlexB in #321
- feat: set 10 request per ip per minute default rate limit for
/signup_tokensroute by @86667 in #323 - chore: pubky-testnet v0.7.0 by @86667 in #326
- feat: Examples use embedded postgres by default by @86667 in #335
- docs: Improve pubky-testnet usage docs by @86667 in #341
- fix: UserQuotaLayer does not need to validate a pubky exists in the path by @86667 in #342
- feat: Replace Http-Relay with new /inbox endpoint by @SeverinAlexB in #316
- feat: v0.7.0 release candidate changes by @86667 in #310
- chore: v0.7.0 by @86667 in #347
- feat: Publish crates and npm package via Trusted Publisher auth by @86667 in #348
Full Changelog: v0.6.0...v0.7.0