Skip to content

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 18 Mar 14:03
· 144 commits to main since this release
v0.7.0
faefe2d

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.x5.x), reqwest (0.120.13), and ed25519-dalek (2.x3.0-pre). See the breaking changes section below for migration details.

Breaking changes

pubky-common

  • pkarr 3.105.0 and ed25519-dalek 2.x3.0.0-pre.1
  • EventCursor moved here from the homeserver crate, with inner type changed from i64u64
  • Auth timestamp window widened from 45 seconds to 3 minutes
  • New pub mod events added (additive)

pubky-sdk (pubky)

  • pub use pkarr::DEFAULT_RELAYS removed — must now use pubky::pkarr::DEFAULT_RELAYS
  • DEFAULT_HTTP_RELAY deprecated (/link/inbox) — replaced by DEFAULT_HTTP_RELAY_INBOX
  • HttpRelayLinkChannel / EncryptedHttpRelayLinkChannel deprecated. Replaced by *InboxChannel variants
  • Auth flows default to /inbox endpoint
  • reqwest 0.120.13
  • New event streaming API added: Event, EventCursor, EventStreamBuilder, EventType (additive)

pubky-homeserver

  • axum-server 0.70.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-postgres feature flag with EphemeralTestnetBuilder::with_embedded_postgres() (additive)

pubky-wasm (JS bindings)

  • wasm-bindgen 0.2.1000.2.108 and wasm-streams 0.40.5
  • Auth relay default changed from /link to /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 pkarr by @ok300 in #297
  • chore: Group dependabot PRs by @ok300 in #305
  • fix: Fix crate naming issue preventing dependabot runs by @ok300 in #304
  • feat: Add feature for embedded Postgres by @86667 in #308
  • chore: Bump pkarr, mainline, pkarr-relay by @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_tokens route 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