fix(deps): update rust crate strum to 0.27 #1911
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.25
->0.27
Release Notes
Peternator7/strum (strum)
v0.27.2
Compare Source
#141: Adding support for doc comments on
EnumDiscriminants
generated type.#435:allow discriminants on empty enum.
#443: Change enum table callbacks to FnMut.
#444: Add
#[automatically_derived]
to theimpl
s by @dandedotdev in #444#440: Implement a
suffix
attribute for serialization of enum variants.#446: Drop needless
rustversion
dependency.v0.27.1
Compare Source
#414: Fix docrs build error.
#417: Mention
parse_error_ty
andparse_error_fn
that had beenleft out of the docs accidentally.
#421#331: Implement
#[strum(transparent)]
attribute onIntoStaticStr
,Display
andAsRefStr
that forwards the implmenentation tothe inner value. Note that for static strings, the inner value must be convertible to an
&'static str
.v0.27.0
Compare Source
Highlights
Display
is now correctly derived in[no_std]
projects.EnumIter
now implementsSend + Sync
EnumTryAs
now handles attributes on variant fields correctly.strum
is now on rust 2021EnumProperties
correctly implementsget_bool
andget_int
finally. 🎉
FromString
now supports 2 additional attributes,parse_error_ty
and
parse_error_fn
that can be added to use a custom error type rather than the default strum error message.Path
rather than aString
to improve behavior with rust-analyzer.
Breaking Changes
EnumProperties
doesn't provide default implementations anymore.This would have required you to manually implement this trait which should be very uncommon.
v0.26.3
Compare Source
EnumTable
because it's going to be deprecated in the nextversion.
itertools
by using the fullyqualified name rather than the inherent method.
string interpolation.
#[strum(to_string = "Field 0: {0}, Field 1: {1})")]
will now work for tuple variantsv0.26.2
Compare Source
EnumTryAs
AsRefStr
. Technically a breaking change,but
prefix
was just added in0.26.0
so it's a newer feature and it makes the feature more consisent in general.v0.26.1
core
instead ofstd
in VariantArray.v0.26.0
Breaking Changes
EnumVariantNames
macro has been renamedVariantNames
. The deprecation warning should steer you inthe right direction for fixing the warning.
added the implementation in your code.
Display
now supports format strings using named fields in the enum variant. This should be a no-op for most code.However, if you were outputting a string like
"Hello {field}"
, this will now be interpretted as a format string.closer to a mirror of the original and that's always the goal.
New features
The
VariantArray
macro has been added. This macro adds an associated constantVARIANTS
to your enum. The constantis a
&'static [Self]
slice so that you can access all the variants of your enum. This only works on enums that onlyhave unit variants.
The
EnumTable
macro has been experimentally added. This macro adds a new type that stores an item for each variantof the enum. This is useful for storing a value for each variant of an enum. This is an experimental feature because
I'm not convinced the current api surface area is correct.
Display
has 2 new features:the
strum(prefix = "some_value")
attribute on an enum now allows you to prepend a string onto everyvariant when you serialize it.
Custom
to_string
andserialize
attributes now support string interopolation on serialization.PR's Merged
std::fmt::Debug
VariantArray
EnumTable
macro to generate a mapping between fieldless variants and data.Configuration
📅 Schedule: Branch creation - Only on Sunday ( * * * * 0 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ 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.
This PR has been generated by Renovate Bot.