Chris Russell
Chris Russell
The `#[system(MySystem)]` part seems like it will be controversial, too. You might be able to avoid it for the initial version if you make the systems generic and use a...
> Why couldn't we impl `SystemParam` for `SystemData`? What's `SystemData`? If you mean `SystemState`, that doesn't have an actual function to run, just the state required to construct a `SystemParam`...
> IIUC, the lack of `ReleaseStateQueryData` impls for `FilteredEntityRef|Mut` means they can no longer be used in the sort methods. This would mean removing support for sorting with untyped `QueryData`,...
> Yeah, an additional collect would regress sort performance. That would make this change a perf trade-off, not a pure gain. By how much, would have to be benchmarked. Yeah,...
Okay, I think I've finally fixed the problems that were brought up! I've updated this PR, and it should be reviewable now. The issues had been: 1) We had been...
> IIUC, this change will mean that the consuming methods will not work for what is not `ReleaseStateQueryData`. That will still work fine! `Query` has an `&'s QueryState`, and the...
> However, it is also a question whether/when we _want_ `HashSet` to implement `EntitySet`. This is an iteration based trait, and introducing order instability is undesired. I think we want...
> Would also be nice if this supported `Commands` Both the existing API and the one in this PR handle arbitrary `SystemParam`s. You can get a `Commands` today using `.param::()`,...
> Maybe including "default" in there somewhere could help. Yeah, I don't think I quite got the names right, but I couldn't think of better ones. I'm happy to rename...
> * Also component_reads_and_writes() is about to be deprecated [Migrate `component_reads_and_writes` #16339](https://github.com/bevyengine/bevy/issues/16339), but there's no other way to currently do what I'm trying to do. One option is to remember...