Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

System set names are too aggressively stripped when reporting system order ambiguities #9509

Closed
alice-i-cecile opened this issue Aug 20, 2023 · 1 comment · Fixed by #9587
Labels
A-ECS Entities, components, systems, and events A-Utils Utility functions and types C-Bug An unexpected or incorrect behavior

Comments

@alice-i-cecile
Copy link
Member

Bevy version

0.11

What you did

Enable [system

What went wrong

2023-08-20T17:23:10.908705Z  WARN bevy_ecs::schedule::schedule: 1 pairs of systems with conflicting data access have indeterminate execution order. Consider adding `before`, `after`, or `ambiguous_with` relationships between these:
 -- update_action_state<PlayerAction> (in set Update) and ui_focus_system (in set Focus)
    conflict on: ["bevy_ui::focus::Interaction"]

Additional information

The set names should be InputManagerSystem::Update and UiSystem::Focus instead.

These are much clearer.

Note that this bug is due to get_short_name not differentiating between the :: used for enum variants correctly. The enum type should be retained, while other module path info is stripped.

@alice-i-cecile alice-i-cecile added C-Bug An unexpected or incorrect behavior A-ECS Entities, components, systems, and events A-Utils Utility functions and types labels Aug 20, 2023
@nicopap
Copy link
Contributor

nicopap commented Aug 20, 2023

I guess the heuristic to recognize enum names should be to check if the one-to last path item is uppercase.

github-merge-queue bot pushed a commit that referenced this issue Aug 26, 2023
# Objective

Fixes #9509 

## Solution
We use the assumption, that enum types are uppercase in contrast to
module names.
[`collapse_type_name`](crates/bevy_util/src/short_names) is now
retaining the second last segment, if it starts with a uppercase
character.

---------

Co-authored-by: Emi <[email protected]>
Co-authored-by: Nicola Papale <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-ECS Entities, components, systems, and events A-Utils Utility functions and types C-Bug An unexpected or incorrect behavior
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants