+18
CHANGELOG.md
+18
CHANGELOG.md
···
7
8
## [Unreleased]
9
10
## [0.12.0] - 2025-09-17
11
### Added
12
- Unified `Auth` enum for authentication methods in `atproto-client` supporting None, DPoP, and AppPassword authentication
···
165
- Core DID document handling
166
- Cryptographic key operations for P-256 curves
167
168
[0.11.3]: https://tangled.sh/@smokesignal.events/atproto-identity-rs/tree/v0.11.3
169
[0.11.2]: https://tangled.sh/@smokesignal.events/atproto-identity-rs/tree/v0.11.2
170
[0.11.1]: https://tangled.sh/@smokesignal.events/atproto-identity-rs/tree/v0.11.1
···
7
8
## [Unreleased]
9
10
+
## [0.13.0] - 2025-09-21
11
+
### Added
12
+
- New `atproto-lexicon` crate for AT Protocol lexicon resolution and validation
13
+
- `atproto-lexicon-resolve` CLI tool for resolving lexicons via DNS and XRPC
14
+
- Comprehensive lexicon reference extraction and recursive resolution capabilities
15
+
- Full support for NSID validation and DNS-based lexicon discovery
16
+
17
+
### Changed
18
+
- Updated Rust minimum version requirement to 1.90
19
+
- Enhanced error management across atproto-lexicon crate
20
+
- Improved project documentation with atproto-lexicon integration
21
+
22
+
### Improved
23
+
- Code formatting and linting across all crates
24
+
- Updated README documentation to include atproto-lexicon references
25
+
26
## [0.12.0] - 2025-09-17
27
### Added
28
- Unified `Auth` enum for authentication methods in `atproto-client` supporting None, DPoP, and AppPassword authentication
···
181
- Core DID document handling
182
- Cryptographic key operations for P-256 curves
183
184
+
[0.13.0]: https://tangled.sh/@smokesignal.events/atproto-identity-rs/tree/v0.13.0
185
+
[0.12.0]: https://tangled.sh/@smokesignal.events/atproto-identity-rs/tree/v0.12.0
186
[0.11.3]: https://tangled.sh/@smokesignal.events/atproto-identity-rs/tree/v0.11.3
187
[0.11.2]: https://tangled.sh/@smokesignal.events/atproto-identity-rs/tree/v0.11.2
188
[0.11.1]: https://tangled.sh/@smokesignal.events/atproto-identity-rs/tree/v0.11.1
+10
-10
Cargo.lock
+10
-10
Cargo.lock
···
107
108
[[package]]
109
name = "atproto-client"
110
-
version = "0.12.0"
111
dependencies = [
112
"anyhow",
113
"atproto-identity",
···
130
131
[[package]]
132
name = "atproto-identity"
133
-
version = "0.12.0"
134
dependencies = [
135
"anyhow",
136
"async-trait",
···
157
158
[[package]]
159
name = "atproto-jetstream"
160
-
version = "0.12.0"
161
dependencies = [
162
"anyhow",
163
"async-trait",
···
179
180
[[package]]
181
name = "atproto-lexicon"
182
-
version = "0.12.0"
183
dependencies = [
184
"anyhow",
185
"async-trait",
···
198
199
[[package]]
200
name = "atproto-oauth"
201
-
version = "0.12.0"
202
dependencies = [
203
"anyhow",
204
"async-trait",
···
230
231
[[package]]
232
name = "atproto-oauth-aip"
233
-
version = "0.12.0"
234
dependencies = [
235
"anyhow",
236
"atproto-identity",
···
245
246
[[package]]
247
name = "atproto-oauth-axum"
248
-
version = "0.12.0"
249
dependencies = [
250
"anyhow",
251
"async-trait",
···
274
275
[[package]]
276
name = "atproto-record"
277
-
version = "0.12.0"
278
dependencies = [
279
"anyhow",
280
"atproto-identity",
···
290
291
[[package]]
292
name = "atproto-xrpcs"
293
-
version = "0.12.0"
294
dependencies = [
295
"anyhow",
296
"async-trait",
···
316
317
[[package]]
318
name = "atproto-xrpcs-helloworld"
319
-
version = "0.12.0"
320
dependencies = [
321
"anyhow",
322
"async-trait",
···
107
108
[[package]]
109
name = "atproto-client"
110
+
version = "0.13.0"
111
dependencies = [
112
"anyhow",
113
"atproto-identity",
···
130
131
[[package]]
132
name = "atproto-identity"
133
+
version = "0.13.0"
134
dependencies = [
135
"anyhow",
136
"async-trait",
···
157
158
[[package]]
159
name = "atproto-jetstream"
160
+
version = "0.13.0"
161
dependencies = [
162
"anyhow",
163
"async-trait",
···
179
180
[[package]]
181
name = "atproto-lexicon"
182
+
version = "0.13.0"
183
dependencies = [
184
"anyhow",
185
"async-trait",
···
198
199
[[package]]
200
name = "atproto-oauth"
201
+
version = "0.13.0"
202
dependencies = [
203
"anyhow",
204
"async-trait",
···
230
231
[[package]]
232
name = "atproto-oauth-aip"
233
+
version = "0.13.0"
234
dependencies = [
235
"anyhow",
236
"atproto-identity",
···
245
246
[[package]]
247
name = "atproto-oauth-axum"
248
+
version = "0.13.0"
249
dependencies = [
250
"anyhow",
251
"async-trait",
···
274
275
[[package]]
276
name = "atproto-record"
277
+
version = "0.13.0"
278
dependencies = [
279
"anyhow",
280
"atproto-identity",
···
290
291
[[package]]
292
name = "atproto-xrpcs"
293
+
version = "0.13.0"
294
dependencies = [
295
"anyhow",
296
"async-trait",
···
316
317
[[package]]
318
name = "atproto-xrpcs-helloworld"
319
+
version = "0.13.0"
320
dependencies = [
321
"anyhow",
322
"async-trait",
+8
-8
Cargo.toml
+8
-8
Cargo.toml
···
23
categories = ["command-line-utilities", "web-programming"]
24
25
[workspace.dependencies]
26
-
atproto-client = { version = "0.12.0", path = "crates/atproto-client" }
27
-
atproto-identity = { version = "0.12.0", path = "crates/atproto-identity" }
28
-
atproto-oauth = { version = "0.12.0", path = "crates/atproto-oauth" }
29
-
atproto-oauth-axum = { version = "0.12.0", path = "crates/atproto-oauth-axum" }
30
-
atproto-oauth-aip = { version = "0.12.0", path = "crates/atproto-oauth-aip" }
31
-
atproto-record = { version = "0.12.0", path = "crates/atproto-record" }
32
-
atproto-xrpcs = { version = "0.12.0", path = "crates/atproto-xrpcs" }
33
-
atproto-jetstream = { version = "0.12.0", path = "crates/atproto-jetstream" }
34
35
anyhow = "1.0"
36
async-trait = "0.1.88"
···
23
categories = ["command-line-utilities", "web-programming"]
24
25
[workspace.dependencies]
26
+
atproto-client = { version = "0.13.0", path = "crates/atproto-client" }
27
+
atproto-identity = { version = "0.13.0", path = "crates/atproto-identity" }
28
+
atproto-oauth = { version = "0.13.0", path = "crates/atproto-oauth" }
29
+
atproto-oauth-axum = { version = "0.13.0", path = "crates/atproto-oauth-axum" }
30
+
atproto-oauth-aip = { version = "0.13.0", path = "crates/atproto-oauth-aip" }
31
+
atproto-record = { version = "0.13.0", path = "crates/atproto-record" }
32
+
atproto-xrpcs = { version = "0.13.0", path = "crates/atproto-xrpcs" }
33
+
atproto-jetstream = { version = "0.13.0", path = "crates/atproto-jetstream" }
34
35
anyhow = "1.0"
36
async-trait = "0.1.88"
+1
-1
Dockerfile
+1
-1
Dockerfile
···
69
LABEL org.opencontainers.image.description="AT Protocol identity management tools"
70
LABEL org.opencontainers.image.authors="Nick Gerakines <nick.gerakines@gmail.com>"
71
LABEL org.opencontainers.image.source="https://tangled.sh/@smokesignal.events/atproto-identity-rs"
72
-
LABEL org.opencontainers.image.version="0.12.0"
73
LABEL org.opencontainers.image.licenses="MIT"
74
75
# Document available binaries
···
69
LABEL org.opencontainers.image.description="AT Protocol identity management tools"
70
LABEL org.opencontainers.image.authors="Nick Gerakines <nick.gerakines@gmail.com>"
71
LABEL org.opencontainers.image.source="https://tangled.sh/@smokesignal.events/atproto-identity-rs"
72
+
LABEL org.opencontainers.image.version="0.13.0"
73
LABEL org.opencontainers.image.licenses="MIT"
74
75
# Document available binaries
+6
-6
README.md
+6
-6
README.md
+1
-1
crates/atproto-client/Cargo.toml
+1
-1
crates/atproto-client/Cargo.toml
+1
-1
crates/atproto-identity/Cargo.toml
+1
-1
crates/atproto-identity/Cargo.toml
+1
-1
crates/atproto-jetstream/Cargo.toml
+1
-1
crates/atproto-jetstream/Cargo.toml
+1
-1
crates/atproto-lexicon/Cargo.toml
+1
-1
crates/atproto-lexicon/Cargo.toml
+1
-1
crates/atproto-lexicon/README.md
+1
-1
crates/atproto-lexicon/README.md
+1
-1
crates/atproto-oauth-aip/Cargo.toml
+1
-1
crates/atproto-oauth-aip/Cargo.toml
+1
-1
crates/atproto-oauth-axum/Cargo.toml
+1
-1
crates/atproto-oauth-axum/Cargo.toml
+1
-1
crates/atproto-oauth/Cargo.toml
+1
-1
crates/atproto-oauth/Cargo.toml
+1
-1
crates/atproto-record/Cargo.toml
+1
-1
crates/atproto-record/Cargo.toml
+1
-1
crates/atproto-xrpcs-helloworld/Cargo.toml
+1
-1
crates/atproto-xrpcs-helloworld/Cargo.toml
+1
-1
crates/atproto-xrpcs/Cargo.toml
+1
-1
crates/atproto-xrpcs/Cargo.toml