Skip to content

fix(deps): update rust crate strum to 0.28.0 - #43

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/strum-monorepo
Open

fix(deps): update rust crate strum to 0.28.0#43
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/strum-monorepo

Conversation

@renovate

@renovate renovate Bot commented Mar 11, 2025

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change
strum dependencies minor 0.26.30.28.0

Release Notes

Peternator7/strum (strum)

v0.28.0

Compare Source

  • #​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 },
    }

v0.27.2

Compare Source

  • #​141: Adding support for doc comments on EnumDiscriminants generated type.

    • The doc comment will be copied from the variant on the type itself.
  • #​435:allow discriminants on empty enum.

  • #​443: Change enum table callbacks to FnMut.

  • #​444: Add #[automatically_derived] to the impls by @​dandedotdev in #​444

    • This should make the linter less noisy with warnings in generated code.
  • #​440: Implement a suffix attribute for serialization of enum variants.

    #[derive(strum::Display)]
    #[strum(suffix=".json")]
    #[strum(serialize_all="snake_case")]
    enum StorageConfiguration {
      PostgresProvider,
      S3StorageProvider,
      AzureStorageProvider,
    }
    
    fn main() {
      let response = SurveyResponse::Other("It was good".into());
      println!("Loading configuration from: {}", StorageConfiguration::PostgresProvider);
      // prints: Loaded Configuration from: postgres_provider.json
    }
  • #​446: Drop needless rustversion dependency.

v0.27.1

Compare Source

  • #​414: Fix docrs build error.

  • #​417: Mention parse_error_ty and parse_error_fn that had been
    left out of the docs accidentally.

  • #​421#​331: Implement
    #[strum(transparent)] attribute on IntoStaticStr, Display and AsRefStr that forwards the implmenentation to
    the inner value. Note that for static strings, the inner value must be convertible to an &'static str.

    #[derive(strum::Display)]
    enum SurveyResponse {
      Yes,
      No,
      #[strum(transparent)]
      Other(String)
    }
    
    fn main() {
      let response = SurveyResponse::Other("It was good".into());
      println!("Question: Did you have fun?");
      println!("Answer: {}", response);
      // prints: Answer: It was good
    }

v0.27.0

Compare Source

Highlights
  • #​407: Display is now correctly derived in [no_std] projects.
  • #​402: EnumIter now implements Send + Sync
  • #​400: EnumTryAs now handles attributes on variant fields correctly.
  • #​398: strum is now on rust 2021
  • #​391: EnumProperties correctly implements get_bool and get_int
    finally. 🎉
  • #​380: 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.
    • #​410: These attributes accept a Path rather than a String
      to improve behavior with rust-analyzer.
Breaking Changes
  • #​384: MSRV is now 1.66.1
  • #​391: EnumProperties doesn't provide default implementations anymore.
    This would have required you to manually implement this trait which should be very uncommon.

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • 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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot changed the title Update Rust crate strum to 0.27.0 fix(deps): update rust crate strum to 0.27.0 Mar 12, 2025
@renovate renovate Bot changed the title fix(deps): update rust crate strum to 0.27.0 Update Rust crate strum to 0.27.0 Mar 12, 2025
@renovate renovate Bot changed the title Update Rust crate strum to 0.27.0 fix(deps): update rust crate strum to 0.27.0 Mar 12, 2025
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from 55cb11f to e1cc30a Compare March 17, 2025 16:31
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from e1cc30a to 942c132 Compare May 13, 2025 00:53
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from 942c132 to 1b58866 Compare August 10, 2025 14:35
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch 9 times, most recently from ba96436 to 57f7509 Compare September 30, 2025 17:12
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch 7 times, most recently from d85a179 to a070513 Compare October 9, 2025 00:55
@kota65535
kota65535 force-pushed the main branch 4 times, most recently from f7cfeba to 58c508b Compare November 14, 2025 01:30
@kota65535
kota65535 force-pushed the main branch 3 times, most recently from a908fd6 to a97f62f Compare November 17, 2025 12:01
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from a070513 to f7d26bd Compare December 10, 2025 16:45
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from f7d26bd to 5b0dd2f Compare December 31, 2025 16:28
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from 5b0dd2f to adb7d60 Compare February 2, 2026 21:07
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from adb7d60 to 9c01cdf Compare February 12, 2026 15:32
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from 9c01cdf to da7b19a Compare February 22, 2026 16:39
@renovate renovate Bot changed the title fix(deps): update rust crate strum to 0.27.0 fix(deps): update rust crate strum to 0.28.0 Feb 22, 2026
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from da7b19a to 8acb5f8 Compare February 25, 2026 09:44
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch 2 times, most recently from 0fc4ef4 to fe8d859 Compare March 15, 2026 05:01
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from fe8d859 to 51a43e4 Compare April 1, 2026 01:06
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from 51a43e4 to 31f4285 Compare May 18, 2026 20:58
@renovate renovate Bot changed the title fix(deps): update rust crate strum to 0.28.0 fix(deps): update strum monorepo to 0.28.0 Jun 2, 2026
@renovate renovate Bot changed the title fix(deps): update strum monorepo to 0.28.0 fix(deps): update strum monorepo Jun 22, 2026
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from 31f4285 to e15f04f Compare June 25, 2026 02:28
@renovate renovate Bot changed the title fix(deps): update strum monorepo fix(deps): update rust crate strum to 0.28.0 Jun 25, 2026
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from e15f04f to 6968cf2 Compare July 20, 2026 20:54
@renovate
renovate Bot force-pushed the renovate/strum-monorepo branch from 6968cf2 to 21b53d3 Compare August 12, 2026 00:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants