Repository: oxidecomputer/typify
Pull request #786 (2025-03-03 13:59:23)

Bump schemars from 0.8.21 to 0.8.22
Bumps [schemars](https://github.com/GREsau/schemars) from 0.8.21 to 0.8.22.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/GREsau/schemars/releases">schemars's releases</a>.</em></p>
<blockquote>
<h2>v0.8.22</h2>
<h3>Fixed:</h3>
<ul>
<li>Fix compatibility with rust 2024 edition (<a href="https://redirect.github.com/GREsau/schemars/pull/378">GREsau/schemars#378</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/GREsau/schemars/blob/master/CHANGELOG.md">schemars's changelog</a>.</em></p>
<blockquote>
<h2>[0.8.22] - 2025-02-25</h2>
<h3>Fixed:</h3>
<ul>
<li>Fix compatibility with rust 2024 edition (<a href="https://redirect.github.com/GREsau/schemars/pull/378">GREsau/schemars#378</a>)</li>
</ul>
<h2>[1.0.0-alpha.17] - 2024-12-02</h2>
<h3>Changed</h3>
<ul>
<li>For newtype variants of internally-tagged enums, prefer referencing the inner type's schema via <code>$ref</code> instead of always inlining the schema (<a href="https://redirect.github.com/GREsau/schemars/pull/355">GREsau/schemars#355</a>) <em>(this change was included in the release notes for 1.0.0-alpha.16, but was accidentally excluded from the published crate)</em></li>
</ul>
<h2>[1.0.0-alpha.16] - 2024-11-25</h2>
<h3>Removed (<em>⚠️ breaking changes ⚠️</em>)</h3>
<ul>
<li>the <code>enumset1</code>/<code>enumset</code> optional dependency has been removed, as its <code>JsonSchema</code> impl did not actually match the default serialization format of <code>EnumSet</code> (<a href="https://redirect.github.com/GREsau/schemars/pull/339">GREsau/schemars#339</a>)</li>
</ul>
<h3>Changed (<em>⚠️ breaking changes ⚠️</em>)</h3>
<ul>
<li>MSRV is now 1.70</li>
<li><a href="https://graham.cool/schemars/deriving/attributes/#example">The <code>example</code> attribute</a> value is now an arbitrary expression, rather than a string literal identifying a function to call. To avoid silent behaviour changes, the expression must not be a string literal where the value can be parsed as a function path - e.g. <code>#[schemars(example = &quot;foo&quot;)]</code> is now a compile error, but <code>#[schemars(example = foo())]</code> is allowed (as is <code>#[schemars(example = &amp;&quot;foo&quot;)]</code> if you want the the literal string value <code>&quot;foo&quot;</code> to be the example).</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>The &quot;deserialize&quot; schema for <code>bytes::Bytes</code>/<code>BytesMut</code> now allows strings, matching the actual deserialize behaviour of the types.</li>
<li>The schema for <code>either::Either</code> now matches the actual serialize/deserialize behaviour of that type.</li>
</ul>
<h2>[1.0.0-alpha.15] - 2024-09-05</h2>
<h3>Added</h3>
<ul>
<li><code>SchemaSettings</code> now has a <code>contract</code> field which determines whether the generated schemas describe how types are serialized or <em>de</em>serialized. By default, this is set to <code>Deserialize</code>, as this more closely matches the behaviour of previous versions - you can change this to <code>Serialize</code> to instead generate schemas describing the type's serialization behaviour (<a href="https://redirect.github.com/GREsau/schemars/issues/48">GREsau/schemars#48</a> / <a href="https://redirect.github.com/GREsau/schemars/pull/335">GREsau/schemars#335</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Schemas generated for enums with no variants will now generate <code>false</code> (or equivalently <code>{&quot;not&quot;:{}}</code>), instead of <code>{&quot;enum&quot;:[]}</code>. This is so generated schemas no longer violate the JSON Schema spec's recommendation that a schema's <code>enum</code> array &quot;SHOULD have at least one element&quot;.</li>
</ul>
<h2>[1.0.0-alpha.14] - 2024-08-29</h2>
<h3>Added</h3>
<ul>
<li>Read <code>#[garde(...)]</code> attributes as an alternative to <code>#[validate(...)]</code> (<a href="https://redirect.github.com/GREsau/schemars/issues/233">GREsau/schemars#233</a> / <a href="https://redirect.github.com/GREsau/schemars/pull/331">GREsau/schemars#331</a>). See <a href="https://graham.cool/schemars/deriving/attributes/#supported-validatorgarde-attributes">the documentation</a> for a full list of supported attributes.</li>
</ul>
<h2>[1.0.0-alpha.13] - 2024-08-27</h2>
<h3>Fixed</h3>
<ul>
<li>Fix compile errors when using <code>#[validate(regex(path = *expr))]</code> attribute</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/GREsau/schemars/commit/104b0fd65055d4b46f8dcbe38cdd2ef2c4098fe2"><code>104b0fd</code></a> v0.8.22</li>
<li><a href="https://github.com/GREsau/schemars/commit/5867cedc54c0ebb3fc78091059080232d3facdeb"><code>5867ced</code></a> Fix compatibility with rust 2024 edition (<a href="https://redirect.github.com/GREsau/schemars/issues/378">#378</a>)</li>
<li><a href="https://github.com/GREsau/schemars/commit/e0c2c31dc9a86f813defe4621c403d5b9e4244de"><code>e0c2c31</code></a> Update changelog for 1.0.0-alpha.2</li>
<li><a href="https://github.com/GREsau/schemars/commit/3271fbd96a65c0d15e1cc5d5391810842cae0c28"><code>3271fbd</code></a> Update changelog for 1.0.0-alpha.1</li>
<li><a href="https://github.com/GREsau/schemars/commit/a20c197b999cd014a8658b2dbbda31c2b41d48bb"><code>a20c197</code></a> Update readme - link to v1 branch/PR</li>
<li>See full diff in <a href="https://github.com/GREsau/schemars/compare/v0.8.21...v0.8.22">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=schemars&package-manager=cargo&previous-version=0.8.21&new-version=0.8.22)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>


Patch:
diff --git a/Cargo.lock b/Cargo.lock
index cfb0854..523c7e4 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -872,9 +872,9 @@ dependencies = [
 
 [[package]]
 name = "schemars"
-version = "0.8.21"
+version = "0.8.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92"
+checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615"
 dependencies = [
  "dyn-clone",
  "schemars_derive",
@@ -885,9 +885,9 @@ dependencies = [
 
 [[package]]
 name = "schemars_derive"
-version = "0.8.21"
+version = "0.8.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e"
+checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d"
 dependencies = [
  "proc-macro2",
  "quote",
diff --git a/cargo-typify/Cargo.toml b/cargo-typify/Cargo.toml
index 517e6ce..77f5bd8 100644
--- a/cargo-typify/Cargo.toml
+++ b/cargo-typify/Cargo.toml
@@ -20,7 +20,7 @@ env_logger = "0.11"
 rustfmt-wrapper = "0.2.1"
 semver = "1.0.25"
 serde_json = "1.0.138"
-schemars = "0.8.21"
+schemars = "0.8.22"
 
 [dev-dependencies]
 assert_cmd = "2.0.16"
diff --git a/typify-impl/Cargo.toml b/typify-impl/Cargo.toml
index cd0c37d..cd47d81 100644
--- a/typify-impl/Cargo.toml
+++ b/typify-impl/Cargo.toml
@@ -13,7 +13,7 @@ log = "0.4.26"
 proc-macro2 = "1.0.94"
 quote = "1.0.38"
 regress = "0.10.3"
-schemars = "0.8.21"
+schemars = "0.8.22"
 semver = "1.0.25"
 serde = "1.0.218"
 serde_json = "1.0.138"
@@ -28,6 +28,6 @@ expectorate = "1.1.0"
 paste = "1.0.15"
 rustfmt-wrapper = "0.2.1"
 schema = "0.1.0"
-schemars = { version = "0.8.21", features = ["uuid1", "impl_json_schema"] }
+schemars = { version = "0.8.22", features = ["uuid1", "impl_json_schema"] }
 syn = { version = "2.0.99", features = ["full", "extra-traits", "visit-mut"] }
 uuid = "1.14.0"
diff --git a/typify-macro/Cargo.toml b/typify-macro/Cargo.toml
index e2e88a2..e4f67f8 100644
--- a/typify-macro/Cargo.toml
+++ b/typify-macro/Cargo.toml
@@ -13,7 +13,7 @@ proc-macro = true
 [dependencies]
 proc-macro2 = "1.0.94"
 quote = "1.0.38"
-schemars = "0.8.21"
+schemars = "0.8.22"
 semver = { version = "1.0.25", features = ["serde"] }
 serde = "1.0.218"
 serde_json = "1.0.138"
diff --git a/typify/Cargo.toml b/typify/Cargo.toml
index 283dc16..ea7248e 100644
--- a/typify/Cargo.toml
+++ b/typify/Cargo.toml
@@ -25,7 +25,7 @@ glob = "0.3.2"
 quote = "1.0.38"
 regress = "0.10.3"
 rustfmt-wrapper = "0.2.1"
-schemars = "0.8.21"
+schemars = "0.8.22"
 serde = "1.0.218"
 serde_json = "1.0.138"
 trybuild = "1.0.103"


Test patch:
diff --git a/typify-test/Cargo.toml b/typify-test/Cargo.toml
index 9b08d91..f8e438a 100644
--- a/typify-test/Cargo.toml
+++ b/typify-test/Cargo.toml
@@ -11,7 +11,7 @@ serde_json = "1.0.138"
 [build-dependencies]
 ipnetwork = { version = "0.21.1", features = ["schemars"] }
 prettyplease = "0.2.29"
-schemars = "0.8.21"
+schemars = "0.8.22"
 serde = "1.0.218"
 syn = "2.0.99"
 typify = { path = "../typify" }