Skip to content

Comments

Update strum requirement from 0.27 to 0.28 in /crates/lib#1238

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/cargo/crates/lib/strum-0.28
Open

Update strum requirement from 0.27 to 0.28 in /crates/lib#1238
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/cargo/crates/lib/strum-0.28

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 23, 2026

Updates the requirements on strum to permit the latest version.

Changelog

Sourced from strum's changelog.

0.28.0

  • #461: Allow any kind of passthrough attributes on EnumDiscriminants.

    • Previously only list-style attributes (e.g. #[strum_discriminants(derive(...))]) were supported. Now path-only (e.g. #[strum_discriminants(non_exhaustive)]) and name/value (e.g. #[strum_discriminants(doc = "foo")]) attributes are also supported.
  • #462: Add missing #[automatically_derived] to generated impls not covered by #444.

  • #466: Bump MSRV to 1.71, required to keep up with updated syn and windows-sys dependencies. This is a breaking change if you're on an old version of rust.

  • #469: Use absolute paths in generated proc macro code to avoid potential name conflicts.

  • #465: Upgrade phf dependency to v0.13.

  • #473: Fix cargo fmt / clippy issues and add GitHub Actions CI.

  • #477: strum::ParseError now implements core::fmt::Display instead std::fmt::Display to make it #[no_std] compatible. Note the Error trait wasn't available in core until 1.81 so strum::ParseError still only implements that in std.

  • #476: Breaking Change - EnumString now implements From<&str> (infallible) instead of TryFrom<&str> when the enum has a #[strum(default)] variant. This more accurately reflects that parsing cannot fail in that case. If you need the old TryFrom behavior, you can opt back in using parse_error_ty and parse_error_fn:

    #[derive(EnumString)]
    #[strum(parse_error_ty = strum::ParseError, parse_error_fn = make_error)]
    pub enum Color {
        Red,
        #[strum(default)]
        Other(String),
    }
    fn make_error(x: &str) -> strum::ParseError {
    strum::ParseError::VariantNotFound
    }

  • #431: Fix bug where EnumString ignored the parse_err_ty attribute when the enum had a #[strum(default)] variant.

  • #474: EnumDiscriminants will now copy default over from the original enum to the Discriminant enum.

    #[derive(Debug, Default, EnumDiscriminants)]
    #[strum_discriminants(derive(Default))] // <- Remove this in 0.28.
    enum MyEnum {
        #[default] // <- Will be the #[default] on the MyEnumDiscriminant
        #[strum_discriminants(default)] // <- Remove this in 0.28
        Variant0,
        Variant1 { a: NonDefault },
    }

... (truncated)

Commits
  • 7376771 Peternator7/0.28 (#475)
  • 26e63cd Display exists in core (#477)
  • 9334c72 Make TryFrom and FromStr infallible if there's a default (#476)
  • 0ccbbf8 Honor parse_err_ty attribute when the enum has a default variant (#431)
  • 2c9e5a9 Automatically add Default implementation to EnumDiscriminant if it exists on ...
  • e241243 Fix existing cargo fmt + clippy issues and add GH actions (#473)
  • 639b67f feat: allow any kind of passthrough attributes on EnumDiscriminants (#461)
  • 0ea1e2d docs: Fix typo (#463)
  • 36c051b Upgrade phf to v0.13 (#465)
  • 9328b38 Use absolute paths in proc macro (#469)
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [strum](https://github.com/Peternator7/strum) to permit the latest version.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](Peternator7/strum@v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: strum
  dependency-version: 0.28.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file rust Pull requests that update Rust code labels Feb 23, 2026
@coveralls
Copy link

Coverage Status

coverage: 90.097%. remained the same
when pulling f4420e0 on dependabot/cargo/crates/lib/strum-0.28
into 0829ee9 on main.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update Rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant