2 releases
0.1.1 | Sep 30, 2021 |
---|---|
0.1.0 | Sep 30, 2021 |
#6 in #gazebo
30KB
591 lines
Gazebo Lint - a linter for patterns relating to the Gazebo Library
The linter provides various helpful hints relating to additions from the Gazebo Library.
For example, Gazebo
added Dupe
. This linter will provide hints to use dupe
instead of clone
. e.g. when doing Arc::new(x).clone()
.
Other available hints are to "Use map" when doing xs.iter().map(f).collect()
if the types line up, and reminders to derive Dupe
when appropriate.
Using Gazebo Lint
Gazebo lint can lint any program by adding the following to lib.rs
:
#![feature(plugin)]
#![allow(deprecated)]
#![plugin(linter)]
Unfortunately the plugin
feature is deprecated, so while useful, it is likely that linter
will stop working at some point in the future.
We will look to update the linter to use the proper alternatives if applicable when that becomes an issue.
Making a release
- Check the GitHub Actions are green.
- Update
CHANGELOG.md
with the changes since the last release. This link can help (update to compare against the last release). - Update the version numbers of the two
Cargo.toml
files. Bump them by 0.0.1 if there are no incompatible changes, or 0.1.0 if there are. - Run
cargo publish --dry-run --allow-dirty
, then without the--dry-run
ingazebo_lint
directory. - Create a GitHub release with
v0.X.Y
, using thegazebo_lint
version as the name.
License
Gazebo Linter is both MIT and Apache License, Version 2.0 licensed, as found in the LICENSE-MIT and LICENSE-APACHE files.
Dependencies
~67KB