Skip to content

v0.42.0

Latest

Choose a tag to compare

@nnabeyang nnabeyang released this 14 Jul 23:08
0.42.0
79f0b08

What's Changed

New Features

  • Lexicon permission sets: Align permission metadata with the AT Protocol specification and generate Swift declarations for permission-set definitions. (#104, #105)
  • OAuth scope model: Add first-class parsing and canonical serialization for rpc:, repo:, include:, and blob: scopes, including permission-set expansion and MIME type matching. (#106, #112)
  • OAuth-aware clients: Add optional OAuth session inspection and client-side scope enforcement for XRPC calls and repository writes, including proxied service audiences and expanded include: scopes. (#107, #108, #110, #111)

Improvements

  • Datetime round trips: Preserve consistent millisecond canonicalization for parsed and constructed dates, including sub-millisecond rounding and the upper year boundary. (#113)
  • NSID-driven code generation: Derive generated namespaces and installed lexicon locations from declared NSIDs, allowing vendored lexicons to work independently of their source directory layout. (#114)
  • Collision-safe generated types: Qualify Swift primitive types, preserve record names that also act as namespace prefixes, and emit valid case names for numeric-leading string enum values. (#115, #116, #117)
  • Swift concurrency: Make closed generated string enums Sendable so models containing them can move safely across tasks and actor boundaries. (#118)