Skip to content

Conversation

@LikeLakers2
Copy link
Contributor

Objective

Solution

Do it

Testing

cargo clippy and CI.

@LikeLakers2 LikeLakers2 force-pushed the project/reflect/organization branch 3 times, most recently from 01d74c9 to 27bed7c Compare January 1, 2026 23:53
@LikeLakers2 LikeLakers2 force-pushed the project/reflect/organization branch 3 times, most recently from 91fc332 to c2eaec0 Compare January 2, 2026 00:49
@LikeLakers2 LikeLakers2 force-pushed the project/reflect/organization branch 2 times, most recently from 84c7a8d to 20552cf Compare January 2, 2026 01:52
@LikeLakers2 LikeLakers2 force-pushed the project/reflect/organization branch from 20552cf to 59c9ebf Compare January 2, 2026 02:14
@LikeLakers2 LikeLakers2 force-pushed the project/reflect/organization branch from 44a4933 to 3c65b6d Compare January 3, 2026 02:22
@LikeLakers2 LikeLakers2 marked this pull request as ready for review January 3, 2026 19:36
Copy link
Contributor

@it-me-joda it-me-joda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems like some pretty nice and thorough reorganization. Aside from cleanliness, is there an additional benefit you are trying to capture with moving things around?

@janhohenheim janhohenheim added C-Code-Quality A section of code that is hard to understand or change A-Reflection Runtime information about types D-Straightforward Simple bug fixes and API improvements, docs, test and examples S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Jan 4, 2026
@janhohenheim janhohenheim added this to the 0.19 milestone Jan 4, 2026
@janhohenheim janhohenheim added the M-Migration-Guide A breaking change to Bevy's public API that needs to be noted in a migration guide label Jan 4, 2026
Copy link
Member

@janhohenheim janhohenheim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't inspect these tooooooo deeply, but it looks good :)

@janhohenheim janhohenheim removed the S-Needs-Review Needs reviewer attention (from anyone!) to move forward label Jan 4, 2026
@janhohenheim janhohenheim added the S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it label Jan 4, 2026
@LikeLakers2
Copy link
Contributor Author

[@it-me-joda] Aside from cleanliness, is there an additional benefit you are trying to capture with moving things around?

The main point is to make it clear what items belong to what type of reflected item, which in turn helps to avoid overwhelming users.

So no, not really - the cleanliness is the main point, that ends up causing other (beneficial) effects.

@janhohenheim janhohenheim requested a review from MrGVSV January 4, 2026 04:00
@LikeLakers2
Copy link
Contributor Author

LikeLakers2 commented Jan 4, 2026

Per my request, MrGVSV has been requested to review this, as he's the reflection SME.

Though if any maintainers want to merge without his review, feel free. I just think, since I've been communicating with him a bit while planning and making this PR, it'd be worth requesting his review.

@LikeLakers2
Copy link
Contributor Author

LikeLakers2 commented Jan 4, 2026

[@janhohenheim] I didn't inspect these tooooooo deeply, but it looks good :)

In case you want to inspect more deeply, here's the files you'd be most interested in:

  • crates/bevy_reflect/derive/src/derive_data.rs (code change to account for the new typepaths)
  • crates/bevy_reflect/derive/src/from_reflect.rs (code change to account for the new typepaths)
  • release-content/migration-guides/bevy_reflect_reorganization.md (migration guide)

Pretty much everything else is changes to typepaths themselves (usually use statements), plus basic docs for the newly-exposed modules. Well, and publicly exposing the modules.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Reflection Runtime information about types C-Code-Quality A section of code that is hard to understand or change D-Straightforward Simple bug fixes and API improvements, docs, test and examples M-Migration-Guide A breaking change to Bevy's public API that needs to be noted in a migration guide S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants