bevy/crates
Gino Valente 220b08d379 Fix nested generics in Reflect derive (#10791)
# Objective

> Issue raised on
[Discord](https://discord.com/channels/691052431525675048/1002362493634629796/1179182488787103776)

Currently the following code fails due to a missing `TypePath` bound:

```rust
#[derive(Reflect)] struct Foo<T>(T);
#[derive(Reflect)] struct Bar<T>(Foo<T>);
#[derive(Reflect)] struct Baz<T>(Bar<Foo<T>>);
```

## Solution

Add `TypePath` to the per-field bounds instead of _just_ the generic
type parameter bounds.

### Related Work

It should be noted that #9046 would help make these kinds of issues
easier to work around and/or avoid entirely.

---

## Changelog

- Fixes missing `TypePath` requirement when deriving `Reflect` on nested
generics
2023-11-29 17:03:36 -08:00
..
bevy_a11y Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_animation Fix animations resetting after repeat count (#10540) 2023-11-29 16:42:51 -08:00
bevy_app Wait until FixedUpdate can see events before dropping them (#10077) 2023-11-29 16:55:21 -08:00
bevy_asset Print precise and correct watch warnings (and only when necessary) (#10787) 2023-11-29 17:03:15 -08:00
bevy_audio Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_core Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_core_pipeline Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_derive Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_diagnostic Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_dylib Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_dynamic_plugin Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_ecs fix insert_reflect panic caused by clone_value (#10627) 2023-11-29 17:02:53 -08:00
bevy_ecs_compile_fail_tests Updates for rust 1.73 (#10035) 2023-10-06 00:31:10 +00:00
bevy_encase_derive Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_gilrs Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_gizmos Fix float precision issue in the gizmo shader (#10408) 2023-11-29 16:44:26 -08:00
bevy_gltf Fix GLTF scene dependencies and make full scene renders predictable (#10745) 2023-11-29 17:02:28 -08:00
bevy_hierarchy Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_input Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_internal Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_log Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_macro_utils Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_macros_compile_fail_tests bevy_derive: Fix #[deref] breaking other attributes (#9551) 2023-08-28 17:36:18 +00:00
bevy_math Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_mikktspace Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_pbr Ensure instance_index push constant is always used in prepass.wgsl (#10706) 2023-11-29 17:03:03 -08:00
bevy_ptr Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_reflect Fix nested generics in Reflect derive (#10791) 2023-11-29 17:03:36 -08:00
bevy_reflect_compile_fail_tests Fix nested generics in Reflect derive (#10791) 2023-11-29 17:03:36 -08:00
bevy_render Fix shader import hot reloading on windows (#10502) 2023-11-29 16:41:02 -08:00
bevy_scene Use handles for queued scenes in SceneSpawner (#10619) 2023-11-29 16:52:11 -08:00
bevy_sprite Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_tasks Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_text Improved Text Rendering (#10537) 2023-11-29 16:44:14 -08:00
bevy_time Wait until FixedUpdate can see events before dropping them (#10077) 2023-11-29 16:55:21 -08:00
bevy_transform Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_ui Fix typo in resolve_outlines_system (#10730) 2023-11-29 16:53:56 -08:00
bevy_utils Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_window Release 0.12 (#10362) 2023-11-04 17:24:23 +00:00
bevy_winit don't run update before window creation in winit (#10741) 2023-11-29 16:54:08 -08:00