Skip to content

Releases: model-checking/kani

kani-0.55.0

05 Sep 17:09
603f9bf
Compare
Choose a tag to compare

Kani Rust verifier release bundle version 0.55.0.

Major/Breaking Changes

  • Coverage reporting in Kani is now source-based instead of line-based.
    Consequently, the unstable -Zline-coverage flag has been replaced with a -Zsource-coverage one.
    Check the Source-Coverage RFC for more details.
  • Several improvements were made to the memory initialization checks. The current state is summarized in #3300. We welcome your feedback!

What's Changed

Full Changelog: kani-0.54.0...kani-0.55.0

kani-0.54.0

13 Aug 19:57
7a6f1a4
Compare
Choose a tag to compare

Major Changes

  • We added support for slices in the #[kani::modifies(...)] clauses when using function contracts.
  • We introduce an #[safety_constraint(...)] attribute helper for the Arbitrary and Invariant macros.
  • We enabled support for concrete playback for harness that contains stubs or function contracts.
  • We added support for log2*, log10*, powif*, fma*, and sqrt* intrisincs.

Breaking Changes

  • The -Z ptr-to-ref-cast-checks option has been removed, and pointer validity checks when casting raw pointers to references are now run by default.

What's Changed

New Contributors

Full Changelog: kani-0.53.0...kani-0.54.0

kani-0.53.0

03 Jul 18:06
fcc9d8b
Compare
Choose a tag to compare

Major Changes

  • The --visualize option is being deprecated and will be removed in a future release. Consider using the --concrete-playback option instead.
  • The -Z ptr-to-ref-cast-checks option is being introduced to check pointer validity when casting raw pointers to references. The feature is currently behind an unstable flag but is expected to be stabilized in a future release once remaining performance issues have been resolved.
  • The -Z uninit-checks option is being introduced to check memory initialization. The feature is currently behind an unstable flag and also requires the -Z ghost-state option.

Breaking Changes

What's Changed

Full Changelog: kani-0.52.0...kani-0.53.0

kani-0.52.0

05 Jun 08:20
358ade9
Compare
Choose a tag to compare

What's Changed

Full Changelog: kani-0.51.0...kani-0.52.0

kani-0.51.0

08 May 21:01
bb3e71a
Compare
Choose a tag to compare

Kani Rust verifier release bundle version 0.51.0.

What's Changed

  • Do not assume that ZST-typed symbols refer to unique objects by @tautschnig in #3134
  • Remove kani::Arbitrary from the modifies contract instrumentation by @feliperodri in #3169
  • Emit source locations whenever possible to ease debugging and coverage reporting by @tautschnig in #3173
  • Rust toolchain upgraded to nightly-2024-04-21 by @celinval

Full Changelog: kani-0.50.0...kani-0.51.0

kani-0.50.0

18 Apr 00:14
299b0b3
Compare
Choose a tag to compare

Major Changes

  • Fix compilation issue with proc_macro2 (v1.0.80+) and Kani v0.49.0 (#3138).

What's Changed

Full Changelog: kani-0.49.0...kani-0.50.0

kani-0.49.0

05 Apr 19:14
ac46d98
Compare
Choose a tag to compare

What's Changed

Full Changelog: kani-0.48.0...kani-0.49.0

kani-0.48.0

14 Mar 22:54
a52564d
Compare
Choose a tag to compare

Major Changes

  • We fixed a soundness bug that in some cases may cause Kani to not detect a use-after-free issue in #3063

What's Changed

Full Changelog: kani-0.47.0...kani-0.48.0

kani-0.47.0

23 Feb 00:29
6c97820
Compare
Choose a tag to compare

What's Changed

Full Changelog: kani-0.46.0...kani-0.47.0

kani-0.46.0

09 Feb 16:34
889d09e
Compare
Choose a tag to compare

What's Changed

Full Changelog: kani-0.45.0...kani-0.46.0