Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(deps): update serde packages (#555)
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [serde](https://serde.rs) ([source](https://github.com/serde-rs/serde)) | dependencies | patch | `1.0` -> `1.0.200` | | [serde_json](https://github.com/serde-rs/json) | dependencies | patch | `1.0` -> `1.0.116` | --- ### Release Notes <details> <summary>serde-rs/serde (serde)</summary> ### [`v1.0.200`](https://github.com/serde-rs/serde/releases/tag/v1.0.200) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.199...v1.0.200) - Fix formatting of "invalid type" and "invalid value" deserialization error messages containing NaN or infinite floats ([#​2733](https://github.com/serde-rs/serde/issues/2733), thanks [@​jamessan](https://github.com/jamessan)) ### [`v1.0.199`](https://github.com/serde-rs/serde/releases/tag/v1.0.199) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.198...v1.0.199) - Fix ambiguous associated item when `forward_to_deserialize_any!` is used on an enum with `Error` variant ([#​2732](https://github.com/serde-rs/serde/issues/2732), thanks [@​aatifsyed](https://github.com/aatifsyed)) ### [`v1.0.198`](https://github.com/serde-rs/serde/releases/tag/v1.0.198) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.197...v1.0.198) - Support serializing and deserializing `Saturating<T>` ([#​2709](https://github.com/serde-rs/serde/issues/2709), thanks [@​jbethune](https://github.com/jbethune)) ### [`v1.0.197`](https://github.com/serde-rs/serde/releases/tag/v1.0.197) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.196...v1.0.197) - Fix unused_imports warnings when compiled by rustc 1.78 - Optimize code size of some Display impls ([#​2697](https://github.com/serde-rs/serde/issues/2697), thanks [@​nyurik](https://github.com/nyurik)) ### [`v1.0.196`](https://github.com/serde-rs/serde/releases/tag/v1.0.196) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.195...v1.0.196) - Improve formatting of "invalid type" error messages involving floats ([#​2682](https://github.com/serde-rs/serde/issues/2682)) ### [`v1.0.195`](https://github.com/serde-rs/serde/releases/tag/v1.0.195) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.194...v1.0.195) - Prevent remote definitions of tuple struct or tuple variant from triggering dead_code warning ([#​2671](https://github.com/serde-rs/serde/issues/2671)) ### [`v1.0.194`](https://github.com/serde-rs/serde/releases/tag/v1.0.194) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.193...v1.0.194) - Update proc-macro2 to fix caching issue when using a rustc-wrapper such as sccache ### [`v1.0.193`](https://github.com/serde-rs/serde/releases/tag/v1.0.193) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.192...v1.0.193) - Fix field names used for the deserialization of `RangeFrom` and `RangeTo` ([#​2653](https://github.com/serde-rs/serde/issues/2653), [#​2654](https://github.com/serde-rs/serde/issues/2654), [#​2655](https://github.com/serde-rs/serde/issues/2655), thanks [@​emilbonnek](https://github.com/emilbonnek)) ### [`v1.0.192`](https://github.com/serde-rs/serde/releases/tag/v1.0.192) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.191...v1.0.192) - Allow internal tag field in untagged variant ([#​2646](https://github.com/serde-rs/serde/issues/2646), thanks [@​robsdedude](https://github.com/robsdedude)) ### [`v1.0.191`](https://github.com/serde-rs/serde/releases/tag/v1.0.191) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.190...v1.0.191) - Documentation improvements ### [`v1.0.190`](https://github.com/serde-rs/serde/releases/tag/v1.0.190) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.189...v1.0.190) - Preserve NaN sign when deserializing f32 from f64 or vice versa ([#​2637](https://github.com/serde-rs/serde/issues/2637)) ### [`v1.0.189`](https://github.com/serde-rs/serde/releases/tag/v1.0.189) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.188...v1.0.189) - Fix "cannot infer type" error when internally tagged enum contains untagged variant ([#​2613](https://github.com/serde-rs/serde/issues/2613), thanks [@​ahl](https://github.com/ahl)) ### [`v1.0.188`](https://github.com/serde-rs/serde/releases/tag/v1.0.188) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.187...v1.0.188) - Fix *"failed to parse manifest"* error when building serde using a Cargo version between 1.45 and 1.50 ([#​2603](https://github.com/serde-rs/serde/issues/2603)) ### [`v1.0.187`](https://github.com/serde-rs/serde/releases/tag/v1.0.187) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.186...v1.0.187) - Remove support for Emscripten targets on rustc older than 1.40 ([#​2600](https://github.com/serde-rs/serde/issues/2600)) ### [`v1.0.186`](https://github.com/serde-rs/serde/releases/tag/v1.0.186) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.185...v1.0.186) - Disallow incompatible versions of `serde_derive` and `serde` in the dependency graph ([#​2588](https://github.com/serde-rs/serde/issues/2588), thanks [@​soqb](https://github.com/soqb)) ### [`v1.0.185`](https://github.com/serde-rs/serde/releases/tag/v1.0.185) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.184...v1.0.185) - Fix error *"cannot move out of `*self` which is behind a shared reference"* deriving Serialize on a non_exhaustive enum ([#​2591](https://github.com/serde-rs/serde/issues/2591)) ### [`v1.0.184`](https://github.com/serde-rs/serde/releases/tag/v1.0.184) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.183...v1.0.184) - Restore from-source `serde_derive` build on all platforms — eventually we'd like to use a first-class precompiled macro if such a thing becomes supported by cargo / crates.io ### [`v1.0.183`](https://github.com/serde-rs/serde/releases/tag/v1.0.183) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.182...v1.0.183) - Support deserializing `Box<OsStr>` with an equivalent representation as `OsString` ([#​2556](https://github.com/serde-rs/serde/issues/2556), thanks [@​DBLouis](https://github.com/DBLouis)) ### [`v1.0.182`](https://github.com/serde-rs/serde/releases/tag/v1.0.182) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.181...v1.0.182) - Render field aliases in sorted order in error messages ([#​2458](https://github.com/serde-rs/serde/issues/2458), thanks [@​Mingun](https://github.com/Mingun)) - Support `serde(default)` on tuple structs ([#​2553](https://github.com/serde-rs/serde/issues/2553), thanks [@​Mingun](https://github.com/Mingun)) ### [`v1.0.181`](https://github.com/serde-rs/serde/releases/tag/v1.0.181) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.180...v1.0.181) - Make `serde(alias)` work in combination with `flatten` when using in-place deserialization ([#​2443](https://github.com/serde-rs/serde/issues/2443), thanks [@​Mingun](https://github.com/Mingun)) - Improve the representation of adjacently tagged enums in formats where enum tags are serialized by index, as opposed to by string name ([#​2505](https://github.com/serde-rs/serde/issues/2505), [#​2496](https://github.com/serde-rs/serde/issues/2496), thanks [@​Baptistemontan](https://github.com/Baptistemontan)) ### [`v1.0.180`](https://github.com/serde-rs/serde/releases/tag/v1.0.180) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.179...v1.0.180) - Update to 2018 edition ### [`v1.0.179`](https://github.com/serde-rs/serde/releases/tag/v1.0.179) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.178...v1.0.179) - Support serialization of tuple variants inside a flattened field ([#​2448](https://github.com/serde-rs/serde/issues/2448), thanks [@​Mingun](https://github.com/Mingun)) ### [`v1.0.178`](https://github.com/serde-rs/serde/releases/tag/v1.0.178) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.177...v1.0.178) - Fix build error when using serde with "std" feature turned off and "unstable" feature turned on ([#​2541](https://github.com/serde-rs/serde/issues/2541)) ### [`v1.0.177`](https://github.com/serde-rs/serde/releases/tag/v1.0.177) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.176...v1.0.177) - Add `serde(rename_all_fields = "...")` attribute to apply a `rename_all` on every struct variant of an enum ([#​1695](https://github.com/serde-rs/serde/issues/1695), thanks [@​jplatte](https://github.com/jplatte)) - Improve diagnostics for attribute parse errors ([#​2536](https://github.com/serde-rs/serde/issues/2536), thanks [@​jplatte](https://github.com/jplatte)) ### [`v1.0.176`](https://github.com/serde-rs/serde/releases/tag/v1.0.176) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.175...v1.0.176) - Allow tag field of an internally tagged enum to have same name as a field inside a skipped struct variant ([#​2266](https://github.com/serde-rs/serde/issues/2266), thanks [@​flisky](https://github.com/flisky)) ### [`v1.0.175`](https://github.com/serde-rs/serde/releases/tag/v1.0.175) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.174...v1.0.175) - Restore missing LICENSE files in serde_derive crate ([#​2527](https://github.com/serde-rs/serde/issues/2527), thanks [@​ankane](https://github.com/ankane)) ### [`v1.0.174`](https://github.com/serde-rs/serde/releases/tag/v1.0.174) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.173...v1.0.174) - Documentation improvements ### [`v1.0.173`](https://github.com/serde-rs/serde/releases/tag/v1.0.173) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.172...v1.0.173) - Fix missing trait implementations when using serde derive macro on a macro-generated data structure, such as via the `bitflags` crate ([#​2516](https://github.com/serde-rs/serde/issues/2516)) ### [`v1.0.172`](https://github.com/serde-rs/serde/releases/tag/v1.0.172) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.171...v1.0.172) - Experiment with precompiling the serde_derive macros to reduce build time ([#​2514](https://github.com/serde-rs/serde/issues/2514)) ### [`v1.0.171`](https://github.com/serde-rs/serde/releases/tag/v1.0.171) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.170...v1.0.171) - Support `derive(Deserialize)` on unit structs that have const generics ([#​2500](https://github.com/serde-rs/serde/issues/2500), thanks [@​Baptistemontan](https://github.com/Baptistemontan)) ### [`v1.0.170`](https://github.com/serde-rs/serde/releases/tag/v1.0.170) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.169...v1.0.170) - Produce error message on suffixed string literals inside serde attributes ([#​2242](https://github.com/serde-rs/serde/issues/2242)) - Support single identifier as unbraced default value for const generic parameter ([#​2449](https://github.com/serde-rs/serde/issues/2449)) ### [`v1.0.169`](https://github.com/serde-rs/serde/releases/tag/v1.0.169) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.168...v1.0.169) - Add Deserializer::deserialize_identifier support for adjacently tagged enums ([#​2475](https://github.com/serde-rs/serde/issues/2475), thanks [@​Baptistemontan](https://github.com/Baptistemontan)) - Fix unused_braces lint in generated Deserialize impl that uses braced const generic expressions ([#​2414](https://github.com/serde-rs/serde/issues/2414)) ### [`v1.0.168`](https://github.com/serde-rs/serde/releases/tag/v1.0.168) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.167...v1.0.168) - Allow `serde::de::IgnoredAny` to be the type for a `serde(flatten)` field ([#​2436](https://github.com/serde-rs/serde/issues/2436), thanks [@​Mingun](https://github.com/Mingun)) - Allow larger preallocated capacity for smaller elements ([#​2494](https://github.com/serde-rs/serde/issues/2494)) ### [`v1.0.167`](https://github.com/serde-rs/serde/releases/tag/v1.0.167) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.166...v1.0.167) - Add serialize and deserialize impls for `RangeFrom` and `RangeTo` ([#​2471](https://github.com/serde-rs/serde/issues/2471), thanks [@​tbu-](https://github.com/tbu-)) ### [`v1.0.166`](https://github.com/serde-rs/serde/releases/tag/v1.0.166) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.165...v1.0.166) - Add `no-alloc` category to crates.io metadata ### [`v1.0.165`](https://github.com/serde-rs/serde/releases/tag/v1.0.165) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.164...v1.0.165) - Fix incorrect count of fields passed to tuple deserialization methods when using `serde(skip_deserializing)` attributes ([#​2466](https://github.com/serde-rs/serde/issues/2466), thanks [@​Mingun](https://github.com/Mingun)) - Fix `-Zminimal-versions` build ### [`v1.0.164`](https://github.com/serde-rs/serde/releases/tag/v1.0.164) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.163...v1.0.164) - Allowed enum variants to be individually marked as untagged ([#​2403](https://github.com/serde-rs/serde/issues/2403), thanks [@​dewert99](https://github.com/dewert99)) ### [`v1.0.163`](https://github.com/serde-rs/serde/releases/tag/v1.0.163) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.162...v1.0.163) - Eliminate build script from serde_derive crate to slightly reduce build time ([#​2442](https://github.com/serde-rs/serde/issues/2442), thanks [@​taiki-e](https://github.com/taiki-e)) ### [`v1.0.162`](https://github.com/serde-rs/serde/releases/tag/v1.0.162) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.161...v1.0.162) - Support deserializing flattened adjacently tagged enums from data formats which represent fields as bytes, such as the `csv` crate ([#​2377](https://github.com/serde-rs/serde/issues/2377), thanks [@​mfro](https://github.com/mfro)) ```rust #[derive(Deserialize)] pub struct Record { common: u64, #[serde(flatten)] kind: Kind, } #[derive(Deserialize)] #[serde(tag = "kind", content = "parameter", rename_all = "lowercase")] enum Kind { Foo(u64), Bar(bool), } ``` ```csv common,kind,parameter 1,foo,42 2,bar,true ``` ### [`v1.0.161`](https://github.com/serde-rs/serde/releases/tag/v1.0.161) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.160...v1.0.161) - Improve error messages produced by serde_test on test failure ([#​2435](https://github.com/serde-rs/serde/issues/2435), thanks [@​Mingun](https://github.com/Mingun)) ### [`v1.0.160`](https://github.com/serde-rs/serde/releases/tag/v1.0.160) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.159...v1.0.160) - Make derived serializer/deserializer internals `doc(hidden)` ([#​2426](https://github.com/serde-rs/serde/issues/2426), thanks [@​compiler-errors](https://github.com/compiler-errors)) ### [`v1.0.159`](https://github.com/serde-rs/serde/releases/tag/v1.0.159) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.158...v1.0.159) - Accept empty #\[serde()] attribute ([#​2422](https://github.com/serde-rs/serde/issues/2422)) ### [`v1.0.158`](https://github.com/serde-rs/serde/releases/tag/v1.0.158) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.157...v1.0.158) - Fix *"expected serde crate attribute to be a string"* error when using macro_rules metavariable inside of serde attribute: `#[serde(crate = $serde_path)]` ([#​2409](https://github.com/serde-rs/serde/issues/2409)) ### [`v1.0.157`](https://github.com/serde-rs/serde/releases/tag/v1.0.157) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.156...v1.0.157) - Update syn dependency to 2.x ### [`v1.0.156`](https://github.com/serde-rs/serde/releases/tag/v1.0.156) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.155...v1.0.156) - Documentation improvements ### [`v1.0.155`](https://github.com/serde-rs/serde/releases/tag/v1.0.155) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.154...v1.0.155) - Support `Serialize` and `Deserialize` impls for `core::ffi::CStr` and `alloc::ffi::CString` without "std" feature ([#​2374](https://github.com/serde-rs/serde/issues/2374), thanks [@​safarir](https://github.com/safarir)) ### [`v1.0.154`](https://github.com/serde-rs/serde/releases/tag/v1.0.154) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.153...v1.0.154) - Fix "undeclared lifetime" error in generated code when deriving Deserialize for an enum with both `flatten` and `'static` fields ([#​2383](https://github.com/serde-rs/serde/issues/2383), thanks [@​Mingun](https://github.com/Mingun)) ### [`v1.0.153`](https://github.com/serde-rs/serde/releases/tag/v1.0.153) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.152...v1.0.153) - Support `serde(alias = "…")` attribute used inside of flattened struct ([#​2387](https://github.com/serde-rs/serde/issues/2387), thanks [@​bebecue](https://github.com/bebecue)) ### [`v1.0.152`](https://github.com/serde-rs/serde/releases/tag/v1.0.152) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.151...v1.0.152) - Documentation improvements ### [`v1.0.151`](https://github.com/serde-rs/serde/releases/tag/v1.0.151) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.150...v1.0.151) - Update `serde::`{`ser`,`de`}`::StdError` to re-export `core::error::Error` when serde is built with `feature="std"` **off** and `feature="unstable"` **on** ([#​2344](https://github.com/serde-rs/serde/issues/2344)) ### [`v1.0.150`](https://github.com/serde-rs/serde/releases/tag/v1.0.150) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.149...v1.0.150) - Relax some trait bounds from the `Serialize` impl of `HashMap` and `BTreeMap` ([#​2334](https://github.com/serde-rs/serde/issues/2334)) - Enable `Serialize` and `Deserialize` impls of `std::sync::atomic` types on more platforms ([#​2337](https://github.com/serde-rs/serde/issues/2337), thanks [@​badboy](https://github.com/badboy)) ### [`v1.0.149`](https://github.com/serde-rs/serde/releases/tag/v1.0.149) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.148...v1.0.149) - Relax some trait bounds from the `Serialize` impl of `BinaryHeap`, `BTreeSet`, and `HashSet` ([#​2333](https://github.com/serde-rs/serde/issues/2333), thanks [@​jonasbb](https://github.com/jonasbb)) ### [`v1.0.148`](https://github.com/serde-rs/serde/releases/tag/v1.0.148) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.147...v1.0.148) - Support `remote` derive for generic types that have private fields ([#​2327](https://github.com/serde-rs/serde/issues/2327)) ### [`v1.0.147`](https://github.com/serde-rs/serde/releases/tag/v1.0.147) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.146...v1.0.147) - Add `serde::de::value::EnumAccessDeserializer` which transforms an `EnumAccess` into a `Deserializer` ([#​2305](https://github.com/serde-rs/serde/issues/2305)) ### [`v1.0.146`](https://github.com/serde-rs/serde/releases/tag/v1.0.146) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.145...v1.0.146) - Allow internally tagged newtype variant to contain unit ([#​2303](https://github.com/serde-rs/serde/issues/2303), thanks [@​tage64](https://github.com/tage64)) ### [`v1.0.145`](https://github.com/serde-rs/serde/releases/tag/v1.0.145) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.144...v1.0.145) - Allow RefCell\<T>, Mutex\<T>, and RwLock\<T> to be serialized regardless of whether T is `Sized` ([#​2282](https://github.com/serde-rs/serde/issues/2282), thanks [@​ChayimFriedman2](https://github.com/ChayimFriedman2)) ### [`v1.0.144`](https://github.com/serde-rs/serde/releases/tag/v1.0.144) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.143...v1.0.144) - Change atomic ordering used by Serialize impl of atomic types to match ordering used by Debug impl of those same types ([#​2263](https://github.com/serde-rs/serde/issues/2263), thanks [@​taiki-e](https://github.com/taiki-e)) ### [`v1.0.143`](https://github.com/serde-rs/serde/releases/tag/v1.0.143) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.142...v1.0.143) - Invert build.rs cfgs in serde_test to produce the most modern configuration in the default case ([#​2253](https://github.com/serde-rs/serde/issues/2253), thanks [@​taiki-e](https://github.com/taiki-e)) ### [`v1.0.142`](https://github.com/serde-rs/serde/releases/tag/v1.0.142) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.141...v1.0.142) - Add keywords to crates.io metadata ### [`v1.0.141`](https://github.com/serde-rs/serde/releases/tag/v1.0.141) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.140...v1.0.141) - Add `no-std` category to crates.io metadata ### [`v1.0.140`](https://github.com/serde-rs/serde/releases/tag/v1.0.140) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.139...v1.0.140) - Invert serde_derive cfgs to convenience non-Cargo builds on a modern toolchain ([#​2251](https://github.com/serde-rs/serde/issues/2251), thanks [@​taiki-e](https://github.com/taiki-e)) ### [`v1.0.139`](https://github.com/serde-rs/serde/releases/tag/v1.0.139) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.138...v1.0.139) - Add `new` constructor function for all `IntoDeserializer` impls ([#​2246](https://github.com/serde-rs/serde/issues/2246)) ### [`v1.0.138`](https://github.com/serde-rs/serde/releases/tag/v1.0.138) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.137...v1.0.138) - Documentation improvements ### [`v1.0.137`](https://github.com/serde-rs/serde/releases/tag/v1.0.137) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.136...v1.0.137) - Update documentation links to some data formats whose repos have moved ([#​2201](https://github.com/serde-rs/serde/issues/2201), thanks [@​atouchet](https://github.com/atouchet)) - Fix declared `rust-version` of serde and serde_test ([#​2168](https://github.com/serde-rs/serde/issues/2168)) ### [`v1.0.136`](https://github.com/serde-rs/serde/releases/tag/v1.0.136) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.135...v1.0.136) - Improve default error message when `Visitor` fails to deserialize a u128 or i128 ([#​2167](https://github.com/serde-rs/serde/issues/2167)) ### [`v1.0.135`](https://github.com/serde-rs/serde/releases/tag/v1.0.135) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.134...v1.0.135) - Update discord channels listed in readme ### [`v1.0.134`](https://github.com/serde-rs/serde/releases/tag/v1.0.134) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.133...v1.0.134) - Improve error messages on deserializing NonZero integers from a 0 value ([#​2158](https://github.com/serde-rs/serde/issues/2158)) ### [`v1.0.133`](https://github.com/serde-rs/serde/releases/tag/v1.0.133) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.132...v1.0.133) - Optimize deserialization of data structures that contain recursive use of `flatten` fields or `tag` or `untagged` enums ([#​2148](https://github.com/serde-rs/serde/issues/2148)) ### [`v1.0.132`](https://github.com/serde-rs/serde/releases/tag/v1.0.132) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.131...v1.0.132) - Enable Serialize and Deserialize impls for `std::sync::atomic::{AtomicI64, AtomicU64}` on riscv64 arch ([#​2141](https://github.com/serde-rs/serde/issues/2141), thanks [@​Avimitin](https://github.com/Avimitin)) ### [`v1.0.131`](https://github.com/serde-rs/serde/releases/tag/v1.0.131) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.130...v1.0.131) - Avoid `unused_results` being triggered in generated code for adjacently tagged enum ([#​2116](https://github.com/serde-rs/serde/issues/2116), thanks [@​tyranron](https://github.com/tyranron)) ### [`v1.0.130`](https://github.com/serde-rs/serde/releases/tag/v1.0.130) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.129...v1.0.130) - Provide `MapAccess` and `SeqAccess` impl for reference to a dynamically sized existing impl ([#​2081](https://github.com/serde-rs/serde/issues/2081)) ### [`v1.0.129`](https://github.com/serde-rs/serde/releases/tag/v1.0.129) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.128...v1.0.129) - Support deserialization of remote structs that used packed repr ([#​2078](https://github.com/serde-rs/serde/issues/2078), [#​2079](https://github.com/serde-rs/serde/issues/2079), [#​2080](https://github.com/serde-rs/serde/issues/2080)) ### [`v1.0.128`](https://github.com/serde-rs/serde/releases/tag/v1.0.128) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.127...v1.0.128) - Enable 128-bit integers on emscripten in Rust 1.40+ ([#​2076](https://github.com/serde-rs/serde/issues/2076), thanks [@​Manishearth](https://github.com/Manishearth)) ### [`v1.0.127`](https://github.com/serde-rs/serde/releases/tag/v1.0.127) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.126...v1.0.127) - Resolve warning in rustc nightly-2021-07-31+ compiling serde_test ### [`v1.0.126`](https://github.com/serde-rs/serde/releases/tag/v1.0.126) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.125...v1.0.126) - Resolve conflict with `forbid(future_incompatible)` lint setting in generated code ([#​2026](https://github.com/serde-rs/serde/issues/2026), thanks [@​hyd-dev](https://github.com/hyd-dev)) ### [`v1.0.125`](https://github.com/serde-rs/serde/releases/tag/v1.0.125) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.124...v1.0.125) - Improve performance of serializing `Ipv4Addr` ([#​2001](https://github.com/serde-rs/serde/issues/2001), thanks [@​saethlin](https://github.com/saethlin)) ### [`v1.0.124`](https://github.com/serde-rs/serde/releases/tag/v1.0.124) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.123...v1.0.124) - Fix possible panic deserializing invalid data as `SystemTime` ([#​1997](https://github.com/serde-rs/serde/issues/1997), thanks [@​cyang1](https://github.com/cyang1)) ### [`v1.0.123`](https://github.com/serde-rs/serde/releases/tag/v1.0.123) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.122...v1.0.123) - Support `Self` keywords in fields of types that derive Deserialize ([#​1830](https://github.com/serde-rs/serde/issues/1830), thanks [@​taiki-e](https://github.com/taiki-e)) - Allow floats to be deserialized from ints in tagged unions ([#​1842](https://github.com/serde-rs/serde/issues/1842), thanks [@​Timmmm](https://github.com/Timmmm)) - Support `Self` inside fields that use serialize_with ([#​1970](https://github.com/serde-rs/serde/issues/1970)) ### [`v1.0.122`](https://github.com/serde-rs/serde/releases/tag/v1.0.122) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.121...v1.0.122) - Add IntoDeserializer impl for &\[u8] ([#​1898](https://github.com/serde-rs/serde/issues/1898), thanks [@​Mingun](https://github.com/Mingun)) - Handle unrecognized numeric field keys during deserialization of a field_identifier, equivalently to string field keys ([#​1914](https://github.com/serde-rs/serde/issues/1914), thanks [@​Mingun](https://github.com/Mingun)) - Add attribute to override default deserialization failure expectation message ([#​1916](https://github.com/serde-rs/serde/issues/1916), thanks [@​Mingun](https://github.com/Mingun)) ```rust #[derive(Deserialize)] #[serde(untagged, expecting = "single version or array of versions")] struct VersionSpec { One(Version), Many(Vec<Version>), } ``` - Improve `serde_test` handling of map entries and error message construction ([#​1918](https://github.com/serde-rs/serde/issues/1918), thanks [@​Mingun](https://github.com/Mingun)) - Produce more accurate location information on test failures from `serde_test` crate ([#​1920](https://github.com/serde-rs/serde/issues/1920), thanks [@​Mingun](https://github.com/Mingun)) - Improve diagnostic on failure to parse a `rename_all` attribute ([#​1960](https://github.com/serde-rs/serde/issues/1960), [#​1961](https://github.com/serde-rs/serde/issues/1961)) - Eliminate unnecessary trait bounds on some value Deserializer impls ([#​1963](https://github.com/serde-rs/serde/issues/1963)) ### [`v1.0.121`](https://github.com/serde-rs/serde/releases/tag/v1.0.121) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.120...v1.0.121) - Support borrowed data during deserialization of a field identifier ([#​1917](https://github.com/serde-rs/serde/issues/1917), thanks [@​Mingun](https://github.com/Mingun)) - Fix panic when deserializing `Duration` with nanoseconds that cause the seconds counter to overflow ([#​1958](https://github.com/serde-rs/serde/issues/1958), thanks [@​jonasbb](https://github.com/jonasbb)) ### [`v1.0.120`](https://github.com/serde-rs/serde/releases/tag/v1.0.120) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.119...v1.0.120) - Fix deserialization of ignored fields containing 128-bit integer ([#​1955](https://github.com/serde-rs/serde/issues/1955), thanks [@​TheJokr](https://github.com/TheJokr)) ### [`v1.0.119`](https://github.com/serde-rs/serde/compare/v1.0.118...v1.0.119) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.118...v1.0.119) ### [`v1.0.118`](https://github.com/serde-rs/serde/releases/tag/v1.0.118) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.117...v1.0.118) - Support serialization of core::num::Wrapping in no_std mode ([#​1926](https://github.com/serde-rs/serde/issues/1926), thanks [@​attente](https://github.com/attente)) ### [`v1.0.117`](https://github.com/serde-rs/serde/releases/tag/v1.0.117) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.116...v1.0.117) - Allow serialization of std::net::SocketAddrV6 to include a scope id if present (based on [https://github.com/rust-lang/rust/pull/77426](https://github.com/rust-lang/rust/pull/77426)) ### [`v1.0.116`](https://github.com/serde-rs/serde/releases/tag/v1.0.116) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.115...v1.0.116) - Fix deserialization of IpAddr, SocketAddr, Bound, Result, OsString in formats which process variant identifiers as u64 ([#​1888](https://github.com/serde-rs/serde/issues/1888), thanks [@​joshtriplett](https://github.com/joshtriplett)) ### [`v1.0.115`](https://github.com/serde-rs/serde/releases/tag/v1.0.115) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.114...v1.0.115) - Support `#[serde(flatten)]` on a field whose type is a type parameter and concrete type is `()` ([#​1873](https://github.com/serde-rs/serde/issues/1873)) ### [`v1.0.114`](https://github.com/serde-rs/serde/releases/tag/v1.0.114) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.113...v1.0.114) - Improve `packed` repr matching to support deriving Serialize for structs having `repr(C, packed)` ([#​1813](https://github.com/serde-rs/serde/issues/1813), thanks [@​TannerRogalsky](https://github.com/TannerRogalsky)) ### [`v1.0.113`](https://github.com/serde-rs/serde/releases/tag/v1.0.113) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.112...v1.0.113) - Improve diagnostic when a serde trait is not implemented ([#​1827](https://github.com/serde-rs/serde/issues/1827), thanks [@​taiki-e](https://github.com/taiki-e)) ### [`v1.0.112`](https://github.com/serde-rs/serde/releases/tag/v1.0.112) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.111...v1.0.112) - Support `serde(flatten)` on map types where the Serializer only works with serialize_entry ([#​1837](https://github.com/serde-rs/serde/issues/1837)) ### [`v1.0.111`](https://github.com/serde-rs/serde/releases/tag/v1.0.111) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.110...v1.0.111) - Process borrowed lifetimes inside of interpolated macro_rules metavariables, such as in the case of `#[derive(Deserialize)] struct S<'a> { field: $field }` ([#​1821](https://github.com/serde-rs/serde/issues/1821)) ### [`v1.0.110`](https://github.com/serde-rs/serde/releases/tag/v1.0.110) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.109...v1.0.110) - Support deriving Serialize impl for a `repr(packed)` struct ([#​1791](https://github.com/serde-rs/serde/issues/1791), thanks [@​alvardes](https://github.com/alvardes)) ### [`v1.0.109`](https://github.com/serde-rs/serde/releases/tag/v1.0.109) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.108...v1.0.109) - Allow adjacently tagged newtype variants containing `Option` to omit the content field when deserializing ([#​1553](https://github.com/serde-rs/serde/issues/1553), [#​1706](https://github.com/serde-rs/serde/issues/1706), thanks [@​zth0](https://github.com/zth0)) - Avoid panicking when a SystemTime older than UNIX_EPOCH is serialized ([#​1702](https://github.com/serde-rs/serde/issues/1702), thanks [@​hjiayz](https://github.com/hjiayz)) ### [`v1.0.108`](https://github.com/serde-rs/serde/releases/tag/v1.0.108) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.107...v1.0.108) - Provide a `Serializer` impl that can write primitives and unit variants to a `&mut fmt::Formatter` ([#​1705](https://github.com/serde-rs/serde/issues/1705), thanks [@​jethrogb](https://github.com/jethrogb)) ```rust use serde::Serialize; use std::fmt::{self, Display}; #[derive(Serialize)] #[serde(rename_all = "kebab-case")] pub enum MessageType { StartRequest, EndRequest, } impl Display for MessageType { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.serialize(f) } } ``` ### [`v1.0.107`](https://github.com/serde-rs/serde/releases/tag/v1.0.107) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.106...v1.0.107) - Fix panic during macro expansion when using `serde(skip)` and `serde(other)` in the same enum ([#​1804](https://github.com/serde-rs/serde/issues/1804)) ### [`v1.0.106`](https://github.com/serde-rs/serde/releases/tag/v1.0.106) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.105...v1.0.106) - Hide dummy const implementation detail from rustdoc when documenting a binary crate ([#​1768](https://github.com/serde-rs/serde/issues/1768), thanks [@​robo9k](https://github.com/robo9k)) ### [`v1.0.105`](https://github.com/serde-rs/serde/releases/tag/v1.0.105) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.104...v1.0.105) - Allow #\[serde(borrow)] to work on non-standard `Cow` types ([#​1754](https://github.com/serde-rs/serde/issues/1754), thanks [@​maciejhirsz](https://github.com/maciejhirsz)) ### [`v1.0.104`](https://github.com/serde-rs/serde/releases/tag/v1.0.104) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.103...v1.0.104) - Revert stabilization of Serialize/Deserialize impls for `!` to account for [https://github.com/rust-lang/rust/pull/67224](https://github.com/rust-lang/rust/pull/67224) ### [`v1.0.103`](https://github.com/serde-rs/serde/releases/tag/v1.0.103) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.102...v1.0.103) - Support deserializing untagged unit variants from formats that treat unit as None ([#​1668](https://github.com/serde-rs/serde/issues/1668)) ### [`v1.0.102`](https://github.com/serde-rs/serde/releases/tag/v1.0.102) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.101...v1.0.102) - Support deserializing `PathBuf` from bytes like `&Path` already did, and support deserializing `Box<Path>` ([#​1656](https://github.com/serde-rs/serde/issues/1656), thanks [@​heftig](https://github.com/heftig)) ### [`v1.0.101`](https://github.com/serde-rs/serde/releases/tag/v1.0.101) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.100...v1.0.101) - Report errors on malformed serde attributes, like `#[serde(rename =)]` -- the compiler used to reject these itself, but when the compiler relaxed its requirements on attribute syntax these malformed attributes began silently being ignored by serde_derive - Eliminate unused variable warning when using skip_serializing inside a tuple variant of an adjacently tagged enum ([#​1617](https://github.com/serde-rs/serde/issues/1617), thanks [@​arilotter](https://github.com/arilotter)) - Support skip attribute inside of newtype variants ([#​1622](https://github.com/serde-rs/serde/issues/1622), thanks [@​Xaeroxe](https://github.com/Xaeroxe)) ### [`v1.0.100`](https://github.com/serde-rs/serde/releases/tag/v1.0.100) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.99...v1.0.100) - Provide `serde::ser::StdError` and `serde::de::StdError` which are either a re-export of `std::error::Error` (if Serde's "std" feature is enabled) or a new identical trait (otherwise). ```rust #[cfg(feature = "std")] pub use std::error::Error as StdError; #[cfg(not(feature = "std"))] pub trait StdError: Debug + Display { fn source(&self) -> Option<&(StdError + 'static)> { None } } ``` Serde's error traits `serde::ser::Error` and `serde::de::Error` require `std::error::Error` as a supertrait, but only when Serde is built with "std" enabled. Data formats that don't care about no_std support should generally provide their error types with a `std::error::Error` impl directly: ```rust #[derive(Debug)] struct MySerError {...} impl serde::ser::Error for MySerError {...} impl std::fmt::Display for MySerError {...} // We don't support no_std! impl std::error::Error for MySerError {} ``` Data formats that *do* support no_std may either have a "std" feature of their own as has been required in the past: ```toml [features] std = ["serde/std"] ``` ```rust #[cfg(feature = "std")] impl std::error::Error for MySerError {} ``` ... or else now may provide the std Error impl unconditionally via Serde's re-export: ```rust impl serde::ser::StdError for MySerError {} ``` ### [`v1.0.99`](https://github.com/serde-rs/serde/releases/tag/v1.0.99) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.98...v1.0.99) - Update Syn dependency to 1.0. *Note: This raises the minimum required compiler version for serde_derive from rustc 1.15 to rustc 1.31. The minimum required compiler version for serde remains at rustc 1.13.* ### [`v1.0.98`](https://github.com/serde-rs/serde/releases/tag/v1.0.98) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.97...v1.0.98) - Add support for NonZeroI\* types ([#​1589](https://github.com/serde-rs/serde/issues/1589), thanks [@​Flaise](https://github.com/Flaise)) ### [`v1.0.97`](https://github.com/serde-rs/serde/releases/tag/v1.0.97) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.96...v1.0.97) - Introduce `serde(try_from = "...")` attribute to derive Deserialize based on a given implementation of [`std::convert::TryFrom`](https://doc.rust-lang.org/std/convert/trait.TryFrom.html) ([#​1526](https://github.com/serde-rs/serde/issues/1526), thanks [@​fanzeyi](https://github.com/fanzeyi)) ```rust #[derive(Deserialize)] #[serde(try_from = "u32")] enum N { Zero, One, Two, } impl TryFrom<u32> for N { type Error = String; fn try_from(u: u32) -> Result<Self, Self::Error> { match u { 0 => Ok(Self::Zero), 1 => Ok(Self::One), 2 => Ok(Self::Two), other => Err(format!("out of range: {}", other)), } } } ``` ### [`v1.0.96`](https://github.com/serde-rs/serde/releases/tag/v1.0.96) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.95...v1.0.96) - Implement serialization and deserialization for std::sync::atomic types ([#​1572](https://github.com/serde-rs/serde/issues/1572) and [#​1581](https://github.com/serde-rs/serde/issues/1581), thanks [@​Roguelazer](https://github.com/Roguelazer)) - Make "alloc" feature work on stable Rust 1.36+ ([#​1576](https://github.com/serde-rs/serde/issues/1576), thanks [@​c410-f3r](https://github.com/c410-f3r)) ### [`v1.0.95`](https://github.com/serde-rs/serde/releases/tag/v1.0.95) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.94...v1.0.95) *yanked* ### [`v1.0.94`](https://github.com/serde-rs/serde/releases/tag/v1.0.94) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.93...v1.0.94) - Accept enums in input data when deserializing IgnoredAny ([#​1558](https://github.com/serde-rs/serde/issues/1558)) ### [`v1.0.93`](https://github.com/serde-rs/serde/releases/tag/v1.0.93) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.92...v1.0.93) - Allow integer keys in untagged flattened map ([#​1545](https://github.com/serde-rs/serde/issues/1545)) ### [`v1.0.92`](https://github.com/serde-rs/serde/releases/tag/v1.0.92) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.91...v1.0.92) - Support using `serde(flatten)` in no_std + alloc mode ([#​1543](https://github.com/serde-rs/serde/issues/1543), thanks [@​jplatte](https://github.com/jplatte)) ### [`v1.0.91`](https://github.com/serde-rs/serde/releases/tag/v1.0.91) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.90...v1.0.91) - Support deserializing from MapAccessDeserializer into an enum ([#​1522](https://github.com/serde-rs/serde/issues/1522)) ### [`v1.0.90`](https://github.com/serde-rs/serde/releases/tag/v1.0.90) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.89...v1.0.90) - Add an attribute `#[serde(crate = "path::to::serde")]` which replaces the use of `extern crate serde` in the generated code; this is intended for crates that invoke Serde derives from a macro and need to refer to `serde` through their own re-export rather than requiring callers to list Serde in Cargo.toml ([#​1499](https://github.com/serde-rs/serde/issues/1499), thanks [@​sgrif](https://github.com/sgrif)) ```rust #[derive(Deserialize)] #[serde(crate = "__tw::codegen::serde")] struct S { ... } ``` ```rust // expands to: impl<'de> __tw::codegen::serde::Deserialize<'de> for S { ... } ``` ### [`v1.0.89`](https://github.com/serde-rs/serde/releases/tag/v1.0.89) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.88...v1.0.89) - Implement Serialize and Deserialize for core::cmp::Reverse\<T> ([#​1486](https://github.com/serde-rs/serde/issues/1486), thanks [@​vorot93](https://github.com/vorot93)) - Fix a Clippy lint triggered within generated code involving flatten + deny_unknown_fields ([#​1492](https://github.com/serde-rs/serde/issues/1492), thanks [@​thomaseizinger](https://github.com/thomaseizinger)) ### [`v1.0.88`](https://github.com/serde-rs/serde/releases/tag/v1.0.88) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.87...v1.0.88) - Support `flatten` and `skip_serializing` / `skip_deserializing` attributes on the same field ### [`v1.0.87`](https://github.com/serde-rs/serde/releases/tag/v1.0.87) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.86...v1.0.87) - Fix inclusion of tag in struct containing flattened fields ([#​1468](https://github.com/serde-rs/serde/issues/1468), thanks [@​jwillbold](https://github.com/jwillbold)) ### [`v1.0.86`](https://github.com/serde-rs/serde/releases/tag/v1.0.86) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.85...v1.0.86) - Implement Serialize and Deserialize for core::ops::Bound\<T> ([#​1466](https://github.com/serde-rs/serde/issues/1466), thanks [@​0nkery](https://github.com/0nkery)) ### [`v1.0.85`](https://github.com/serde-rs/serde/releases/tag/v1.0.85) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.84...v1.0.85) - Accept `#[serde(alias = "...")]` attribute on fields and variants which allows the same field or variant to be deserialized from any of multiple different names in the input ([#​1458](https://github.com/serde-rs/serde/issues/1458), thanks [@​Lymia](https://github.com/Lymia)) ```rust #[derive(Deserialize)] struct S { #[serde(alias = "old_name")] new_name: String, // will deserialize from either of "old_name" or "new_name" } ``` ### [`v1.0.84`](https://github.com/serde-rs/serde/releases/tag/v1.0.84) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.83...v1.0.84) - Update example code in documentation to 2018 edition ### [`v1.0.83`](https://github.com/serde-rs/serde/releases/tag/v1.0.83) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.82...v1.0.83) - Support a `rename_all` specification that applies only to the Serialize impl or only to the Deserialize impl ([#​1447](https://github.com/serde-rs/serde/issues/1447), thanks [@​vincascm](https://github.com/vincascm)) ```rust #[derive(Serialize, Deserialize)] #[serde(rename_all( serialize = "camelCase", deserialize = "SCREAMING_SNAKE_CASE", ))] struct S { /* ... */ } ``` - Allow serializing struct name inside of structs with named fields ([#​1448](https://github.com/serde-rs/serde/issues/1448), thanks [@​motu42](https://github.com/motu42)) ```rust #[derive(Serialize)] #[serde(tag = "type")] struct S { /* ... */ } // serializes as {"type":"S",...} ``` ### [`v1.0.82`](https://github.com/serde-rs/serde/releases/tag/v1.0.82) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.81...v1.0.82) - Support `serde(default)` attribute inside of tuple structs and tuple variants ([#​1442](https://github.com/serde-rs/serde/issues/1442), thanks [@​tcr](https://github.com/tcr)) ### [`v1.0.81`](https://github.com/serde-rs/serde/releases/tag/v1.0.81) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.80...v1.0.81) - Better error messages when using an invalid combination of serde attributes ([#​1424](https://github.com/serde-rs/serde/issues/1424), thanks [@​hcpl](https://github.com/hcpl)) - Support deserializing tagged enums inside of untagged enums in formats that encode tagged enum variants by index, like MessagePack ([#​1437](https://github.com/serde-rs/serde/issues/1437), thanks [@​daboross](https://github.com/daboross)) ### [`v1.0.80`](https://github.com/serde-rs/serde/releases/tag/v1.0.80) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.79...v1.0.80) - Performance optimization for `Vec::deserialize_in_place` to deserialize elements in place ([#​1411](https://github.com/serde-rs/serde/issues/1411)) ### [`v1.0.79`](https://github.com/serde-rs/serde/releases/tag/v1.0.79) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.78...v1.0.79) - Add `serde(other)` variant attribute for deserializing any variant that is not one of the others ([#​1382](https://github.com/serde-rs/serde/issues/1382)) ```rust #[derive(Deserialize)] #[serde(tag = "variant")] enum MyEnum { A(ModelA), B(ModelB), #[serde(other)] Unknown, } ``` In this internally tagged enum the `MyEnum::Unknown` variant would be produced if the `"variant"` tag in the input is neither `"A"` nor `"B"`. This feature is currently limited to externally tagged and adjacently tagged enums in which the `other` variant is a unit variant. ### [`v1.0.78`](https://github.com/serde-rs/serde/releases/tag/v1.0.78) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.77...v1.0.78) - Fix panic deserializing flattened Value after flattened struct ([#​1379](https://github.com/serde-rs/serde/issues/1379)) ### [`v1.0.77`](https://github.com/serde-rs/serde/releases/tag/v1.0.77) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.76...v1.0.77) - Fix internally tagged enum deserialization with unknown fields ([#​1376](https://github.com/serde-rs/serde/issues/1376), thanks [@​dreid](https://github.com/dreid)) ### [`v1.0.76`](https://github.com/serde-rs/serde/releases/tag/v1.0.76) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.75...v1.0.76) - Provide impls for [`NonZeroU128`](https://doc.rust-lang.org/std/num/struct.NonZeroU128.html) ([#​1371](https://github.com/serde-rs/serde/issues/1371), thanks [@​hcpl](https://github.com/hcpl)) ### [`v1.0.75`](https://github.com/serde-rs/serde/releases/tag/v1.0.75) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.74...v1.0.75) - Adjust dependency version requirement to support building with `-Z minimal-versions` in CI ([#​1367](https://github.com/serde-rs/serde/issues/1367)) ### [`v1.0.74`](https://github.com/serde-rs/serde/releases/tag/v1.0.74) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.73...v1.0.74) - Disable i128 integers on Emscripten targets ([#​1365](https://github.com/serde-rs/serde/issues/1365), thanks [@​koute](https://github.com/koute)) ### [`v1.0.73`](https://github.com/serde-rs/serde/releases/tag/v1.0.73) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.72...v1.0.73) - Fix the names of serialized fields when the Rust data structure uses a raw identifier ([#​1362](https://github.com/serde-rs/serde/issues/1362)) ### [`v1.0.72`](https://github.com/serde-rs/serde/releases/tag/v1.0.72) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.71...v1.0.72) - Fix compilation of `default-features = false, features = ["alloc", "rc"]` feature combination ([#​1359](https://github.com/serde-rs/serde/issues/1359), thanks [@​Pratyush](https://github.com/Pratyush)) ### [`v1.0.71`](https://github.com/serde-rs/serde/releases/tag/v1.0.71) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.70...v1.0.71) - Provide impls for [`core::ops::RangeInclusive`](https://doc.rust-lang.org/core/ops/struct.RangeInclusive.html) ([#​1347](https://github.com/serde-rs/serde/issues/1347), thanks [@​c410-f3r](https://github.com/c410-f3r)) - Provide impls for [`core::ops::Range`](https://doc.rust-lang.org/core/ops/struct.Range.html) whether or not `"std"` feature is enabled ([#​1348](https://github.com/serde-rs/serde/issues/1348)) ### [`v1.0.70`](https://github.com/serde-rs/serde/releases/tag/v1.0.70) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.69...v1.0.70) - Update `--features alloc` to work with nightly-2018-07-07 ([#​1335](https://github.com/serde-rs/serde/issues/1335)) ### [`v1.0.69`](https://github.com/serde-rs/serde/releases/tag/v1.0.69) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.68...v1.0.69) - Support Rust 2018 `use_extern_macros` ([https://github.com/rust-lang/rust/pull/51496](https://github.com/rust-lang/rust/pull/51496)) ### [`v1.0.68`](https://github.com/serde-rs/serde/releases/tag/v1.0.68) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.67...v1.0.68) - Suppress 'extern crate' warning for rust 2018 ([#​1324](https://github.com/serde-rs/serde/issues/1324), thanks [@​jechase](https://github.com/jechase)) ### [`v1.0.67`](https://github.com/serde-rs/serde/releases/tag/v1.0.67) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.66...v1.0.67) - Implement Serialize for core::fmt::Arguments ([#​1319](https://github.com/serde-rs/serde/issues/1319)) ### [`v1.0.66`](https://github.com/serde-rs/serde/releases/tag/v1.0.66) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.65...v1.0.66) - Implement Serialize and Deserialize for `!` ([#​544](https://github.com/serde-rs/serde/issues/544), unstable) - Support Duration in no-std mode on sufficiently new compilers ([#​1123](https://github.com/serde-rs/serde/issues/1123)) - Improve compiler error messages ([#​1297](https://github.com/serde-rs/serde/issues/1297), thanks [@​adamcrume](https://github.com/adamcrume)) ### [`v1.0.65`](https://github.com/serde-rs/serde/releases/tag/v1.0.65) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.64...v1.0.65) - Do not panic when serializing a RefCell that is currently mutably borrowed ([#​1300](https://github.com/serde-rs/serde/issues/1300), thanks [@​xfix](https://github.com/xfix)) - Allow flattened fields after a flattened map to receive input fields ([#​1299](https://github.com/serde-rs/serde/issues/1299)) ### [`v1.0.64`](https://github.com/serde-rs/serde/releases/tag/v1.0.64) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.63...v1.0.64) - Second attempt to work around docs.rs old compiler version ([#​1295](https://github.com/serde-rs/serde/issues/1295)) ### [`v1.0.63`](https://github.com/serde-rs/serde/releases/tag/v1.0.63) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.62...v1.0.63) - Workaround to get docs.rs successfully building our docs with its old compiler ([#​1294](https://github.com/serde-rs/serde/issues/1294)) ### [`v1.0.62`](https://github.com/serde-rs/serde/releases/tag/v1.0.62) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.61...v1.0.62) - Implement [`IntoDeserializer`](https://docs.serde.rs/serde/de/trait.IntoDeserializer.html) for i128 and u128 ([#​1280](https://github.com/serde-rs/serde/issues/1280)) - Implement Copy for the primitive value deserializers ([#​1287](https://github.com/serde-rs/serde/issues/1287)) - Implement Clone for primitive value deserializers even when the error type cannot be cloned ([#​1287](https://github.com/serde-rs/serde/issues/1287)) ### [`v1.0.61`](https://github.com/serde-rs/serde/releases/tag/v1.0.61) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.60...v1.0.61) - Stabilize Deserialize impls for dynamically sized Rc / Arc ([#​1266](https://github.com/serde-rs/serde/issues/1266)) - Stabilize Deserialize impl for Box\<CStr> ([#​1267](https://github.com/serde-rs/serde/issues/1267)) ### [`v1.0.60`](https://github.com/serde-rs/serde/releases/tag/v1.0.60) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.59...v1.0.60) - Add Serde impls for i128 and u128 when compiling with Rust 1.26+ ([#​1263](https://github.com/serde-rs/serde/issues/1263)) - Stabilize Serde impls for std::num::NonZero\* on Rust 1.28+ ([#​1278](https://github.com/serde-rs/serde/issues/1278), thanks [@​SimonSapin](https://github.com/SimonSapin)) ### [`v1.0.59`](https://github.com/serde-rs/serde/releases/tag/v1.0.59) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.58...v1.0.59) - Add a `serde(transparent)` container attribute to indicate that a struct serializes and deserializes the same as its only field -- analogous to `repr(transparent)` ([#​1054](https://github.com/serde-rs/serde/issues/1054)) ### [`v1.0.58`](https://github.com/serde-rs/serde/releases/tag/v1.0.58) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.57...v1.0.58) - Fix generated code for deserializing untagged newtype variant ([#​1268](https://github.com/serde-rs/serde/issues/1268)) ### [`v1.0.57`](https://github.com/serde-rs/serde/releases/tag/v1.0.57) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.56...v1.0.57) - Remove unstable Serialize and Deserialize impls for `NonZero<T>` which has been removed from the most recent nightly compiler ([#​1265](https://github.com/serde-rs/serde/issues/1265)) ### [`v1.0.56`](https://github.com/serde-rs/serde/releases/tag/v1.0.56) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.55...v1.0.56) - Add a Serde build.rs script for rustc version detection in preparation for adding i128 / u128 primitive support on sufficiently new compilers. Please let us know in [#​1136](https://github.com/serde-rs/serde/issues/1136) if having a build script causes undue complication in your environment. We will begin using the build script to enable observable functionality after a week o </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 9pm,before 6am" in timezone Europe/Zurich, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/smartive/zitadel-rust). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMzEuMCIsInVwZGF0ZWRJblZlciI6IjM3LjMzMS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
- Loading branch information