Skip to content

Filter out Tuple fields when generating props#24144

Merged
alice-i-cecile merged 1 commit into
bevyengine:mainfrom
cart:fix-tuple-scene-components
May 6, 2026
Merged

Filter out Tuple fields when generating props#24144
alice-i-cecile merged 1 commit into
bevyengine:mainfrom
cart:fix-tuple-scene-components

Conversation

@cart
Copy link
Copy Markdown
Member

@cart cart commented May 5, 2026

Objective

Setting fields on tuple Scene Components breaks down because their fields are improperly considered "props".

Solution

Properly filter out tuple fields.

Testing

  • Added a test!

@cart cart added this to the 0.19 milestone May 5, 2026
@cart cart added C-Bug An unexpected or incorrect behavior A-Scenes Composing and serializing ECS objects labels May 5, 2026
@alice-i-cecile alice-i-cecile added D-Straightforward Simple bug fixes and API improvements, docs, test and examples S-Needs-Review Needs reviewer attention (from anyone!) to move forward D-Macros Code that generates Rust code labels May 5, 2026
@urben1680
Copy link
Copy Markdown
Contributor

Just for learning, what are props in this context? What is different to struct fields in BSN?

@cart
Copy link
Copy Markdown
Member Author

cart commented May 5, 2026

@urben1680 check out this PR #24008

@alice-i-cecile alice-i-cecile requested a review from kfc35 May 5, 2026 23:12
@kfc35 kfc35 added S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it and removed S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels May 6, 2026
@alice-i-cecile alice-i-cecile added this pull request to the merge queue May 6, 2026
Merged via the queue into bevyengine:main with commit 48b4c01 May 6, 2026
51 checks passed
allocatedribble added a commit to allocatedribble/bevy that referenced this pull request May 6, 2026
Cherry-pick clean upstream changes from bevyengine/bevy through 15b23b4 while leaving the destructive rewritten full upstream range unmerged.

Included upstream PRs:

- bevyengine#22447: update intel_tex_2 for the mipmap generator example

- bevyengine#23069: update getrandom dev dependency to 0.4

- bevyengine#24142: add Disabled/Enabled state-scoped components

- bevyengine#22488: move window/input-focus/custom-cursor feature ownership out of default_app

- bevyengine#24144: filter tuple fields when generating BSN props

- bevyengine#24138: fix UI overflow clip margin resolution

- bevyengine#24139: add Rect::translate

- bevyengine#24146: use array_windows for fixed-size slice windows

- bevyengine#21830: document physical-pixel viewport requirements

Skipped CI-only cache/action bumps because they do not improve the engine or Fun runtime surface.

Validation: git diff --cached --check; cargo fmt --check -p bevy_camera -p bevy_gizmos -p bevy_input_focus -p bevy_math -p bevy_mesh -p bevy_scene -p bevy_scene_macros -p bevy_state -p bevy_ui; cargo test -p bevy_math rect_translate --lib; cargo test -p bevy_ui overflow_clip_margin --lib; cargo test -p bevy_scene scene_component_name_reference --lib; cargo check -p bevy_camera -p bevy_gizmos -p bevy_input_focus -p bevy_math -p bevy_mesh -p bevy_scene -p bevy_state -p bevy_ui; cargo check -p bevy --no-default-features --features default_app; cargo check -p bevy --no-default-features --features ui_api; downstream cargo check -p fun_render; downstream cargo check -p game_client
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Scenes Composing and serializing ECS objects C-Bug An unexpected or incorrect behavior D-Macros Code that generates Rust code D-Straightforward Simple bug fixes and API improvements, docs, test and examples 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.

4 participants