Move close_on_esc to bevy_dev_tools#12855
Merged
james7132 merged 5 commits intobevyengine:mainfrom Apr 3, 2024
Merged
Conversation
I chose to remove references to `close_on_esc` in examples, since `bevy_dev_tools` is not enabled by default.
Additionally add `smol_str` feature to `bevy_reflect`, since it was depended on by `bevy_window` implicitly.
alice-i-cecile
approved these changes
Apr 3, 2024
I resolved to just remove the links, since the only other solution I could think of was to feature-gate `bevy_input` to only be included when building the docs.
james7132
approved these changes
Apr 3, 2024
chompaa
pushed a commit
to chompaa/bevy
that referenced
this pull request
Apr 5, 2024
# Objective - As @james7132 said [on Discord](https://discord.com/channels/691052431525675048/692572690833473578/1224626740773523536), the `close_on_esc` system is forcing `bevy_window` to depend on `bevy_input`. - `close_on_esc` is not likely to be used in production, so it arguably does not have a place in `bevy_window`. ## Solution - As suggested by @afonsolage, move `close_on_esc` into `bevy_dev_tools`. - Add an example to the documentation too. - Remove `bevy_window`'s dependency on `bevy_input`. - Add `bevy_reflect`'s `smol_str` feature to `bevy_window` because it was implicitly depended upon with `bevy_input` before it was removed. - Remove any usage of `close_on_esc` from the examples. - `bevy_dev_tools` is not enabled by default. I personally find it frustrating to run examples with additional features, so I opted to remove it entirely. - This is up for discussion if you have an alternate solution. --- ## Changelog - Moved `bevy_window::close_on_esc` to `bevy_dev_tools::close_on_esc`. - Removed usage of `bevy_dev_tools::close_on_esc` from all examples. ## Migration Guide `bevy_window::close_on_esc` has been moved to `bevy_dev_tools::close_on_esc`. You will first need to enable `bevy_dev_tools` as a feature in your `Cargo.toml`: ```toml [dependencies] bevy = { version = "0.14", features = ["bevy_dev_tools"] } ``` Finally, modify any imports to use `bevy_dev_tools` instead: ```rust // Old: // use bevy::window::close_on_esc; // New: use bevy::dev_tools::close_on_esc; App::new() .add_systems(Update, close_on_esc) // ... .run(); ```
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Objective
close_on_escsystem is forcingbevy_windowto depend onbevy_input.close_on_escis not likely to be used in production, so it arguably does not have a place inbevy_window.Solution
close_on_escintobevy_dev_tools.bevy_window's dependency onbevy_input.bevy_reflect'ssmol_strfeature tobevy_windowbecause it was implicitly depended upon withbevy_inputbefore it was removed.close_on_escfrom the examples.bevy_dev_toolsis not enabled by default. I personally find it frustrating to run examples with additional features, so I opted to remove it entirely.Changelog
bevy_window::close_on_esctobevy_dev_tools::close_on_esc.bevy_dev_tools::close_on_escfrom all examples.Migration Guide
bevy_window::close_on_eschas been moved tobevy_dev_tools::close_on_esc. You will first need to enablebevy_dev_toolsas a feature in yourCargo.toml:Finally, modify any imports to use
bevy_dev_toolsinstead: