Repository: netwo-io/apistos
Pull request #104 (2024-07-03 17:06:43)

Upgrade garde to 0.20. Upgrade shuttle-rs to 0.46


Patch:
diff --git a/.github/workflows/draft.yaml b/.github/workflows/draft.yaml
index 850e816..a4a1bd5 100644
--- a/.github/workflows/draft.yaml
+++ b/.github/workflows/draft.yaml
@@ -70,11 +70,12 @@ jobs:
       - name: Create release
         id: create_release
         if: ${{ steps.existing_release.outputs.is_new == 'true' }}
-        uses: softprops/action-gh-release@v2
+        uses: actions/create-release@v1
+        env:
+          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
         with:
-          body_path: ./draft-changes.md
           tag_name: ${{ matrix.crate }}-${{ steps.release_info.outputs.version }}
-          name: ${{ matrix.crate }}-${{ steps.release_info.outputs.version }}
-          token: ${{ secrets.GITHUB_TOKEN }}
+          release_name: ${{ matrix.crate }}-${{ steps.release_info.outputs.version }}
+          body_path: ./draft-changes.md
           draft: true
           prerelease: ${{ steps.release_info.outputs.is_prerelease }}
diff --git a/Cargo.toml b/Cargo.toml
index 1f5abd8..0cbc892 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -22,7 +22,7 @@ documentation = "https://docs.rs/apistos/"
 license = "MIT OR Apache-2.0"
 rust-version = "1.75"
 publish = true
-version = "0.2.6"
+version = "0.3.0"
 
 [workspace.dependencies]
 actix-service = "2"
@@ -48,12 +48,12 @@ serde_json = "1"
 syn = "2.0"
 
 actix-multipart = "0.6"
-garde-actix-web = "0.7"
+garde-actix-web = "0.9"
 chrono = "0.4.20"
-garde = { version = "0.18", features = ["derive", "serde"] }
+garde = { version = "0.20", features = ["derive", "serde"] }
 rust_decimal = "1"
 serde_qs = "0.13"
-shuttle-runtime = { version = "0.44", default-features = false }
+shuttle-runtime = { version = "0.46", default-features = false }
 uuid = { version = "1", features = ["serde", "v4"] }
 url = "2"
 
diff --git a/README.md b/README.md
index 0095aec..4290379 100644
--- a/README.md
+++ b/README.md
@@ -62,7 +62,7 @@ carpenters, craftsmen, metallurgy ... which can also be considered by some as th
 #schemars = "0.8"
 # sadly we currently rely on a fork to fix multiple flatten for enums, related PR can be found here: https://github.com/GREsau/schemars/pull/264
 schemars = { package = "apistos-schemars", version = "0.8" }
-apistos = "0.2"
+apistos = "0.3"
 ```
 
 ### Usage example
diff --git a/apistos-core/Cargo.toml b/apistos-core/Cargo.toml
index b20b17c..f8a4d73 100644
--- a/apistos-core/Cargo.toml
+++ b/apistos-core/Cargo.toml
@@ -28,7 +28,7 @@ serde_qs = { workspace = true, features = ["actix4"], optional = true }
 uuid = { workspace = true, optional = true }
 url = { workspace = true, optional = true }
 
-apistos-models = { path = "../apistos-models", version = "0.2.6", features = ["deserialize"] }
+apistos-models = { path = "../apistos-models", version = "0.3.0", features = ["deserialize"] }
 
 [dev-dependencies]
 assert-json-diff = { workspace = true }
diff --git a/apistos-models/README.md b/apistos-models/README.md
index 440a198..d313d5a 100644
--- a/apistos-models/README.md
+++ b/apistos-models/README.md
@@ -30,7 +30,7 @@ These models are not linked to any web framework.
 #schemars = "0.8"
 # sadly we currently rely on a fork to fix multiple flatten for enums, related PR can be found here: https://github.com/GREsau/schemars/pull/264
 schemars = { package = "apistos-schemars", version = "0.8" }
-apistos-models = "0.2"
+apistos-models = "0.3"
 ```
 
 ### About us
diff --git a/apistos-rapidoc/Cargo.toml b/apistos-rapidoc/Cargo.toml
index 0cbe86f..f8b2dd9 100644
--- a/apistos-rapidoc/Cargo.toml
+++ b/apistos-rapidoc/Cargo.toml
@@ -14,7 +14,7 @@ rust-version.workspace = true
 license.workspace = true
 
 [dependencies]
-apistos-plugins = { path = "../apistos-plugins", version = "0.2.6" }
+apistos-plugins = { path = "../apistos-plugins", version = "0.3.0" }
 
 [lints]
 workspace = true
diff --git a/apistos-rapidoc/README.md b/apistos-rapidoc/README.md
index 6265967..f8210b0 100644
--- a/apistos-rapidoc/README.md
+++ b/apistos-rapidoc/README.md
@@ -27,7 +27,7 @@ This crate is exposed through Apistos `rapidoc` feature.
 #schemars = "0.8"
 # sadly we currently rely on a fork to fix multiple flatten for enums, related PR can be found here: https://github.com/GREsau/schemars/pull/264
 schemars = { package = "apistos-schemars", version = "0.8" }
-apistos = { version = "0.2", feature = ["rapidoc"] }
+apistos = { version = "0.3", feature = ["rapidoc"] }
 ```
 
 ### About us
diff --git a/apistos-redoc/Cargo.toml b/apistos-redoc/Cargo.toml
index a7f61e2..917b114 100644
--- a/apistos-redoc/Cargo.toml
+++ b/apistos-redoc/Cargo.toml
@@ -14,7 +14,7 @@ rust-version.workspace = true
 license.workspace = true
 
 [dependencies]
-apistos-plugins = { path = "../apistos-plugins", version = "0.2.6" }
+apistos-plugins = { path = "../apistos-plugins", version = "0.3.0" }
 
 [lints]
 workspace = true
diff --git a/apistos-redoc/README.md b/apistos-redoc/README.md
index d3ad047..1954a82 100644
--- a/apistos-redoc/README.md
+++ b/apistos-redoc/README.md
@@ -27,7 +27,7 @@ This crate is exposed through Apistos `redoc` feature.
 #schemars = "0.8"
 # sadly we currently rely on a fork to fix multiple flatten for enums, related PR can be found here: https://github.com/GREsau/schemars/pull/264
 schemars = { package = "apistos-schemars", version = "0.8" }
-apistos = { version = "0.2", feature = ["redoc"] }
+apistos = { version = "0.3", feature = ["redoc"] }
 ```
 
 ### About us
diff --git a/apistos-scalar/Cargo.toml b/apistos-scalar/Cargo.toml
index f6144e0..1941c88 100644
--- a/apistos-scalar/Cargo.toml
+++ b/apistos-scalar/Cargo.toml
@@ -14,7 +14,7 @@ rust-version.workspace = true
 license.workspace = true
 
 [dependencies]
-apistos-plugins = { path = "../apistos-plugins", version = "0.2.6" }
+apistos-plugins = { path = "../apistos-plugins", version = "0.3.0" }
 
 [lints]
 workspace = true
diff --git a/apistos-scalar/README.md b/apistos-scalar/README.md
index 9e29a77..e7fa906 100644
--- a/apistos-scalar/README.md
+++ b/apistos-scalar/README.md
@@ -27,7 +27,7 @@ This crate is exposed through Apistos `scalar` feature.
 #schemars = "0.8"
 # sadly we currently rely on a fork to fix multiple flatten for enums, related PR can be found here: https://github.com/GREsau/schemars/pull/264
 schemars = { package = "apistos-schemars", version = "0.8" }
-apistos = { version = "0.2", feature = ["scalar"] }
+apistos = { version = "0.3", feature = ["scalar"] }
 ```
 
 ### About us
diff --git a/apistos-shuttle/Cargo.toml b/apistos-shuttle/Cargo.toml
index 92c2c46..8fe8172 100644
--- a/apistos-shuttle/Cargo.toml
+++ b/apistos-shuttle/Cargo.toml
@@ -18,7 +18,7 @@ actix-web = { workspace = true }
 num_cpus = { workspace = true }
 shuttle-runtime = { workspace = true }
 
-apistos = { path = "../apistos", version = "0.2.6" }
+apistos = { path = "../apistos", version = "0.3.0" }
 
 [lints]
 workspace = true
diff --git a/apistos-shuttle/README.md b/apistos-shuttle/README.md
index bda18ff..65f7f01 100644
--- a/apistos-shuttle/README.md
+++ b/apistos-shuttle/README.md
@@ -25,8 +25,8 @@ This crate allows you to run an actix-web server documented with Apistos on [Shu
 #schemars = "0.8"
 # sadly we currently rely on a fork to fix multiple flatten for enums, related PR can be found here: https://github.com/GREsau/schemars/pull/264
 schemars = { package = "apistos-schemars", version = "0.8" }
-apistos = { version = "0.2" }
-apistos-shuttle = { version = "0.2" }
+apistos = { version = "0.3" }
+apistos-shuttle = { version = "0.3" }
 ```
 
 ### Example
diff --git a/apistos-swagger-ui/Cargo.toml b/apistos-swagger-ui/Cargo.toml
index a3bd832..b4b07a9 100644
--- a/apistos-swagger-ui/Cargo.toml
+++ b/apistos-swagger-ui/Cargo.toml
@@ -14,7 +14,7 @@ rust-version.workspace = true
 license.workspace = true
 
 [dependencies]
-apistos-plugins = { path = "../apistos-plugins", version = "0.2.6" }
+apistos-plugins = { path = "../apistos-plugins", version = "0.3.0" }
 
 [lints]
 workspace = true
diff --git a/apistos-swagger-ui/README.md b/apistos-swagger-ui/README.md
index f0be80a..3a4cb9b 100644
--- a/apistos-swagger-ui/README.md
+++ b/apistos-swagger-ui/README.md
@@ -27,7 +27,7 @@ This crate is exposed through Apistos `swagger-ui` feature.
 #schemars = "0.8"
 # sadly we currently rely on a fork to fix multiple flatten for enums, related PR can be found here: https://github.com/GREsau/schemars/pull/264
 schemars = { package = "apistos-schemars", version = "0.8" }
-apistos = { version = "0.2", feature = ["swagger-ui"] }
+apistos = { version = "0.3", feature = ["swagger-ui"] }
 ```
 
 ### About us
diff --git a/apistos/Cargo.toml b/apistos/Cargo.toml
index 794880d..fcb995e 100644
--- a/apistos/Cargo.toml
+++ b/apistos/Cargo.toml
@@ -25,25 +25,25 @@ schemars = { workspace = true }
 serde = { workspace = true }
 serde_json = { workspace = true }
 
-apistos-core = { path = "../apistos-core", version = "0.2.6" }
-apistos-gen = { path = "../apistos-gen", version = "0.2.6" }
-apistos-models = { path = "../apistos-models", version = "0.2.6" }
-apistos-plugins = { path = "../apistos-plugins", version = "0.2.6" }
-apistos-rapidoc = { path = "../apistos-rapidoc", version = "0.2.6", optional = true }
-apistos-redoc = { path = "../apistos-redoc", version = "0.2.6", optional = true }
-apistos-scalar = { path = "../apistos-scalar", version = "0.2.6", optional = true }
-apistos-swagger-ui = { path = "../apistos-swagger-ui", version = "0.2.6", optional = true }
+apistos-core = { path = "../apistos-core", version = "0.3.0" }
+apistos-gen = { path = "../apistos-gen", version = "0.3.0" }
+apistos-models = { path = "../apistos-models", version = "0.3.0" }
+apistos-plugins = { path = "../apistos-plugins", version = "0.3.0" }
+apistos-rapidoc = { path = "../apistos-rapidoc", version = "0.3.0", optional = true }
+apistos-redoc = { path = "../apistos-redoc", version = "0.3.0", optional = true }
+apistos-scalar = { path = "../apistos-scalar", version = "0.3.0", optional = true }
+apistos-swagger-ui = { path = "../apistos-swagger-ui", version = "0.3.0", optional = true }
 
 
 [dev-dependencies]
 actix-web-lab = { workspace = true }
 garde-actix-web = { workspace = true }
 
-apistos-models = { path = "../apistos-models", version = "0.2.6", features = ["deserialize"] }
-apistos-rapidoc = { path = "../apistos-rapidoc", version = "0.2.6" }
-apistos-redoc = { path = "../apistos-redoc", version = "0.2.6" }
-apistos-scalar = { path = "../apistos-scalar", version = "0.2.6" }
-apistos-swagger-ui = { path = "../apistos-swagger-ui", version = "0.2.6" }
+apistos-models = { path = "../apistos-models", version = "0.3.0", features = ["deserialize"] }
+apistos-rapidoc = { path = "../apistos-rapidoc", version = "0.3.0" }
+apistos-redoc = { path = "../apistos-redoc", version = "0.3.0" }
+apistos-scalar = { path = "../apistos-scalar", version = "0.3.0" }
+apistos-swagger-ui = { path = "../apistos-swagger-ui", version = "0.3.0" }
 
 [lints]
 workspace = true
diff --git a/apistos/src/lib.rs b/apistos/src/lib.rs
index 2d5fe2f..44d71bd 100644
--- a/apistos/src/lib.rs
+++ b/apistos/src/lib.rs
@@ -11,7 +11,7 @@
 //! #schemars = "0.8"
 //! # sadly we currently rely on a fork to fix multiple flatten for enums, related PR can be found here: https://github.com/GREsau/schemars/pull/264
 //! schemars = { package = "apistos-schemars", version = "0.8" }
-//! apistos = "0.2"
+//! apistos = "0.3"
 //! ```
 //!
 //! # Usage example


Test patch:
diff --git a/apistos-gen-test/Cargo.toml b/apistos-gen-test/Cargo.toml
index 1a0a81c..9b23b4b 100644
--- a/apistos-gen-test/Cargo.toml
+++ b/apistos-gen-test/Cargo.toml
@@ -20,8 +20,8 @@ assert-json-diff = { workspace = true }
 chrono = { workspace = true, features = ["serde"] }
 futures-core = { workspace = true }
 apistos = { path = "../apistos", features = ["multipart", "uuid"] }
-apistos-core = { path = "../apistos-core", version = "0.2.6" }
-apistos-gen = { path = "../apistos-gen", version = "0.2.6" }
+apistos-core = { path = "../apistos-core", version = "0.3.0" }
+apistos-gen = { path = "../apistos-gen", version = "0.3.0" }
 # we use the "preserve_order" feature from schemars here following https://github.com/netwo-io/apistos/pull/78
 schemars = { workspace = true, features = ["preserve_order"] }
 serde = { version = "1.0.188", features = ["derive"] }