bevyengine / bevyengine/bevy

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

Đang mở Phù hợp với người mới
#23,653 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
A-Dev-Tools A-ECS C-Bug D-Straightforward S-Ready-For-Implementation X-Contentious
Ngôn ngữ chính
Rust
Star
48.2k
Fork
4.8k
Merge trung bình
3 ngày 16 giờ
Pull request đã merge (30 ngày)
171

Mô tả

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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu từ định nghĩa trait System và kiểm tra phương thức refresh_hotpatch được bật theo feature. Kiểm tra các trait System được triển khai thủ công bị ảnh hưởng như thế nào khi hotpatching được bật; được xem là hoàn thành khi các triển khai không cần hotpatching có thể biên dịch mà không định nghĩa phương thức này, và các kiểm tra hoặc đường dẫn biên dịch liên quan đều đạt.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
rust
Lĩnh vực
game-dev
Loại issue
Tính năng
Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Đặc tả rõ ràng
Mức phù hợp với người mới
68/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.