diff --git a/CHANGELOG.md b/CHANGELOG.md index d36def1a45f1..e35af4c8fa24 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,28 @@ This file contains notable changes (e.g. breaking changes, major changes, etc.) This file was introduced starting Kani 0.23.0, so it only contains changes from version 0.23.0 onwards. +## [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](https://model-checking.github.io/kani/rfc/rfcs/0011-source-coverage.html) for more details. +* Several improvements were made to the memory initialization checks. The current state is summarized in https://github.com/model-checking/kani/issues/3300. We welcome your feedback! + +### What's Changed +* Update CBMC build instructions for Amazon Linux 2 by @tautschnig in https://github.com/model-checking/kani/pull/3431 +* Implement memory initialization state copy functionality by @artemagvanian in https://github.com/model-checking/kani/pull/3350 +* Make points-to analysis handle all intrinsics explicitly by @artemagvanian in https://github.com/model-checking/kani/pull/3452 +* Avoid corner-cases by grouping instrumentation into basic blocks and using backward iteration by @artemagvanian in https://github.com/model-checking/kani/pull/3438 +* Fix ICE due to mishandling of Aggregate rvalue for raw pointers to `str` by @celinval in https://github.com/model-checking/kani/pull/3448 +* Basic support for memory initialization checks for unions by @artemagvanian in https://github.com/model-checking/kani/pull/3444 +* Adopt Rust's source-based code coverage instrumentation by @adpaco-aws in https://github.com/model-checking/kani/pull/3119 +* Extra tests and bug fixes to the delayed UB instrumentation by @artemagvanian in https://github.com/model-checking/kani/pull/3419 +* Partially integrate uninit memory checks into `verify_std` by @artemagvanian in https://github.com/model-checking/kani/pull/3470 +* Rust toolchain upgraded to `nightly-2024-09-03` by @jaisnan @carolynzech + +**Full Changelog**: https://github.com/model-checking/kani/compare/kani-0.54.0...kani-0.55.0 + ## [0.54.0] ### Major Changes diff --git a/Cargo.lock b/Cargo.lock index c180c66dde90..1c371b85fba9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -93,7 +93,7 @@ checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" [[package]] name = "build-kani" -version = "0.54.0" +version = "0.55.0" dependencies = [ "anyhow", "cargo_metadata", @@ -235,7 +235,7 @@ dependencies = [ [[package]] name = "cprover_bindings" -version = "0.54.0" +version = "0.55.0" dependencies = [ "lazy_static", "linear-map", @@ -459,7 +459,7 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "kani" -version = "0.54.0" +version = "0.55.0" dependencies = [ "kani_core", "kani_macros", @@ -467,7 +467,7 @@ dependencies = [ [[package]] name = "kani-compiler" -version = "0.54.0" +version = "0.55.0" dependencies = [ "clap", "cprover_bindings", @@ -491,7 +491,7 @@ dependencies = [ [[package]] name = "kani-driver" -version = "0.54.0" +version = "0.55.0" dependencies = [ "anyhow", "cargo_metadata", @@ -520,7 +520,7 @@ dependencies = [ [[package]] name = "kani-verifier" -version = "0.54.0" +version = "0.55.0" dependencies = [ "anyhow", "home", @@ -529,14 +529,14 @@ dependencies = [ [[package]] name = "kani_core" -version = "0.54.0" +version = "0.55.0" dependencies = [ "kani_macros", ] [[package]] name = "kani_macros" -version = "0.54.0" +version = "0.55.0" dependencies = [ "proc-macro-error", "proc-macro2", @@ -546,7 +546,7 @@ dependencies = [ [[package]] name = "kani_metadata" -version = "0.54.0" +version = "0.55.0" dependencies = [ "clap", "cprover_bindings", @@ -1098,7 +1098,7 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "std" -version = "0.54.0" +version = "0.55.0" dependencies = [ "kani", ] diff --git a/Cargo.toml b/Cargo.toml index 149b8d2c93c8..ee9848b578dc 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "kani-verifier" -version = "0.54.0" +version = "0.55.0" edition = "2021" description = "A bit-precise model checker for Rust." readme = "README.md" diff --git a/cprover_bindings/Cargo.toml b/cprover_bindings/Cargo.toml index b0e3c578bbcf..008c81aef2ad 100644 --- a/cprover_bindings/Cargo.toml +++ b/cprover_bindings/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "cprover_bindings" -version = "0.54.0" +version = "0.55.0" edition = "2021" license = "MIT OR Apache-2.0" publish = false diff --git a/kani-compiler/Cargo.toml b/kani-compiler/Cargo.toml index e8e564f9616a..9ca8d10f5275 100644 --- a/kani-compiler/Cargo.toml +++ b/kani-compiler/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "kani-compiler" -version = "0.54.0" +version = "0.55.0" edition = "2021" license = "MIT OR Apache-2.0" publish = false diff --git a/kani-driver/Cargo.toml b/kani-driver/Cargo.toml index 27fef66ffb65..7485d2279ad6 100644 --- a/kani-driver/Cargo.toml +++ b/kani-driver/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "kani-driver" -version = "0.54.0" +version = "0.55.0" edition = "2021" description = "Build a project with Kani and run all proof harnesses" license = "MIT OR Apache-2.0" diff --git a/kani_metadata/Cargo.toml b/kani_metadata/Cargo.toml index efa28288d148..18eadc4095ed 100644 --- a/kani_metadata/Cargo.toml +++ b/kani_metadata/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "kani_metadata" -version = "0.54.0" +version = "0.55.0" edition = "2021" license = "MIT OR Apache-2.0" publish = false diff --git a/library/kani/Cargo.toml b/library/kani/Cargo.toml index a3692f95e3f5..fa50783516f4 100644 --- a/library/kani/Cargo.toml +++ b/library/kani/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "kani" -version = "0.54.0" +version = "0.55.0" edition = "2021" license = "MIT OR Apache-2.0" publish = false diff --git a/library/kani_core/Cargo.toml b/library/kani_core/Cargo.toml index 9df828e77c5a..447cd0b3f298 100644 --- a/library/kani_core/Cargo.toml +++ b/library/kani_core/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "kani_core" -version = "0.54.0" +version = "0.55.0" edition = "2021" license = "MIT OR Apache-2.0" publish = false diff --git a/library/kani_macros/Cargo.toml b/library/kani_macros/Cargo.toml index 574960e5fc0a..a6b20a68bc39 100644 --- a/library/kani_macros/Cargo.toml +++ b/library/kani_macros/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "kani_macros" -version = "0.54.0" +version = "0.55.0" edition = "2021" license = "MIT OR Apache-2.0" publish = false diff --git a/library/std/Cargo.toml b/library/std/Cargo.toml index 9f0d09b0d7bb..12c923e9b655 100644 --- a/library/std/Cargo.toml +++ b/library/std/Cargo.toml @@ -5,7 +5,7 @@ # Note: this package is intentionally named std to make sure the names of # standard library symbols are preserved name = "std" -version = "0.54.0" +version = "0.55.0" edition = "2021" license = "MIT OR Apache-2.0" publish = false diff --git a/tools/build-kani/Cargo.toml b/tools/build-kani/Cargo.toml index cd2985e4ad68..41095f1d7c3c 100644 --- a/tools/build-kani/Cargo.toml +++ b/tools/build-kani/Cargo.toml @@ -3,7 +3,7 @@ [package] name = "build-kani" -version = "0.54.0" +version = "0.55.0" edition = "2021" description = "Builds Kani, Sysroot and release bundle." license = "MIT OR Apache-2.0"