Skip to content

Fixed issue with derive_more Display Implementations#16298

Merged
alice-i-cecile merged 1 commit intobevyengine:mainfrom
bushrat011899:FixDisplayImplementationsFromThiserror
Nov 8, 2024
Merged

Fixed issue with derive_more Display Implementations#16298
alice-i-cecile merged 1 commit intobevyengine:mainfrom
bushrat011899:FixDisplayImplementationsFromThiserror

Conversation

@bushrat011899
Copy link
Copy Markdown
Contributor

Objective

  • Fixed issue where thiserror #[error(...)] attributes were improperly converted to derive_more #[display(...)] equivalents in certain cases with a tuple struct/enum variant.

Solution

  • Used re/#\[display\(.*\{[0-9]+\}.*\)\]/ to find occurences of using {0} where {_0} was intended (checked for other field indexes too)and updated accordingly.

Testing

  • cargo check
  • CI

Notes

This was discovered by @dtolnay in this comment.

For tuple structs and tuple enum variants, using `{0}` in a format-string doesn't refer to field zero, instead argument zero. This can go unnoticed if the format string already includes other (valid) fields.

Found all occurrences using re/#\[display\(.*\{[0-9]+\}.*\)\]/ and updated them to include an underscore, to refer to the field as intended.

This was discovered by @dtolnay.
@bushrat011899 bushrat011899 added C-Bug An unexpected or incorrect behavior D-Trivial Nice and easy! A great choice to get started with Bevy A-Diagnostics Logging, crash handling, error reporting and performance analysis X-Uncontroversial This work is generally agreed upon S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Nov 8, 2024
@bushrat011899 bushrat011899 added this to the 0.15 milestone Nov 8, 2024
@alice-i-cecile alice-i-cecile added S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it and removed S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Nov 8, 2024
@alice-i-cecile alice-i-cecile added this pull request to the merge queue Nov 8, 2024
Merged via the queue into bevyengine:main with commit d143da3 Nov 8, 2024
mockersf pushed a commit that referenced this pull request Nov 11, 2024
# Objective

- Fixed issue where `thiserror` `#[error(...)]` attributes were
improperly converted to `derive_more` `#[display(...)]` equivalents in
certain cases with a tuple struct/enum variant.

## Solution

- Used `re/#\[display\(.*\{[0-9]+\}.*\)\]/` to find occurences of using
`{0}` where `{_0}` was intended (checked for other field indexes too)and
updated accordingly.

## Testing

- `cargo check`
- CI

## Notes

This was discovered by @dtolnay in [this
comment](#15772 (comment)).
ecoskey pushed a commit to ecoskey/bevy that referenced this pull request Dec 2, 2024
…16298)

# Objective

- Fixed issue where `thiserror` `#[error(...)]` attributes were
improperly converted to `derive_more` `#[display(...)]` equivalents in
certain cases with a tuple struct/enum variant.

## Solution

- Used `re/#\[display\(.*\{[0-9]+\}.*\)\]/` to find occurences of using
`{0}` where `{_0}` was intended (checked for other field indexes too)and
updated accordingly.

## Testing

- `cargo check`
- CI

## Notes

This was discovered by @dtolnay in [this
comment](bevyengine#15772 (comment)).
ecoskey pushed a commit to ecoskey/bevy that referenced this pull request Jan 6, 2025
…16298)

# Objective

- Fixed issue where `thiserror` `#[error(...)]` attributes were
improperly converted to `derive_more` `#[display(...)]` equivalents in
certain cases with a tuple struct/enum variant.

## Solution

- Used `re/#\[display\(.*\{[0-9]+\}.*\)\]/` to find occurences of using
`{0}` where `{_0}` was intended (checked for other field indexes too)and
updated accordingly.

## Testing

- `cargo check`
- CI

## Notes

This was discovered by @dtolnay in [this
comment](bevyengine#15772 (comment)).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Diagnostics Logging, crash handling, error reporting and performance analysis C-Bug An unexpected or incorrect behavior D-Trivial Nice and easy! A great choice to get started with Bevy S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it X-Uncontroversial This work is generally agreed upon

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants