A better Rust ATProto crate

release housekeeping

Orual 1f323bae f8c298af

Changed files
+48 -18
crates
jacquard
jacquard-api
jacquard-axum
jacquard-derive
jacquard-identity
jacquard-lexicon
jacquard-oauth
nix
modules
+1 -1
README.md
··· 102 102 Highlights: 103 103 104 104 - A ton of new lexicons included in `jacquard-api` 105 - - `jacquard-axum` Axum extractor and a number of improvements to lifetimes and (de)serialization required to make that work (thanks [@thoth.ptnote.dev] for helping provide feedback and sample code to test against) 105 + - `jacquard-axum` Axum extractor and a number of improvements to lifetimes and (de)serialization required to make that work (thanks [@thoth.ptnote.dev](https://tangled.org/@thoth.ptnote.dev) for helping provide feedback and sample code to test against) 106 106 - `from_data`, `from_raw_data`, `to_data`, and `to_raw_data` to serialize to and deserialize from the loosely typed value data formats (think `serde_json::from_value` and company). Particularly useful for second-stage deserialization of type "unknown" fields in lexicons, such as `PostView.record`. 107 107 - better API code generation 108 108
+2 -2
crates/jacquard-api/Cargo.toml
··· 17 17 [dependencies] 18 18 bon.workspace = true 19 19 bytes = { workspace = true, features = ["serde"] } 20 - jacquard-common = { version = "*", path = "../jacquard-common" } 21 - jacquard-derive = { version = "*", path = "../jacquard-derive" } 20 + jacquard-common = { version = "0.4", path = "../jacquard-common" } 21 + jacquard-derive = { version = "0.4", path = "../jacquard-derive" } 22 22 miette.workspace = true 23 23 serde.workspace = true 24 24 thiserror.workspace = true
+2 -2
crates/jacquard-axum/Cargo.toml
··· 24 24 axum = "0.8.6" 25 25 axum-macros = "0.5.0" 26 26 bytes.workspace = true 27 - jacquard = { version = "*", path = "../jacquard" } 28 - jacquard-common = { version = "*", path = "../jacquard-common", features = ["reqwest-client"] } 27 + jacquard = { version = "0.4", path = "../jacquard" } 28 + jacquard-common = { version = "0.4", path = "../jacquard-common", features = ["reqwest-client"] } 29 29 miette.workspace = true 30 30 serde.workspace = true 31 31 serde_html_form.workspace = true
+1 -1
crates/jacquard-derive/Cargo.toml
··· 28 28 29 29 30 30 [dev-dependencies] 31 - jacquard-common = { version = "*", path = "../jacquard-common" } 31 + jacquard-common = { version = "0.4", path = "../jacquard-common" }
+2 -2
crates/jacquard-identity/Cargo.toml
··· 19 19 async-trait.workspace = true 20 20 bon.workspace = true 21 21 bytes.workspace = true 22 - jacquard-common = { version = "*", path = "../jacquard-common", features = ["reqwest-client"] } 23 - jacquard-api = { version = "*", path = "../jacquard-api" } 22 + jacquard-common = { version = "0.4", path = "../jacquard-common", features = ["reqwest-client"] } 23 + jacquard-api = { version = "0.4", path = "../jacquard-api" } 24 24 percent-encoding.workspace = true 25 25 reqwest.workspace = true 26 26 url.workspace = true
+3 -3
crates/jacquard-lexicon/Cargo.toml
··· 25 25 glob = "0.3" 26 26 heck.workspace = true 27 27 itertools.workspace = true 28 - jacquard-api = { version = "*", path = "../jacquard-api" } 29 - jacquard-common = { version = "*", path = "../jacquard-common" } 30 - jacquard-identity = { version = "*", path = "../jacquard-identity" } 28 + jacquard-api = { version = "0.4", path = "../jacquard-api" } 29 + jacquard-common = { version = "0.4", path = "../jacquard-common" } 30 + jacquard-identity = { version = "0.4", path = "../jacquard-identity" } 31 31 kdl = "6" 32 32 miette = { workspace = true, features = ["fancy"] } 33 33 prettyplease.workspace = true
+2 -2
crates/jacquard-oauth/Cargo.toml
··· 12 12 license.workspace = true 13 13 14 14 [dependencies] 15 - jacquard-common = { version = "*", path = "../jacquard-common", features = ["reqwest-client"] } 16 - jacquard-identity = { version = "*", path = "../jacquard-identity" } 15 + jacquard-common = { version = "0.4", path = "../jacquard-common", features = ["reqwest-client"] } 16 + jacquard-identity = { version = "0.4", path = "../jacquard-identity" } 17 17 serde = { workspace = true, features = ["derive"] } 18 18 serde_json = { workspace = true } 19 19 url = { workspace = true }
+5 -5
crates/jacquard/Cargo.toml
··· 33 33 34 34 35 35 [dependencies] 36 - jacquard-api = { version = "*", path = "../jacquard-api" } 37 - jacquard-common = { version = "*", path = "../jacquard-common", features = ["reqwest-client"] } 38 - jacquard-oauth = { version = "*", path = "../jacquard-oauth" } 39 - jacquard-derive = { version = "*", path = "../jacquard-derive", optional = true } 40 - jacquard-identity = { version = "*", path = "../jacquard-identity" } 36 + jacquard-api = { version = "0.4", path = "../jacquard-api" } 37 + jacquard-common = { version = "0.4", path = "../jacquard-common", features = ["reqwest-client"] } 38 + jacquard-oauth = { version = "0.4", path = "../jacquard-oauth" } 39 + jacquard-derive = { version = "0.4", path = "../jacquard-derive", optional = true } 40 + jacquard-identity = { version = "0.4", path = "../jacquard-identity" } 41 41 42 42 bon.workspace = true 43 43 async-trait.workspace = true
+30
nix/modules/rust.nix
··· 91 91 }; 92 92 }; 93 93 }; 94 + "jacquard-identity" = { 95 + imports = [globalCrateConfig]; 96 + autoWire = ["crate" "clippy"]; 97 + path = ./../../crates/jacquard-identity; 98 + crane = { 99 + args = { 100 + buildInputs = commonBuildInputs; 101 + }; 102 + }; 103 + }; 104 + "jacquard-oauth" = { 105 + imports = [globalCrateConfig]; 106 + autoWire = ["crate" "clippy"]; 107 + path = ./../../crates/jacquard-oauth; 108 + crane = { 109 + args = { 110 + buildInputs = commonBuildInputs; 111 + }; 112 + }; 113 + }; 114 + "jacquard-axum" = { 115 + imports = [globalCrateConfig]; 116 + autoWire = ["crate" "clippy"]; 117 + path = ./../../crates/jacquard-axum; 118 + crane = { 119 + args = { 120 + buildInputs = commonBuildInputs; 121 + }; 122 + }; 123 + }; 94 124 }; 95 125 }; 96 126 packages.default = self'.packages.jacquard;