Skip to content

v0.35.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 03 Sep 16:23
· 19 commits to main since this release
6092892

What's changed

In this release:

  • 10 new lints
  • performance upgrades
  • improved bug reporting UX & test infra

This release requires Rust 1.77+ both to install (MSRV) and at runtime.

New lints:

We can now detect whether a trait is sealed or not, unlocking many new lints! "Is this lint sealed" is a tricky question full of edge cases — check out our deep-dive into this feature to learn more!

Additionally, we enabled the trait_no_longer_object_safe lint. It was previously implemented but was disabled while awaiting updated Rust functionality.

We also renamed the variant_marked_non_exhaustive lint to enum_variant_marked_non_exhaustive, for better naming consistency.

Performance upgrades

cargo-semver-checks lints are implemented as database queries. The "database" in our case is rustdoc JSON files, which we load in memory and index for faster lookups. For particularly large crates, this indexing process could take up to 2-3 seconds by itself.

This release cuts the indexing time in half, thanks to the work of @jalil-salame:

Improved bug reporting UX & test infra

Our GitHub bug reporting form requests the diagnostic output of the cargo semver-checks --bugreport command. That output is unwieldy, so it's a bit of a hassle to copy-paste it into the GitHub issue UI.

As of this release, --bugreport will include a URL that pre-fills all the diagnostic information into a GitHub bug report form. Now you can just click the link, and skip the clunky copy-pasting! Thanks to @PedroTurik for shipping this functionality in #862.

@suaviloquence has also been hard at work revamping our test infrastructure so that we can test cargo-semver-checks more thoroughly and in more configurations. He's already shipped a dozen PRs that have made us more confident in our ability to build bigger and bolder features. Skyskrapers cannot stand on wobbly foundations, so keep his hard work in mind while you enjoy the powerful new features we'll be shipping in the months to come!

All Merged PRs

New Contributors

Full Changelog: v0.34.0...v0.35.0