feature-gated `System::refresh_hotpatch` with no default impl is inconvenient for crate authors
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 16h
- Merged PRs (30d)
- 171
Description
When the user uses the `hotpatching` feature, the `System` trait has one additional method, [`refresh_hotpatch`](https://dev-docs.bevy.org/bevy/ecs/prelude/trait.System.html#tymethod.refresh_hotpatch).
However, this method has no default impl. This means that other 3rd party crates the user relies on need to offer that feature too if these manually implement `System`, even if hotpatching makes no sense for them. If they don't do this, the user's project wont compile.
A solution could be to add an empty body as the default impl.
Contributor guide
Research direction
Start at the System trait definition and inspect the feature-gated refresh_hotpatch method. Check how manually implemented System traits are affected when hotpatching is enabled; done means implementations that do not need hotpatching can compile without defining this method, with the relevant checks or compilation paths passing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- game-dev
- Issue type
- Feature
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 68/100