Releases: TheBevyFlock/bevy_cli
`bevy_cli` - v0.1.0-alpha.1
This is the first release of the Bevy CLI, a prototype command-line tool that streamlines developing apps using the Bevy game engine! Use the CLI to:
bevy new
: quickly setup a new app from a template, likebevy_new_2d
. Perfect for game jams!- Easily build your app for the web with features like...
bevy run web
: run a local web server to test your app in your browserbevy build web --bundle
: bundle your app and assets into a single folderbuild build web --release
: optionally optimization withwasm-opt
when in release mode
bevy lint
: run the linter if you have it installed, and optionally install it for you if you don't!
You can find the live documentation for this release here. You may also be interested in the changelog.
Warning
This is an unofficial community project, hacked upon by the Bevy CLI working group until it is eventually upstreamed into the main Bevy Engine organization. Pardon our rough edges, and please consider submitting an issue if you run into trouble!
You can install the CLI using:
cargo install --git https://github.com/TheBevyFlock/bevy_cli --tag cli-v0.1.0-alpha.1 --locked bevy_cli
For more information, please see the installation page!
`bevy_lint` - v0.3.0
I'm pleased to announce the third release of the Bevy Linter! This update comes with 2 new lints, Bevy 0.16 support, a Github Action for installing the linter in CI, documentation improvements, and more!
You can find the live documentation for this release here. You may also be interested in the changelog and the migration guide.
Warning
This is an unofficial community project, hacked upon by the Bevy CLI working group until it is eventually upstreamed into the main Bevy Engine organization. Pardon our rough edges, and please consider submitting an issue if you run into trouble!
This release uses the nightly-2025-04-03
toolchain, based on Rust 1.88.0. You can install it from Git with the following commands:
rustup toolchain install nightly-2025-04-03 \
--component rustc-dev \
--component llvm-tools-preview
rustup run nightly-2025-04-03 cargo install \
--git https://github.com/TheBevyFlock/bevy_cli.git \
--tag lint-v0.3.0 \
--locked \
bevy_lint
All Changes: lint-v0.2.0...lint-v0.3.0
Added
- Lint
iter_current_update_events
tosuspicious
(#314) - Lint
unconventional_naming
tostyle
(#345)plugin_not_ending_in_plugin
has been merged into this new lint.
- A Github Action to automatically install the linter (#380)
Changed
- The linter now supports Bevy 0.16, but no longer supports Bevy 0.15 (#323)
- Bumped nightly toolchain to
nightly-2025-04-03
(#373)- The linter now supports Rust 1.88.0.
- Moved lints into submodules for their corresponding lint groups (#321)
- This makes it easier to see what lint group a lint is under in the documentation. For example, in v0.2.0 if you wanted to view the
insert_unit_bundle
lint you would go tobevy_lint::lints::insert_unit_bundle
, but in v0.3.0 you would go tobevy_lint::lints::suspicious::insert_unit_bundle
. This signals thatinsert_unit_bundle
is asuspicious
lint.
- This makes it easier to see what lint group a lint is under in the documentation. For example, in v0.2.0 if you wanted to view the
- Moved lint group docs from
bevy_lint::groups
to their associatedbevy_lint::lints
submodules (#328) - Code generated from external macros are no longer linted (#263)
- External macros are macros that are defined in a separate crate from the one being linted. The output of these macros is skipped for all lints, as it was previously impossible to fix the warnings without an
#[allow(...)]
attribute.
- External macros are macros that are defined in a separate crate from the one being linted. The output of these macros is skipped for all lints, as it was previously impossible to fix the warnings without an
missing_reflect
now emits machine-applicable suggestions if all fields in a type implementPartialReflect
(#389)
Removed
- Lint
plugin_not_ending_in_plugin
(#345)- This lint has been merged into the new
unconventional_naming
lint.
- This lint has been merged into the new
Fixed
main_return_without_appexit
no longer fires if theAppExit
is used (#346)- The goal of the lint is to encourage the
AppExit
to be handled, although returning it frommain()
is just one solution. This fix prevents the lint from yelling at you if you choose to handle it a different way, or simply choose to discard it withlet _ = app.run();
.
- The goal of the lint is to encourage the
- Fixed the Rust version in the compatibility table for v0.2.0 (#363)
`bevy_lint` - v0.2.0
I'm ecstatic to announce the second release of the Bevy linter! This release comes with several new lints, quality-of-life improvements, and a critical fix for Windows!
You can find the live documentation for this release here. You may also be interested in the changelog, the migration guide, and the announcement post.
Warning
This is an unofficial community project, hacked upon by the Bevy CLI working group until it is eventually upstreamed into the main Bevy Engine organization. Pardon our rough edges, and please consider submitting an issue if you run into trouble!
This release uses the nightly-2025-02-20
toolchain, based on Rust 1.87.0. You can install it from Git with the following commands:
rustup toolchain install nightly-2025-02-20 \
--component rustc-dev \
--component llvm-tools-preview
rustup run nightly-2025-02-20 cargo install \
--git https://github.com/TheBevyFlock/bevy_cli.git \
--tag lint-v0.2.0 \
--locked \
bevy_lint
All Changes: lint-v0.1.0...lint-v0.2.0
Added
- Lint
borrowed_reborrowable
topedantic
(#164) - Lint
insert_unit_bundle
tosuspicious
(#210) - Lint configuration in
Cargo.toml
(#251) - Support for
bevy_lint --version
(#257) - Support for qualified method syntax in several lints (#253)
- Lint
duplicate_bevy_dependencies
(#280)
Changed
- The linter now supports Bevy 0.15, but no longer supports Bevy 0.14 (#191)
- Eventually the linter will support multiple versions of Bevy at the same time. Please see #138 for more information.
- Bumped nightly toolchain to
nightly-2025-02-20
(#278) - Lowered
zst_query
lint fromrestriction
tonursery
(#261)zst_query
does not respectQueryData::Item
, meaning it is broken for queries likeHas<T>
andAnyOf<T>
. Please see #279 for more information.
- Merged
panicking_query_methods
andpanicking_world_methods
into a single lint:panicking_methods
(#271)
Fixed
rustc_driver.dll
not found on Windows (#281)bevy_lint
should now work on Windows, as it was previously broken by this bug.
`bevy_lint` - v0.1.0
It is with great pride that I announce the first release of bevy_lint
, a custom linter for projects built with the Bevy game engine! Use this to check for Bevy-specific footguns and optimizations, as well as enforce project-wide restrictions and standards.
You can find the live documentation here.
Warning
This is an unofficial community project, hacked upon by the Bevy CLI working group until it is eventually upstreamed into the main Bevy Engine organization. Pardon our rough edges, and please consider submitting an issue if you run into trouble!
This release uses the nightly-2024-11-14
toolchain, based on Rust 1.84.0. You can install bevy_lint
from Git with the following commands:
rustup toolchain install nightly-2024-11-14 \
--component rustc-dev \
--component llvm-tools-preview
rustup run nightly-2024-11-14 cargo install \
--git https://github.com/TheBevyFlock/bevy_cli.git \
--tag lint-v0.1.0 \
--locked \
bevy_lint
All Changes: 17834eb...lint-v0.1.0
Added
- Lint
main_return_without_appexit
topedantic
(#84) - Lint
insert_event_resource
tosuspicious
(#86) - Lint groups
correctness
,suspicious
,complexity
,performance
,style
,pedantic
,restriction
, andnursery
(#98)- These are based directly on Clippy's Lint Groups.
- Lints
panicking_query_methods
andpanicking_world_methods
torestriction
(#95) - Lint
plugin_not_ending_in_plugin
tostyle
(#111) - Lint
missing_reflect
torestriction
(#139) - Lint
zst_query
torestriction
(#168)