Skip to content

Commit dda7367

Browse files
committed
Bump to v3.5.0
1 parent cc06ba2 commit dda7367

File tree

8 files changed

+45
-29
lines changed

8 files changed

+45
-29
lines changed

Cargo.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ license = "MIT OR Apache-2.0"
1212
readme = "README.md"
1313
repository = "https://github.com/jonasbb/serde_with/"
1414
rust-version = "1.64"
15-
version = "3.4.0"
15+
version = "3.5.0"
1616

1717
[workspace.metadata.release]
1818
consolidate-commits = true

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -183,14 +183,14 @@ Foo::Bytes {
183183
}
184184
```
185185

186-
[`DisplayFromStr`]: https://docs.rs/serde_with/3.4.0/serde_with/struct.DisplayFromStr.html
187-
[`with_prefix!`]: https://docs.rs/serde_with/3.4.0/serde_with/macro.with_prefix.html
188-
[feature flags]: https://docs.rs/serde_with/3.4.0/serde_with/guide/feature_flags/index.html
189-
[skip_serializing_none]: https://docs.rs/serde_with/3.4.0/serde_with/attr.skip_serializing_none.html
190-
[StringWithSeparator]: https://docs.rs/serde_with/3.4.0/serde_with/struct.StringWithSeparator.html
191-
[user guide]: https://docs.rs/serde_with/3.4.0/serde_with/guide/index.html
186+
[`DisplayFromStr`]: https://docs.rs/serde_with/3.5.0/serde_with/struct.DisplayFromStr.html
187+
[`with_prefix!`]: https://docs.rs/serde_with/3.5.0/serde_with/macro.with_prefix.html
188+
[feature flags]: https://docs.rs/serde_with/3.5.0/serde_with/guide/feature_flags/index.html
189+
[skip_serializing_none]: https://docs.rs/serde_with/3.5.0/serde_with/attr.skip_serializing_none.html
190+
[StringWithSeparator]: https://docs.rs/serde_with/3.5.0/serde_with/struct.StringWithSeparator.html
191+
[user guide]: https://docs.rs/serde_with/3.5.0/serde_with/guide/index.html
192192
[with-annotation]: https://serde.rs/field-attrs.html#with
193-
[as-annotation]: https://docs.rs/serde_with/3.4.0/serde_with/guide/serde_as/index.html
193+
[as-annotation]: https://docs.rs/serde_with/3.5.0/serde_with/guide/serde_as/index.html
194194

195195
## License
196196

serde_with/CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
77

88
## [Unreleased]
99

10+
## [3.5.0] - 2024-01-20
11+
12+
### Added
13+
14+
* Support for `schemars` integration added by @swlynch99 (#666)
15+
The support uses a new `Schema` top-level item which implements `JsonSchema`
16+
The `serde_as` macro can now detect `schemars` usage and emits matching annotations for all fields with `serde_as` attribute.
17+
Many types of this crate come already with support for the `schemars`, but support is not complete and will be extended over time.
18+
1019
## [3.4.0] - 2023-10-17
1120

1221
* Lower minimum required serde version to 1.0.152 (#653)

serde_with/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ schemars_0_8 = {package = "schemars", version = "0.8.16", optional = true, defau
134134
# https://github.com/jonasbb/serde_with/blob/eb1965a74a3be073ecd13ec05f02a01bc1c44309/serde_with/src/flatten_maybe.rs#L67
135135
serde = {version = "1.0.152", default-features = false, features = ["derive"] }
136136
serde_json = {version = "1.0.45", optional = true, default-features = false}
137-
serde_with_macros = {path = "../serde_with_macros", version = "=3.4.0", optional = true}
137+
serde_with_macros = {path = "../serde_with_macros", version = "=3.5.0", optional = true}
138138
time_0_3 = {package = "time", version = "~0.3.11", optional = true, default-features = false}
139139

140140
[dev-dependencies]

serde_with/src/lib.rs

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
#![doc(test(attr(warn(rust_2018_idioms))))]
2727
// Not needed for 2018 edition and conflicts with `rust_2018_idioms`
2828
#![doc(test(no_crate_inject))]
29-
#![doc(html_root_url = "https://docs.rs/serde_with/3.4.0/")]
29+
#![doc(html_root_url = "https://docs.rs/serde_with/3.5.0/")]
3030
#![cfg_attr(docsrs, feature(doc_cfg))]
3131
#![allow(
3232
// clippy is broken and shows wrong warnings
@@ -281,14 +281,14 @@
281281
//! # }
282282
//! ```
283283
//!
284-
//! [`DisplayFromStr`]: https://docs.rs/serde_with/3.4.0/serde_with/struct.DisplayFromStr.html
285-
//! [`with_prefix!`]: https://docs.rs/serde_with/3.4.0/serde_with/macro.with_prefix.html
286-
//! [feature flags]: https://docs.rs/serde_with/3.4.0/serde_with/guide/feature_flags/index.html
287-
//! [skip_serializing_none]: https://docs.rs/serde_with/3.4.0/serde_with/attr.skip_serializing_none.html
288-
//! [StringWithSeparator]: https://docs.rs/serde_with/3.4.0/serde_with/struct.StringWithSeparator.html
289-
//! [user guide]: https://docs.rs/serde_with/3.4.0/serde_with/guide/index.html
284+
//! [`DisplayFromStr`]: https://docs.rs/serde_with/3.5.0/serde_with/struct.DisplayFromStr.html
285+
//! [`with_prefix!`]: https://docs.rs/serde_with/3.5.0/serde_with/macro.with_prefix.html
286+
//! [feature flags]: https://docs.rs/serde_with/3.5.0/serde_with/guide/feature_flags/index.html
287+
//! [skip_serializing_none]: https://docs.rs/serde_with/3.5.0/serde_with/attr.skip_serializing_none.html
288+
//! [StringWithSeparator]: https://docs.rs/serde_with/3.5.0/serde_with/struct.StringWithSeparator.html
289+
//! [user guide]: https://docs.rs/serde_with/3.5.0/serde_with/guide/index.html
290290
//! [with-annotation]: https://serde.rs/field-attrs.html#with
291-
//! [as-annotation]: https://docs.rs/serde_with/3.4.0/serde_with/guide/serde_as/index.html
291+
//! [as-annotation]: https://docs.rs/serde_with/3.5.0/serde_with/guide/serde_as/index.html
292292
293293
#[cfg(feature = "alloc")]
294294
extern crate alloc;
@@ -498,7 +498,7 @@ pub use serde_with_macros::*;
498498
/// # }
499499
/// ```
500500
///
501-
/// [serde_as]: https://docs.rs/serde_with/3.4.0/serde_with/attr.serde_as.html
501+
/// [serde_as]: https://docs.rs/serde_with/3.5.0/serde_with/attr.serde_as.html
502502
pub struct As<T: ?Sized>(PhantomData<T>);
503503

504504
/// Adapter to convert from `serde_as` to the serde traits.
@@ -930,7 +930,7 @@ pub struct BytesOrString;
930930
/// ```
931931
///
932932
/// [`chrono::Duration`]: ::chrono_0_4::Duration
933-
/// [feature flag]: https://docs.rs/serde_with/3.4.0/serde_with/guide/feature_flags/index.html
933+
/// [feature flag]: https://docs.rs/serde_with/3.5.0/serde_with/guide/feature_flags/index.html
934934
pub struct DurationSeconds<
935935
FORMAT: formats::Format = u64,
936936
STRICTNESS: formats::Strictness = formats::Strict,
@@ -1062,7 +1062,7 @@ pub struct DurationSeconds<
10621062
/// ```
10631063
///
10641064
/// [`chrono::Duration`]: ::chrono_0_4::Duration
1065-
/// [feature flag]: https://docs.rs/serde_with/3.4.0/serde_with/guide/feature_flags/index.html
1065+
/// [feature flag]: https://docs.rs/serde_with/3.5.0/serde_with/guide/feature_flags/index.html
10661066
pub struct DurationSecondsWithFrac<
10671067
FORMAT: formats::Format = f64,
10681068
STRICTNESS: formats::Strictness = formats::Strict,
@@ -1264,7 +1264,7 @@ pub struct DurationNanoSecondsWithFrac<
12641264
/// [`SystemTime`]: std::time::SystemTime
12651265
/// [`chrono::DateTime<Local>`]: ::chrono_0_4::DateTime
12661266
/// [`chrono::DateTime<Utc>`]: ::chrono_0_4::DateTime
1267-
/// [feature flag]: https://docs.rs/serde_with/3.4.0/serde_with/guide/feature_flags/index.html
1267+
/// [feature flag]: https://docs.rs/serde_with/3.5.0/serde_with/guide/feature_flags/index.html
12681268
pub struct TimestampSeconds<
12691269
FORMAT: formats::Format = i64,
12701270
STRICTNESS: formats::Strictness = formats::Strict,
@@ -1406,7 +1406,7 @@ pub struct TimestampSeconds<
14061406
/// [`chrono::DateTime<Local>`]: ::chrono_0_4::DateTime
14071407
/// [`chrono::DateTime<Utc>`]: ::chrono_0_4::DateTime
14081408
/// [NaiveDateTime]: ::chrono_0_4::NaiveDateTime
1409-
/// [feature flag]: https://docs.rs/serde_with/3.4.0/serde_with/guide/feature_flags/index.html
1409+
/// [feature flag]: https://docs.rs/serde_with/3.5.0/serde_with/guide/feature_flags/index.html
14101410
pub struct TimestampSecondsWithFrac<
14111411
FORMAT: formats::Format = f64,
14121412
STRICTNESS: formats::Strictness = formats::Strict,

serde_with_macros/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
77

88
## [Unreleased]
99

10+
## [3.5.0] - 2024-01-20
11+
12+
### Added
13+
14+
* Support for `schemars` integration added by @swlynch99 (#666)
15+
The `serde_as` macro can now detect `schemars` usage and emits matching annotations for all fields with `serde_as` attribute.
16+
1017
## [3.4.0] - 2023-10-17
1118

1219
No changes.

serde_with_macros/src/lib.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
#![doc(test(attr(warn(rust_2018_idioms))))]
2727
// Not needed for 2018 edition and conflicts with `rust_2018_idioms`
2828
#![doc(test(no_crate_inject))]
29-
#![doc(html_root_url = "https://docs.rs/serde_with_macros/3.4.0/")]
29+
#![doc(html_root_url = "https://docs.rs/serde_with_macros/3.5.0/")]
3030
// Necessary to silence the warning about clippy::unknown_clippy_lints on nightly
3131
#![allow(renamed_and_removed_lints)]
3232
// Necessary for nightly clippy lints
@@ -602,8 +602,8 @@ fn field_has_attribute(field: &Field, namespace: &str, name: &str) -> bool {
602602
/// It will also work if the relevant derive is behind a `#[cfg_attr]` attribute
603603
/// and propagate the `#[cfg_attr]` to the various `#[schemars]` field attributes.
604604
///
605-
/// [`serde_as`]: https://docs.rs/serde_with/3.4.0/serde_with/guide/index.html
606-
/// [re-exporting `serde_as`]: https://docs.rs/serde_with/3.4.0/serde_with/guide/serde_as/index.html#re-exporting-serde_as
605+
/// [`serde_as`]: https://docs.rs/serde_with/3.5.0/serde_with/guide/index.html
606+
/// [re-exporting `serde_as`]: https://docs.rs/serde_with/3.5.0/serde_with/guide/serde_as/index.html#re-exporting-serde_as
607607
#[proc_macro_attribute]
608608
pub fn serde_as(args: TokenStream, input: TokenStream) -> TokenStream {
609609
#[derive(FromMeta)]
@@ -1057,7 +1057,7 @@ fn has_type_embedded(type_: &Type, embedded_type: &syn::Ident) -> bool {
10571057
/// [`Display`]: std::fmt::Display
10581058
/// [`FromStr`]: std::str::FromStr
10591059
/// [cargo-toml-rename]: https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#renaming-dependencies-in-cargotoml
1060-
/// [serde-as-crate]: https://docs.rs/serde_with/3.4.0/serde_with/guide/serde_as/index.html#re-exporting-serde_as
1060+
/// [serde-as-crate]: https://docs.rs/serde_with/3.5.0/serde_with/guide/serde_as/index.html#re-exporting-serde_as
10611061
/// [serde-crate]: https://serde.rs/container-attrs.html#crate
10621062
#[proc_macro_derive(DeserializeFromStr, attributes(serde_with))]
10631063
pub fn derive_deserialize_fromstr(item: TokenStream) -> TokenStream {
@@ -1177,7 +1177,7 @@ fn deserialize_fromstr(mut input: DeriveInput, serde_with_crate_path: Path) -> T
11771177
/// [`Display`]: std::fmt::Display
11781178
/// [`FromStr`]: std::str::FromStr
11791179
/// [cargo-toml-rename]: https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#renaming-dependencies-in-cargotoml
1180-
/// [serde-as-crate]: https://docs.rs/serde_with/3.4.0/serde_with/guide/serde_as/index.html#re-exporting-serde_as
1180+
/// [serde-as-crate]: https://docs.rs/serde_with/3.5.0/serde_with/guide/serde_as/index.html#re-exporting-serde_as
11811181
/// [serde-crate]: https://serde.rs/container-attrs.html#crate
11821182
#[proc_macro_derive(SerializeDisplay, attributes(serde_with))]
11831183
pub fn derive_serialize_display(item: TokenStream) -> TokenStream {

0 commit comments

Comments
 (0)