bevyengine / bevyengine/bevy

feature-gated `System::refresh_hotpatch` with no default impl is inconvenient for crate authors

Offen Anfängerfreundlich
#23,653 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
A-Dev-Tools A-ECS C-Bug D-Straightforward S-Ready-For-Implementation X-Contentious
Vorherrschende Sprache
Rust
Sterne
48.2k
Forks
4.8k
Ø Merge
3 T. 22 Std.
Gemergte PRs (30 T.)
161

Beschreibung

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.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginnen Sie bei der Definition des System-Traits und untersuchen Sie die feature-gesteuerte Methode refresh_hotpatch. Prüfen Sie, wie sich manuell implementierte System-Traits auswirken, wenn Hotpatching aktiviert ist; als erledigt gilt die Aufgabe, wenn Implementierungen, die kein Hotpatching benötigen, kompiliert werden können, ohne diese Methode zu definieren, und die relevanten Prüfungen oder Kompilierungspfade erfolgreich durchlaufen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust
Bereich
game-dev
Issue-Typ
Feature
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Ruhig
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
68/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.