-
Notifications
You must be signed in to change notification settings - Fork 286
Add --all-features, cargo fmt --check, cargo check, cargo test, cargo doc, and RUSTFLAGS=-Dwarnings to CI
#483
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Fails on Arch and Fedora during Arch: Running unittests (target/release/deps/c2rust_ast_exporter-08a638edb21ed379)
: CommandLine Error: Option 'openmp-ir-builder-optimistic-attributes' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options
error: test failed, to rerun pass '-p c2rust-ast-exporter --lib' Running unittests (target/release/deps/c2rust_ast_exporter-08a638edb21ed379)
: CommandLine Error: Option 'help-list' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options
error: test failed, to rerun pass '-p c2rust-ast-exporter --lib'It seems we're passing multiple of the same options to |
|
Neither of the errors are reproducible in local docker builds; that's weird. |
|
Doesn't appear to be flaky CI either; very odd. |
e32e2ba to
689e5d2
Compare
--all-features, cargo test, and cargo doc to CI.--all-features, cargo fmt --check, and cargo doc to CI.
|
It appears the same CI errors are happening in Arch in Fedora, but in |
|
The errors went away when I removed |
--all-features, cargo fmt --check, and cargo doc to CI.--all-features, cargo fmt --check, cargo test, and cargo doc to CI.
--all-features, cargo fmt --check, cargo test, and cargo doc to CI.cargo fmt --check, cargo check --all-features, cargo test, cargo doc, and RUSTFLAGS=-Dwarnings to CI.
cargo fmt --check, cargo check --all-features, cargo test, cargo doc, and RUSTFLAGS=-Dwarnings to CI.cargo fmt --check, cargo check --all-features, cargo test, cargo doc, and RUSTFLAGS=-Dwarnings to CI
cargo fmt --check, cargo check --all-features, cargo test, cargo doc, and RUSTFLAGS=-Dwarnings to CI--all-features/--features dynamic-instrumentation, cargo fmt --check, cargo check, cargo test, cargo doc, and RUSTFLAGS=-Dwarnings to CI
|
Currently, anything that builds with See #500 for more on this. |
|
This should be good to go now. Only |
156b9dc to
cab3e8a
Compare
|
Once these PRs land, finally closing #474, we can add |
|
The PDG snapshot tests are under |
cab3e8a to
a5af63e
Compare
bafbe08 to
40a1285
Compare
|
|
[nitpick & digression] |
…ainst different LLVM libraries/versions, which may cause the errors I'm seeing?
… probably less likely to have an important failure.
…hat it works again (though the `--all-features` might fail).
…es` for commands that run (`cargo build`, `cargo test`) as we don't want `--features llvm-static` in those cases.
…rnings` from `check.sh` causing them to fail, so now `unset RUSTFLAGS` before them. Now `check.sh` passes. Also, build with `--release` now as `test_translator.py` uses that.
…currently commented out).
9200e2a to
a90b2f1
Compare
… doesn't support arrays properly. Plus, it'd be a good idea to keep bash versions similar so features like arrays don't become a problem in the future, too.
… now been removed.
…uild documentation.
--all-features/--features dynamic-instrumentation, cargo fmt --check, cargo check, cargo test, cargo doc, and RUSTFLAGS=-Dwarnings to CI--all-features, cargo fmt --check, cargo check, cargo test, cargo doc, and RUSTFLAGS=-Dwarnings to CI
…` and force them to be in sync.
…h `--no-deps`) so pushing it to the end (since it's less likely to fail) isn't that important.
|
@spernsteiner, CI for It appears the flaky CI bug may (🤞) be gone now after the major #554 PR that improved instrumentation/test times. |
|
@spernsteiner, I tried #536 (comment), but |
Apparently the package name is e.g. |
|
It seems that for LLVM 6 and earlier, it's |
…me OSes (#593) and we want things to work now.
Starts to f ix #477.
This adds
--all-features/--features dynamic-instrumentation,cargo fmt --check,cargo check,cargo test,cargo doc, andRUSTFLAGS=-Dwarningsto CI. Onlycargo clippyis left.This adds about 5 minutes to CI, going from 10-15 minutes to 15-25 minutes. This is mainly from:
cargo check --all-features: ~5 minutescargo test: ~3 minutes (mostly pdg snapshot and static analysis tests)On the other hand, these take practically no time:
cargo fmt --check: 1 secondcargo doc --no-deps: 6 secondsPrevious we only had:
cargo build./scripts/test_translator.py tests/Now we have added:
cargo fmt --checkRUSTFLAGS='-D warnings' cargo check --all-featuresRUSTFLAGS='-D warnings' cargo buildRUSTFLAGS='-D warnings' cargo testRUSTDOCFLAGS='-D warnings' cargo doc --all-features --document-private-itemsWe still have these to go:
RUSTFLAGS='-D warnings' cargo clippy --tests --all --all-features(includescargo check): Fix allclippywarnings #474For commands that check only and do not run (
cargo check,cargo doc), we specify--all-features, which is equivalent to--features llvm-static. But for commands that do build/run (cargo build,cargo test), we don't specify--all-featuresas we don't want to test--features llvm-staticby default, and it doesn't work on the Arch and Fedora docker images (see #500).Currently,
cargo test -p c2rust-analyzeis excluded as it fails on some OSes in CI (#593). It will be re-enabled once that's fixed, but I want to getcargo testinto CI as soon as possible.