-
-
Couldn't load subscription status.
- Fork 4.2k
Remove SimpleExecutor
#18741
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
Remove SimpleExecutor
#18741
Changes from 3 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| --- | ||
| title: Removed Simple Executor | ||
| pull_requests: [18741] | ||
| --- | ||
|
|
||
| Bevy has removed `SimpleExecutor`, one of the `SystemExecutor`s in Bevy alongside `SingleThreadedExecutor` and `MultiThreadedExecutor` (which aren't going anywhere any time soon). | ||
| The `MultiThreadedExecutor` is great at large schedules and async heavy work, and the `SingleThreadedExecutor` is good at smaller schedules or schedules that have fewer parallelizable systems. | ||
| So what was `SimpleExecutor` good at? Not much. That's why it was removed. If you're curious, it was originally created to function without any schedule "sync points", which apply deferred commands. | ||
|
||
| That was a nice convenience in Bevy's past, but today, sync points are automatically added as needed, so `SimpleExecutor` no longer has a use case. | ||
| Removing it reduced some maintenance and consistency burdons on maintainers, allowing them to focus on more exciting features! | ||
| If you were using `SimpleExecutor`, consider upgrading to `SingleThreadedExecutor` instead, or try `MultiThreadedExecutor` if if fits the schedule. | ||
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This migration guide seems to be duplicate now, see
simple_executor_going_away.md, which is about the deprecation of the executorThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, it should be one or the other.
Do we want to remove it for 0.17 or just deprecate? If just deprecate, we should save this for 0.18. Otherwise, I'll update this pr and remove the old migration guide.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Deprecating feels like a nicer migration experience :)
That way users can ask for help while upgrading without their app being broken until they made the switch to another executor
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@alice-i-cecile could we get a 0.18 milestone? Or do we just not merge this until 0.17 is released?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good. I'll let this go cold and we can come back to it later.