darling breaking changes
cargo35 curated breaking changes across major versions of darling. Use this as a migration checklist before bumping dependencies.
- 0.5.0 \u2192 0.6.0breaking
Added dedicated `derive(FromMetaItem)` which panics and redirects users to `FromMeta`
- 0.5.0 \u2192 0.6.0renamed
Renamed `FromMetaItem` to `FromMeta`, and renamed `from_meta_item` method to `from_meta`
- 0.2.2 \u2192 0.3.0breaking
Update `syn` to 0.12 [#20](https://github.com/TedDriggs/darling/pull/20). Thanks to @Eijebong
- 0.2.2 \u2192 0.3.0breaking
Update `quote` to 0.4 [#20](https://github.com/TedDriggs/darling/pull/20). Thanks to @Eijebong
- 0.2.2 \u2192 0.3.0renamed
Rename magic field `body` in derived `FromDeriveInput` structs to `data` to stay in sync with `syn`
- 0.2.2 \u2192 0.3.0renamed
Rename magic field `data` in derived `FromVariant` structs to `fields` to stay in sync with `syn`
- 0.21.3 \u2192 0.22.0behavior
Add `#[darling(default = || expr(val))]` support, allowing a closure where a path was previously required [#380](https://github.com/TedDriggs/darling/pull/380)
- 0.21.3 \u2192 0.22.0breaking
Preserve span information for paths given to `darling::util::Callable` as literal strings
- 0.21.3 \u2192 0.22.0breaking
Fix some documentation typos
- 0.21.3 \u2192 0.22.0removed
**BREAKING:** Remove `fnv` dependency, as runtime performance gain does not justify additional dependency. This was exposed to users of `darling::usage`, so it may be breaking for them [#373](https://github.com/TedDriggs/darling/pull/373)
- 0.20.11 \u2192 0.21.0breaking
Impl `UsesTypeParams` and `UsesLifetimes` for `WithOriginal` [#215](https://github.com/TedDriggs/darling/issues/215)
- 0.20.11 \u2192 0.21.0breaking
Update error message emitted by `<() as FromMeta>::from_list` to allow use of `()` as a `#[darling(flatten)]` target [#353](https://github.com/TedDriggs/darling/issues/353)
- 0.20.11 \u2192 0.21.0breaking
Add `util::PreservedStrExpr` [#346](https://github.com/TedDriggs/darling/pull/346)
- 0.20.11 \u2192 0.21.0breaking
Make `impl FromMeta for syn::TypePath` support both quote-wrapped and bare values [#351](https://github.com/TedDriggs/darling/issues/351)
- 0.20.11 \u2192 0.21.0breaking
Add `#[darling(derive_syn_parse)]` to also impl `syn::parse::Parse` when deriving `FromMeta` [#285](https://github.com/TedDriggs/darling/issues/285)
- 0.20.11 \u2192 0.21.0breaking
Add `SpannedValue::into_inner` [#342](https://github.com/TedDriggs/darling/issues/342)
- 0.20.11 \u2192 0.21.0breaking
Support parsing attributes which contain keywords [#238](https://github.com/TedDriggs/darling/issues/238)
- 0.20.11 \u2192 0.21.0breaking
Potentially breaking: Emit error when an attribute path is present in both `attributes` and `forward_attrs`. [#336](https://github.com/TedDriggs/darling/issues/336)
- 0.14.4 \u2192 0.20.0breaking
The MSRV (minimum supported Rust version) is now 1.56, because of syn.
- 0.14.4 \u2192 0.20.0breaking
Replace all occurrences of syn::NestedMeta with darling::ast::NestedMeta.
- 0.14.4 \u2192 0.20.0breaking
In GenericParamExt, `LifetimeDef` is now `LifetimeParam`.
- 0.14.4 \u2192 0.20.0breaking
Flag and SpannedValue no longer implement `syn::spanned::Spanned`.
- 0.14.4 \u2192 0.20.0deprecated
Replacement for the deprecated AttributeArgs:
- 0.14.4 \u2192 0.20.0renamed
In GenericParamExt, `as_lifetime_def` is renamed to `as_lifetime_param`.
- 0.13.4 \u2192 0.14.0breaking
Bump `syn` dependency to 1.0.91 [#180](https://github.com/TedDriggs/darling/pull/180)
- 0.13.4 \u2192 0.14.0breaking
Bump `quote` dependency to 1.0.18 [#180](https://github.com/TedDriggs/darling/pull/180)
- 0.13.4 \u2192 0.14.0breaking
Bump `proc-macro2` dependency to 1.0.37 [#180](https://github.com/TedDriggs/darling/pull/180)
- 0.13.4 \u2192 0.14.0breaking
Improve validation of enum shapes [#178](https://github.com/TedDriggs/darling/pull/178)
- 0.13.4 \u2192 0.14.0removed
**BREAKING CHANGE:** Remove many trait impls from `util::Flag`.
- 0.13.4 \u2192 0.14.0removed
Remove need for `#[darling(default)]` on `Option<T>` and `Flag` fields [#161](https://github.com/TedDriggs/darling/issues/161)
- 0.11.0 \u2192 0.12.0breaking
Add `impl From<syn::Error> for Error` to losslessly propagate `syn` errors [#116](https://github.com/TedDriggs/darling/pull/116)
- 0.11.0 \u2192 0.12.0breaking
Add `darling::util::parse_attribute_to_meta_list` to provide useful errors during attribute parsing [#113](https://github.com/TedDriggs/darling/pull/113)
- 0.11.0 \u2192 0.12.0breaking
Impl `syn::spanned::Spanned` for `darling::util::SpannedValue` [#113](https://github.com/TedDriggs/darling/pull/113)
- 0.11.0 \u2192 0.12.0breaking
POSSIBLY BREAKING: Derived impls of `FromDeriveInput`, `FromField`, `FromVariant`, and `FromTypeParam` will now error when encountering an attribute `darling` has been asked to parse that isn't a supported shape.
- 0.10.3 \u2192 0.11.0breaking
Bump minor version due to unexpected breaking change [#107](https://github.com/TedDriggs/darling/issues/107)
Get this data programmatically \u2014 free, no authentication.
curl https://depscope.dev/api/breaking/cargo/darling