You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In a recent zerocopy PR, we had to stop testing our nightly-only features under Kani. The reason is that those features were recently updated to work with a more recent version of the nightly Rust toolchain, and so are now incompatible with older nightlies. Since the Kani GH action selects its own toolchain, it makes that action incompatible with our nightly-only features. At the moment, we don't use Kani to test any of those features, so we simply disabled those features when using Kani. In the future, though, this could become a problem for us if we want to use Kani to test nightly-only features.
It would be great if the Kani GH action allowed specifying which Rust toolchain to use.
# Use `--features __internal_use_only_features_that_work_on_stable`# because the Kani GitHub Action uses its own pinned nightly# toolchain. Sometimes, we make changes to our nightly features for# more recent toolchains, and so our nightly features become# incompatible with the toolchain that Kani uses. By only testing# stable features, we ensure that this doesn't cause problems in CI.args: "--package zerocopy --features __internal_use_only_features_that_work_on_stable --output-format=terse --randomize-layout --memory-safety-checks --overflow-checks --undefined-function-checks --unwinding-checks"
The text was updated successfully, but these errors were encountered:
Hi @joshlf, unfortunately, Kani relies on a specific version of the rust toolchain, and this cannot be changed today. We try to keep Kani as up-to-date as possible, but some changes to the Rust compiler can break Kani's compiler, and requires us to spend time ensuring we address them correctly.
We have been working with the Rust compiler team to introduce stable APIs to the compiler that would allow us to break this strict requirement. Until then, unfortunately, this issue will be blocked.
Okay, thanks for the context! Not a big deal for us to work around it as we're currently doing. Feel free to close if you'd prefer not to leave this open :)
In a recent zerocopy PR, we had to stop testing our nightly-only features under Kani. The reason is that those features were recently updated to work with a more recent version of the nightly Rust toolchain, and so are now incompatible with older nightlies. Since the Kani GH action selects its own toolchain, it makes that action incompatible with our nightly-only features. At the moment, we don't use Kani to test any of those features, so we simply disabled those features when using Kani. In the future, though, this could become a problem for us if we want to use Kani to test nightly-only features.
It would be great if the Kani GH action allowed specifying which Rust toolchain to use.
Here's the code in question from our Kani GH action invocation in CI:
The text was updated successfully, but these errors were encountered: