A photo of a laptop screen showing a code editor with the contents of a CHANGELOG.md. Contents shown as follows: ### Added - `Atex.Crypto` module for performing AT Protocol-related cryptographic operations. - `Atex.PLC` module for interacting with a did:plc directory API. - `Atex.ServiceAuth` module for validating inter-service authentication tokens. - Various improvements to `Atex.Did.Document` - Add `Atex.DID.Document.Service` and `Atex.DID.Document.VerificationMethod` sub-structs. - Add `to_json/1` methods and `JSON.Encoder` protocols for easy conversion to camelCase JSON. - `Atex.XRPC.Router` module with `query/3` and `procedure/3` macros for easily building XRPC server routes inside a `Plug.Router`, with built-in service auth validation and validation if passed the name of a module using `deflexicon`. - `deflexicon` now emits `content_type/0` functions (on `Input` submodules for typed JSON bodies, otherwise on the root module) for procedures. - `Atex.XRPC.ServiceAuthClient` module for making requests to other atproto services using a service auth token. ### Fixed - Fix a problem where generated `%<LexiconId>.Params` structs could not be passed to an XRPC call due to not having the Enumerable protocol implemented. - Correctly generate `Input`/`Output` submodules with `from_json` methods for queries and procedures that use `ref` or `union` types.
atex v0.8 is shaping up to be a chonky one 👀
#Elixir #atproto #ATmosphereConf