Update Rust crate serde to ^1.0.147 - autoclosed #3

Closed
kjuulh wants to merge 1 commits from renovate/serde-1.x into main
Owner

This PR contains the following updates:

Package Type Update Change
serde (source) dependencies patch ^1.0.44 -> ^1.0.147

Release Notes

serde-rs/serde

v1.0.147

  • Add serde::de::value::EnumAccessDeserializer which transforms an EnumAccess into a Deserializer (#​2305)

v1.0.146

v1.0.145

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, thanks @​taiki-e)

v1.0.143

  • Invert build.rs cfgs in serde_test to produce the most modern configuration in the default case (#​2253, thanks @​taiki-e)

v1.0.142

  • Add keywords to crates.io metadata

v1.0.141

  • Add no-std category to crates.io metadata

v1.0.140

  • Invert serde_derive cfgs to convenience non-Cargo builds on a modern toolchain (#​2251, thanks @​taiki-e)

v1.0.139

  • Add new constructor function for all IntoDeserializer impls (#​2246)

v1.0.138

  • Documentation improvements

v1.0.137

  • Update documentation links to some data formats whose repos have moved (#​2201, thanks @​atouchet)
  • Fix declared rust-version of serde and serde_test (#​2168)

v1.0.136

Compare Source

  • Improve default error message when Visitor fails to deserialize a u128 or i128 (#​2167)

v1.0.135

Compare Source

  • Update discord channels listed in readme

v1.0.134

Compare Source

  • Improve error messages on deserializing NonZero integers from a 0 value (#​2158)

v1.0.133

Compare Source

  • Optimize deserialization of data structures that contain recursive use of flatten fields or tag or untagged enums (#​2148)

v1.0.132

Compare Source

  • Enable Serialize and Deserialize impls for std::sync::atomic::{AtomicI64, AtomicU64} on riscv64 arch (#​2141, thanks @​Avimitin)

v1.0.131

Compare Source

  • Avoid unused_results being triggered in generated code for adjacently tagged enum (#​2116, thanks @​tyranron)

v1.0.130

Compare Source

  • Provide MapAccess and SeqAccess impl for reference to a dynamically sized existing impl (#​2081)

v1.0.129

Compare Source

v1.0.128

Compare Source

v1.0.127

Compare Source

  • Resolve warning in rustc nightly-2021-07-31+ compiling serde_test

v1.0.126

Compare Source

  • Resolve conflict with forbid(future_incompatible) lint setting in generated code (#​2026, thanks @​hyd-dev)

v1.0.125

Compare Source

v1.0.124

Compare Source

  • Fix possible panic deserializing invalid data as SystemTime (#​1997, thanks @​cyang1)

v1.0.123

Compare Source

  • Support Self keywords in fields of types that derive Deserialize (#​1830, thanks @​taiki-e)
  • Allow floats to be deserialized from ints in tagged unions (#​1842, thanks @​Timmmm)
  • Support Self inside fields that use serialize_with (#​1970)

v1.0.122

Compare Source

  • Add IntoDeserializer impl for &[u8] (#​1898, thanks @​Mingun)

  • Handle unrecognized numeric field keys during deserialization of a field_identifier, equivalently to string field keys (#​1914, thanks @​Mingun)

  • Add attribute to override default deserialization failure expectation message (#​1916, thanks @​Mingun)

    #[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, thanks @​Mingun)

  • Produce more accurate location information on test failures from serde_test crate (#​1920, thanks @​Mingun)

  • Improve diagnostic on failure to parse a rename_all attribute (#​1960, #​1961)

  • Eliminate unnecessary trait bounds on some value Deserializer impls (#​1963)

v1.0.121

Compare Source

  • Support borrowed data during deserialization of a field identifier (#​1917, thanks @​Mingun)
  • Fix panic when deserializing Duration with nanoseconds that cause the seconds counter to overflow (#​1958, thanks @​jonasbb)

v1.0.120

Compare Source

  • Fix deserialization of ignored fields containing 128-bit integer (#​1955, thanks @​TheJokr)

v1.0.119

Compare Source

v1.0.118

Compare Source

v1.0.117

Compare Source

v1.0.116

Compare Source

  • Fix deserialization of IpAddr, SocketAddr, Bound, Result, OsString in formats which process variant identifiers as u64 (#​1888, thanks @​joshtriplett)

v1.0.115

Compare Source

  • Support #[serde(flatten)] on a field whose type is a type parameter and concrete type is () (#​1873)

v1.0.114

Compare Source

  • Improve packed repr matching to support deriving Serialize for structs having repr(C, packed) (#​1813, thanks @​TannerRogalsky)

v1.0.113

Compare Source

v1.0.112

Compare Source

  • Support serde(flatten) on map types where the Serializer only works with serialize_entry (#​1837)

v1.0.111

Compare Source

  • Process borrowed lifetimes inside of interpolated macro_rules metavariables, such as in the case of #[derive(Deserialize)] struct S<'a> { field: $field } (#​1821)

v1.0.110

Compare Source

v1.0.109

Compare Source

  • Allow adjacently tagged newtype variants containing Option to omit the content field when deserializing (#​1553, #​1706, thanks @​zth0)
  • Avoid panicking when a SystemTime older than UNIX_EPOCH is serialized (#​1702, thanks @​hjiayz)

v1.0.108

Compare Source

  • Provide a Serializer impl that can write primitives and unit variants to a &mut fmt::Formatter (#​1705, thanks @​jethrogb)

    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

Compare Source

  • Fix panic during macro expansion when using serde(skip) and serde(other) in the same enum (#​1804)

v1.0.106

Compare Source

  • Hide dummy const implementation detail from rustdoc when documenting a binary crate (#​1768, thanks @​robo9k)

v1.0.105

Compare Source

v1.0.104

Compare Source

v1.0.103

Compare Source

  • Support deserializing untagged unit variants from formats that treat unit as None (#​1668)

v1.0.102

Compare Source

  • Support deserializing PathBuf from bytes like &Path already did, and support deserializing Box<Path> (#​1656, thanks @​heftig)

v1.0.101

Compare Source

  • 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, thanks @​arilotter)

  • Support skip attribute inside of newtype variants (#​1622, thanks @​Xaeroxe)

v1.0.100

Compare Source

  • 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).

    #[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:

    #[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:

    [features]
    std = ["serde/std"]
    
    #[cfg(feature = "std")]
    impl std::error::Error for MySerError {}
    

    ... or else now may provide the std Error impl unconditionally via Serde's re-export:

    impl serde::ser::StdError for MySerError {}
    

v1.0.99

Compare Source

  • 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

Compare Source

v1.0.97

Compare Source

  • Introduce serde(try_from = "...") attribute to derive Deserialize based on a given implementation of std::convert::TryFrom (#​1526, thanks @​fanzeyi)

    #[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

Compare Source

v1.0.95

Compare Source

yanked

v1.0.94

Compare Source

  • Accept enums in input data when deserializing IgnoredAny (#​1558)

v1.0.93

Compare Source

  • Allow integer keys in untagged flattened map (#​1545)

v1.0.92

Compare Source

v1.0.91

Compare Source

  • Support deserializing from MapAccessDeserializer into an enum (#​1522)

v1.0.90

Compare Source

  • 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, thanks @​sgrif)

    #[derive(Deserialize)]
    #[serde(crate = "__tw::codegen::serde")]
    struct S { ... }
    
    // expands to:
    impl<'de> __tw::codegen::serde::Deserialize<'de> for S {
        ...
    }
    

v1.0.89

Compare Source

v1.0.88

Compare Source

  • Support flatten and skip_serializing / skip_deserializing attributes on the same field

v1.0.87

Compare Source

v1.0.86

Compare Source

  • Implement Serialize and Deserialize for core::ops::Bound<T> (#​1466, thanks @​0nkery)

v1.0.85

Compare Source

  • 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, thanks @​Lymia)

    #[derive(Deserialize)]
    struct S {
        #[serde(alias = "old_name")]
        new_name: String,  // will deserialize from either of "old_name" or "new_name"
    }
    

v1.0.84

Compare Source

  • Update example code in documentation to 2018 edition

v1.0.83

Compare Source

  • Support a rename_all specification that applies only to the Serialize impl or only to the Deserialize impl (#​1447, thanks @​vincascm)

    #[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, thanks @​motu42)

    #[derive(Serialize)]
    #[serde(tag = "type")]
    struct S { /* ... */ }  // serializes as {"type":"S",...}
    

v1.0.82

Compare Source

  • Support serde(default) attribute inside of tuple structs and tuple variants (#​1442, thanks @​tcr)

v1.0.81

Compare Source

  • Better error messages when using an invalid combination of serde attributes (#​1424, thanks @​hcpl)
  • Support deserializing tagged enums inside of untagged enums in formats that encode tagged enum variants by index, like MessagePack (#​1437, thanks @​daboross)

v1.0.80

Compare Source

  • Performance optimization for Vec::deserialize_in_place to deserialize elements in place (#​1411)

v1.0.79

Compare Source

  • Add serde(other) variant attribute for deserializing any variant that is not one of the others (#​1382)

    #[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

Compare Source

  • Fix panic deserializing flattened Value after flattened struct (#​1379)

v1.0.77

Compare Source

  • Fix internally tagged enum deserialization with unknown fields (#​1376, thanks @​dreid)

v1.0.76

Compare Source

v1.0.75

Compare Source

  • Adjust dependency version requirement to support building with -Z minimal-versions in CI (#​1367)

v1.0.74

Compare Source

v1.0.73

Compare Source

  • Fix the names of serialized fields when the Rust data structure uses a raw identifier (#​1362)

v1.0.72

Compare Source

  • Fix compilation of default-features = false, features = ["alloc", "rc"] feature combination (#​1359, thanks @​Pratyush)

v1.0.71

Compare Source

v1.0.70

Compare Source

  • Update --features alloc to work with nightly-2018-07-07 (#​1335)

v1.0.69

Compare Source

v1.0.68

Compare Source

v1.0.67

Compare Source

  • Implement Serialize for core::fmt::Arguments (#​1319)

v1.0.66

Compare Source

  • Implement Serialize and Deserialize for ! (#​544, unstable)
  • Support Duration in no-std mode on sufficiently new compilers (#​1123)
  • Improve compiler error messages (#​1297, thanks @​adamcrume)

v1.0.65

Compare Source

  • Do not panic when serializing a RefCell that is currently mutably borrowed (#​1300, thanks @​xfix)
  • Allow flattened fields after a flattened map to receive input fields (#​1299)

v1.0.64

Compare Source

  • Second attempt to work around docs.rs old compiler version (#​1295)

v1.0.63

Compare Source

  • Workaround to get docs.rs successfully building our docs with its old compiler (#​1294)

v1.0.62

Compare Source

  • Implement IntoDeserializer for i128 and u128 (#​1280)
  • Implement Copy for the primitive value deserializers (#​1287)
  • Implement Clone for primitive value deserializers even when the error type cannot be cloned (#​1287)

v1.0.61

Compare Source

  • Stabilize Deserialize impls for dynamically sized Rc / Arc (#​1266)
  • Stabilize Deserialize impl for Box<CStr> (#​1267)

v1.0.60

Compare Source

  • Add Serde impls for i128 and u128 when compiling with Rust 1.26+ (#​1263)
  • Stabilize Serde impls for std::num::NonZero* on Rust 1.28+ (#​1278, thanks @​SimonSapin)

v1.0.59

Compare Source

  • 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)

v1.0.58

Compare Source

  • Fix generated code for deserializing untagged newtype variant (#​1268)

v1.0.57

Compare Source

  • Remove unstable Serialize and Deserialize impls for NonZero<T> which has been removed from the most recent nightly compiler (#​1265)

v1.0.56

Compare Source

  • 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 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 or so, at which point it will become harder to roll back.

v1.0.55

Compare Source

  • Support formats that want to deserialize flattened identifiers as bytes (#​1257)

v1.0.54

Compare Source

  • Support flattened untagged Options in struct fields (#​1255)

v1.0.53

Compare Source

  • Support deserializing flattened untagged enum (#​1253)

v1.0.52

Compare Source

  • Allow overriding inferred bounds at the variant level using a bound attribute (#​1149)
  • Respect skip_serializing attribute in tuple structs and variants (#​1048)
  • Account for skip_serializing_if in computing tuple struct lengths (#​1049)
  • Improve error for struct deserialized from array that is too short (#​981)
  • Accept implicitly borrowed data inside of an Option field (#​1029)

v1.0.51

Compare Source

  • Fix the Deserialize implementation generated for an adjacently tagged enum with zero variants (#​785)
  • Improve error message when deriving Deserialize for a type that already has a 'de lifetime (#​893)
  • Add a #[serde(skip)] variant attribute to combine the skip_serializing and skip_deserializing variant attributes that already existed
  • Respect variant skip attributes when inferring type parameter bounds (#​892)

v1.0.50

Compare Source

  • Detect unsupported use of Deserialize on a dynamically sized struct ending in slice field (#​830)

v1.0.49

Compare Source

v1.0.48

Compare Source

  • Fix Serialize impl of an adjacently tagged empty tuple variant or struct variant (#​1247)

v1.0.47

Compare Source

  • Support flatten attribute inside of enums (#​1206)

v1.0.46

Compare Source

  • Support deserializing a flattened internally tagged enum (#​1189)

v1.0.45

Compare Source

  • Fix dead code warnings when generating remote impls (#​976)

Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

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.44` -> `^1.0.147` | --- ### Release Notes <details> <summary>serde-rs/serde</summary> ### [`v1.0.147`](https://github.com/serde-rs/serde/releases/tag/v1.0.147) - Add `serde::de::value::EnumAccessDeserializer` which transforms an `EnumAccess` into a `Deserializer` ([#&#8203;2305](https://github.com/serde-rs/serde/issues/2305)) ### [`v1.0.146`](https://github.com/serde-rs/serde/releases/tag/v1.0.146) - Allow internally tagged newtype variant to contain unit ([#&#8203;2303](https://github.com/serde-rs/serde/issues/2303), thanks [@&#8203;tage64](https://github.com/tage64)) ### [`v1.0.145`](https://github.com/serde-rs/serde/releases/tag/v1.0.145) - Allow RefCell\<T>, Mutex\<T>, and RwLock\<T> to be serialized regardless of whether T is `Sized` ([#&#8203;2282](https://github.com/serde-rs/serde/issues/2282), thanks [@&#8203;ChayimFriedman2](https://github.com/ChayimFriedman2)) ### [`v1.0.144`](https://github.com/serde-rs/serde/releases/tag/v1.0.144) - Change atomic ordering used by Serialize impl of atomic types to match ordering used by Debug impl of those same types ([#&#8203;2263](https://github.com/serde-rs/serde/issues/2263), thanks [@&#8203;taiki-e](https://github.com/taiki-e)) ### [`v1.0.143`](https://github.com/serde-rs/serde/releases/tag/v1.0.143) - Invert build.rs cfgs in serde_test to produce the most modern configuration in the default case ([#&#8203;2253](https://github.com/serde-rs/serde/issues/2253), thanks [@&#8203;taiki-e](https://github.com/taiki-e)) ### [`v1.0.142`](https://github.com/serde-rs/serde/releases/tag/v1.0.142) - Add keywords to crates.io metadata ### [`v1.0.141`](https://github.com/serde-rs/serde/releases/tag/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) - Invert serde_derive cfgs to convenience non-Cargo builds on a modern toolchain ([#&#8203;2251](https://github.com/serde-rs/serde/issues/2251), thanks [@&#8203;taiki-e](https://github.com/taiki-e)) ### [`v1.0.139`](https://github.com/serde-rs/serde/releases/tag/v1.0.139) - Add `new` constructor function for all `IntoDeserializer` impls ([#&#8203;2246](https://github.com/serde-rs/serde/issues/2246)) ### [`v1.0.138`](https://github.com/serde-rs/serde/releases/tag/v1.0.138) - Documentation improvements ### [`v1.0.137`](https://github.com/serde-rs/serde/releases/tag/v1.0.137) - Update documentation links to some data formats whose repos have moved ([#&#8203;2201](https://github.com/serde-rs/serde/issues/2201), thanks [@&#8203;atouchet](https://github.com/atouchet)) - Fix declared `rust-version` of serde and serde_test ([#&#8203;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 ([#&#8203;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 ([#&#8203;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 ([#&#8203;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 ([#&#8203;2141](https://github.com/serde-rs/serde/issues/2141), thanks [@&#8203;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 ([#&#8203;2116](https://github.com/serde-rs/serde/issues/2116), thanks [@&#8203;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 ([#&#8203;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 ([#&#8203;2078](https://github.com/serde-rs/serde/issues/2078), [#&#8203;2079](https://github.com/serde-rs/serde/issues/2079), [#&#8203;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+ ([#&#8203;2076](https://github.com/serde-rs/serde/issues/2076), thanks [@&#8203;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 ([#&#8203;2026](https://github.com/serde-rs/serde/issues/2026), thanks [@&#8203;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` ([#&#8203;2001](https://github.com/serde-rs/serde/issues/2001), thanks [@&#8203;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` ([#&#8203;1997](https://github.com/serde-rs/serde/issues/1997), thanks [@&#8203;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 ([#&#8203;1830](https://github.com/serde-rs/serde/issues/1830), thanks [@&#8203;taiki-e](https://github.com/taiki-e)) - Allow floats to be deserialized from ints in tagged unions ([#&#8203;1842](https://github.com/serde-rs/serde/issues/1842), thanks [@&#8203;Timmmm](https://github.com/Timmmm)) - Support `Self` inside fields that use serialize_with ([#&#8203;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] ([#&#8203;1898](https://github.com/serde-rs/serde/issues/1898), thanks [@&#8203;Mingun](https://github.com/Mingun)) - Handle unrecognized numeric field keys during deserialization of a field_identifier, equivalently to string field keys ([#&#8203;1914](https://github.com/serde-rs/serde/issues/1914), thanks [@&#8203;Mingun](https://github.com/Mingun)) - Add attribute to override default deserialization failure expectation message ([#&#8203;1916](https://github.com/serde-rs/serde/issues/1916), thanks [@&#8203;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 ([#&#8203;1918](https://github.com/serde-rs/serde/issues/1918), thanks [@&#8203;Mingun](https://github.com/Mingun)) - Produce more accurate location information on test failures from `serde_test` crate ([#&#8203;1920](https://github.com/serde-rs/serde/issues/1920), thanks [@&#8203;Mingun](https://github.com/Mingun)) - Improve diagnostic on failure to parse a `rename_all` attribute ([#&#8203;1960](https://github.com/serde-rs/serde/issues/1960), [#&#8203;1961](https://github.com/serde-rs/serde/issues/1961)) - Eliminate unnecessary trait bounds on some value Deserializer impls ([#&#8203;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 ([#&#8203;1917](https://github.com/serde-rs/serde/issues/1917), thanks [@&#8203;Mingun](https://github.com/Mingun)) - Fix panic when deserializing `Duration` with nanoseconds that cause the seconds counter to overflow ([#&#8203;1958](https://github.com/serde-rs/serde/issues/1958), thanks [@&#8203;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 ([#&#8203;1955](https://github.com/serde-rs/serde/issues/1955), thanks [@&#8203;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 ([#&#8203;1926](https://github.com/serde-rs/serde/issues/1926), thanks [@&#8203;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) ### [`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 ([#&#8203;1888](https://github.com/serde-rs/serde/issues/1888), thanks [@&#8203;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 `()` ([#&#8203;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)` ([#&#8203;1813](https://github.com/serde-rs/serde/issues/1813), thanks [@&#8203;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 ([#&#8203;1827](https://github.com/serde-rs/serde/issues/1827), thanks [@&#8203;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 ([#&#8203;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 }` ([#&#8203;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 ([#&#8203;1791](https://github.com/serde-rs/serde/issues/1791), thanks [@&#8203;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 ([#&#8203;1553](https://github.com/serde-rs/serde/issues/1553), [#&#8203;1706](https://github.com/serde-rs/serde/issues/1706), thanks [@&#8203;zth0](https://github.com/zth0)) - Avoid panicking when a SystemTime older than UNIX_EPOCH is serialized ([#&#8203;1702](https://github.com/serde-rs/serde/issues/1702), thanks [@&#8203;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` ([#&#8203;1705](https://github.com/serde-rs/serde/issues/1705), thanks [@&#8203;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 ([#&#8203;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 ([#&#8203;1768](https://github.com/serde-rs/serde/issues/1768), thanks [@&#8203;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 ([#&#8203;1754](https://github.com/serde-rs/serde/issues/1754), thanks [@&#8203;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 ### [`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 ([#&#8203;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>` ([#&#8203;1656](https://github.com/serde-rs/serde/issues/1656), thanks [@&#8203;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 ([#&#8203;1617](https://github.com/serde-rs/serde/issues/1617), thanks [@&#8203;arilotter](https://github.com/arilotter)) - Support skip attribute inside of newtype variants ([#&#8203;1622](https://github.com/serde-rs/serde/issues/1622), thanks [@&#8203;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 ([#&#8203;1589](https://github.com/serde-rs/serde/issues/1589), thanks [@&#8203;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) ([#&#8203;1526](https://github.com/serde-rs/serde/issues/1526), thanks [@&#8203;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 ([#&#8203;1572](https://github.com/serde-rs/serde/issues/1572) and [#&#8203;1581](https://github.com/serde-rs/serde/issues/1581), thanks [@&#8203;Roguelazer](https://github.com/Roguelazer)) - Make "alloc" feature work on stable Rust 1.36+ ([#&#8203;1576](https://github.com/serde-rs/serde/issues/1576), thanks [@&#8203;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 ([#&#8203;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 ([#&#8203;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 ([#&#8203;1543](https://github.com/serde-rs/serde/issues/1543), thanks [@&#8203;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 ([#&#8203;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 ([#&#8203;1499](https://github.com/serde-rs/serde/issues/1499), thanks [@&#8203;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> ([#&#8203;1486](https://github.com/serde-rs/serde/issues/1486), thanks [@&#8203;vorot93](https://github.com/vorot93)) - Fix a Clippy lint triggered within generated code involving flatten + deny_unknown_fields ([#&#8203;1492](https://github.com/serde-rs/serde/issues/1492), thanks [@&#8203;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 ([#&#8203;1468](https://github.com/serde-rs/serde/issues/1468), thanks [@&#8203;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> ([#&#8203;1466](https://github.com/serde-rs/serde/issues/1466), thanks [@&#8203;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 ([#&#8203;1458](https://github.com/serde-rs/serde/issues/1458), thanks [@&#8203;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 ([#&#8203;1447](https://github.com/serde-rs/serde/issues/1447), thanks [@&#8203;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 ([#&#8203;1448](https://github.com/serde-rs/serde/issues/1448), thanks [@&#8203;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 ([#&#8203;1442](https://github.com/serde-rs/serde/issues/1442), thanks [@&#8203;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 ([#&#8203;1424](https://github.com/serde-rs/serde/issues/1424), thanks [@&#8203;hcpl](https://github.com/hcpl)) - Support deserializing tagged enums inside of untagged enums in formats that encode tagged enum variants by index, like MessagePack ([#&#8203;1437](https://github.com/serde-rs/serde/issues/1437), thanks [@&#8203;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 ([#&#8203;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 ([#&#8203;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 ([#&#8203;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 ([#&#8203;1376](https://github.com/serde-rs/serde/issues/1376), thanks [@&#8203;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) ([#&#8203;1371](https://github.com/serde-rs/serde/issues/1371), thanks [@&#8203;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 ([#&#8203;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 ([#&#8203;1365](https://github.com/serde-rs/serde/issues/1365), thanks [@&#8203;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 ([#&#8203;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 ([#&#8203;1359](https://github.com/serde-rs/serde/issues/1359), thanks [@&#8203;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) ([#&#8203;1347](https://github.com/serde-rs/serde/issues/1347), thanks [@&#8203;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 ([#&#8203;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 ([#&#8203;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) ### [`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 ([#&#8203;1324](https://github.com/serde-rs/serde/issues/1324), thanks [@&#8203;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 ([#&#8203;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 `!` ([#&#8203;544](https://github.com/serde-rs/serde/issues/544), unstable) - Support Duration in no-std mode on sufficiently new compilers ([#&#8203;1123](https://github.com/serde-rs/serde/issues/1123)) - Improve compiler error messages ([#&#8203;1297](https://github.com/serde-rs/serde/issues/1297), thanks [@&#8203;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 ([#&#8203;1300](https://github.com/serde-rs/serde/issues/1300), thanks [@&#8203;xfix](https://github.com/xfix)) - Allow flattened fields after a flattened map to receive input fields ([#&#8203;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 ([#&#8203;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 ([#&#8203;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 ([#&#8203;1280](https://github.com/serde-rs/serde/issues/1280)) - Implement Copy for the primitive value deserializers ([#&#8203;1287](https://github.com/serde-rs/serde/issues/1287)) - Implement Clone for primitive value deserializers even when the error type cannot be cloned ([#&#8203;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 ([#&#8203;1266](https://github.com/serde-rs/serde/issues/1266)) - Stabilize Deserialize impl for Box\<CStr> ([#&#8203;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+ ([#&#8203;1263](https://github.com/serde-rs/serde/issues/1263)) - Stabilize Serde impls for std::num::NonZero\* on Rust 1.28+ ([#&#8203;1278](https://github.com/serde-rs/serde/issues/1278), thanks [@&#8203;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)` ([#&#8203;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 ([#&#8203;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 ([#&#8203;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 [#&#8203;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 or so, at which point it will become harder to roll back. ### [`v1.0.55`](https://github.com/serde-rs/serde/releases/tag/v1.0.55) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.54...v1.0.55) - Support formats that want to deserialize flattened identifiers as bytes ([#&#8203;1257](https://github.com/serde-rs/serde/issues/1257)) ### [`v1.0.54`](https://github.com/serde-rs/serde/releases/tag/v1.0.54) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.53...v1.0.54) - Support flattened untagged Options in struct fields ([#&#8203;1255](https://github.com/serde-rs/serde/issues/1255)) ### [`v1.0.53`](https://github.com/serde-rs/serde/releases/tag/v1.0.53) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.52...v1.0.53) - Support deserializing flattened untagged enum ([#&#8203;1253](https://github.com/serde-rs/serde/issues/1253)) ### [`v1.0.52`](https://github.com/serde-rs/serde/releases/tag/v1.0.52) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.51...v1.0.52) - Allow overriding inferred bounds at the variant level using a `bound` attribute ([#&#8203;1149](https://github.com/serde-rs/serde/issues/1149)) - Respect `skip_serializing` attribute in tuple structs and variants ([#&#8203;1048](https://github.com/serde-rs/serde/issues/1048)) - Account for `skip_serializing_if` in computing tuple struct lengths ([#&#8203;1049](https://github.com/serde-rs/serde/issues/1049)) - Improve error for struct deserialized from array that is too short ([#&#8203;981](https://github.com/serde-rs/serde/issues/981)) - Accept implicitly borrowed data inside of an `Option` field ([#&#8203;1029](https://github.com/serde-rs/serde/issues/1029)) ### [`v1.0.51`](https://github.com/serde-rs/serde/releases/tag/v1.0.51) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.50...v1.0.51) - Fix the Deserialize implementation generated for an adjacently tagged enum with zero variants ([#&#8203;785](https://github.com/serde-rs/serde/issues/785)) - Improve error message when deriving Deserialize for a type that already has a `'de` lifetime ([#&#8203;893](https://github.com/serde-rs/serde/issues/893)) - Add a `#[serde(skip)]` variant attribute to combine the `skip_serializing` and `skip_deserializing` variant attributes that already existed - Respect variant skip attributes when inferring type parameter bounds ([#&#8203;892](https://github.com/serde-rs/serde/issues/892)) ### [`v1.0.50`](https://github.com/serde-rs/serde/releases/tag/v1.0.50) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.49...v1.0.50) - Detect unsupported use of Deserialize on a dynamically sized struct ending in slice field ([#&#8203;830](https://github.com/serde-rs/serde/issues/830)) ### [`v1.0.49`](https://github.com/serde-rs/serde/releases/tag/v1.0.49) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.48...v1.0.49) - Add serialize and deserialize impls for [`std::rc::Weak`](https://doc.rust-lang.org/std/rc/struct.Weak.html) and [`std::sync::Weak`](https://doc.rust-lang.org/std/sync/struct.Weak.html) ([#&#8203;1251](https://github.com/serde-rs/serde/issues/1251)) ### [`v1.0.48`](https://github.com/serde-rs/serde/releases/tag/v1.0.48) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.47...v1.0.48) - Fix Serialize impl of an adjacently tagged empty tuple variant or struct variant ([#&#8203;1247](https://github.com/serde-rs/serde/issues/1247)) ### [`v1.0.47`](https://github.com/serde-rs/serde/releases/tag/v1.0.47) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.46...v1.0.47) - Support `flatten` attribute inside of enums ([#&#8203;1206](https://github.com/serde-rs/serde/issues/1206)) ### [`v1.0.46`](https://github.com/serde-rs/serde/releases/tag/v1.0.46) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.45...v1.0.46) - Support deserializing a flattened internally tagged enum ([#&#8203;1189](https://github.com/serde-rs/serde/issues/1189)) ### [`v1.0.45`](https://github.com/serde-rs/serde/releases/tag/v1.0.45) [Compare Source](https://github.com/serde-rs/serde/compare/v1.0.44...v1.0.45) - Fix dead code warnings when generating remote impls ([#&#8203;976](https://github.com/serde-rs/serde/issues/976)) </details> --- ### Configuration 📅 **Schedule**: At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
kjuulh force-pushed renovate/serde-1.x from ae418cdeb7 to 4192da4615 2022-10-26 17:13:36 +02:00 Compare
kjuulh force-pushed renovate/serde-1.x from 4192da4615 to 9c336b0fa3 2022-10-26 17:40:33 +02:00 Compare
kjuulh changed title from Update Rust crate serde to ^1.0.147 to Update Rust crate serde to ^1.0.147 - autoclosed 2022-10-26 20:23:03 +02:00
kjuulh closed this pull request 2022-10-26 20:23:03 +02:00
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing

Pull request closed

Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: kjuulh/roguelike#3
No description provided.