Add cargo-miri github action#225
Conversation
3932a9c to
c584d66
Compare
ab2cb17 to
1907e0c
Compare
ivoanjo
left a comment
There was a problem hiding this comment.
I'm curious -- how slow is miri? Although annoying, I think a CI run that takes a few minutes is probably fine (or we could add another job that runs full miri, but only every night and not on every PR).
One other thing we can make use of is a faster machine -- here's a PR where we did that for dd-trace-go to improve performance of CI stuff ( DataDog/dd-trace-go#2068 ) .
None of this is blocking for this PR, but I'm excited about the possibilities :)
| @@ -0,0 +1,21 @@ | |||
| name: Miri test | |||
There was a problem hiding this comment.
Since right now we're scoped to profile::internal::observation, I would suggest maybe including that here on the name (to avoid a misleading sense of safety -- oh we're running miri on stuff)?
The other issue is that not all tests will work under Miri. We'd need to take a pass to see which to exclude |
What does this PR do?
Adds a
cargo mirigithub action to our CI.Motivation
I added some
unsafecode in #219, which I verified usingmiri. But, this doesn't run in CI, so it could break without us knowing. Adding it to CI increases safety.Additional Notes
Miri is slower than regular test. Currently, I'm only running this on the
unsafechanges I made in #219. We might want to consider expanding the filter to cover more code.How to test the change?
I added a bug, which miri caught https://github.com/DataDog/libdatadog/actions/runs/5941345114/job/16111983401?pr=225
I then rolled back the bug, and Miri passed https://github.com/DataDog/libdatadog/actions/runs/5941396845/job/16112151552?pr=225