-
Notifications
You must be signed in to change notification settings - Fork 29
Fix ci #15
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
Merged
Merged
Fix ci #15
Changes from 16 commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
3e617c0
Use nightly and temporarly switch to my Azure
TroyNeubauer 523a47f
Add support for stable Rust
TroyNeubauer c36114c
Use recent ubuntu
TroyNeubauer 9accb9b
Use aarch64-unknown-none for testing no_std
TroyNeubauer 4912083
Add flurry CI config and fix miri time support
TroyNeubauer 7e974de
Remove depends on in ci
TroyNeubauer b360d98
Removed leak sanatizer and have asan ignore leaks
TroyNeubauer 6a022fb
Add loom test
TroyNeubauer 731216c
Fix syntax issue
TroyNeubauer d3c4f63
Check for compilation failure when using a no_std target with std ena…
TroyNeubauer a2d3e96
Fix syntax issue
TroyNeubauer 047ee91
Fix syntax issue
TroyNeubauer e7f8596
Use stable for most CI tasks and insert proper #[cfg] guards
TroyNeubauer 3e96f9b
Remove clippy task, already run by stable and beta
TroyNeubauer dbd4aeb
Implement requested changes
TroyNeubauer 3138eff
Merge remote-tracking branch 'upstream/main' into fix_ci
TroyNeubauer 74db994
Use more explecic `cfg` guard for domain timing
TroyNeubauer File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
jobs: | ||
- template: default.yml@templates | ||
parameters: | ||
minrust: 1.56.0 | ||
- template: coverage.yml@templates | ||
parameters: | ||
token: $(CODECOV_TOKEN_SECRET) | ||
- job: no_std_32bit | ||
displayName: "Compile-check on 32 bit no_std target" | ||
pool: | ||
vmImage: ubuntu-latest | ||
steps: | ||
- template: install-rust.yml@templates | ||
parameters: | ||
targets: | ||
- thumbv7m-none-eabi | ||
- bash: cargo check --target thumbv7m-none-eabi --no-default-features | ||
displayName: cargo check | ||
- script: | | ||
! cargo check --target thumbv7m-none-eabi | ||
displayName: Compilation fails with std enabled | ||
- job: no_std_64bit | ||
displayName: "Compile-check on 64 bit no_std target" | ||
pool: | ||
vmImage: ubuntu-latest | ||
steps: | ||
- template: install-rust.yml@templates | ||
parameters: | ||
targets: | ||
- aarch64-unknown-none | ||
- bash: cargo check --target aarch64-unknown-none --no-default-features | ||
displayName: cargo check | ||
- script: | | ||
! cargo check --target aarch64-unknown-none | ||
displayName: Compilation fails with std enabled | ||
- job: miri | ||
displayName: "Run miri on test suite" | ||
pool: | ||
vmImage: ubuntu-latest | ||
steps: | ||
- bash: | | ||
echo '##vso[task.setvariable variable=nightly]nightly-'$(curl -s https://rust-lang.github.io/rustup-components-history/x86_64-unknown-linux-gnu/miri) | ||
displayName: "Determine latest miri nightly" | ||
- template: install-rust.yml@templates | ||
parameters: | ||
rust: $(nightly) | ||
components: | ||
- miri | ||
- script: cargo miri test | ||
displayName: cargo miri test | ||
env: | ||
MIRIFLAGS: -Zmiri-ignore-leaks | ||
- job: loom | ||
displayName: "Run loom on test suite" | ||
pool: | ||
vmImage: ubuntu-latest | ||
steps: | ||
- template: install-rust.yml@templates | ||
- script: RUSTFLAGS="--cfg loom" cargo test --release --test loom | ||
displayName: cargo test --test loom | ||
- job: asan | ||
displayName: "Run address sanitizer on test suite" | ||
pool: | ||
vmImage: ubuntu-latest | ||
steps: | ||
- template: install-rust.yml@templates | ||
parameters: | ||
rust: nightly | ||
- bash: | | ||
sudo ln -s /usr/bin/llvm-symbolizer-6.0 /usr/bin/llvm-symbolizer | ||
displayName: Enable debug symbols | ||
# only --lib --tests b/c of https://github.com/rust-lang/rust/issues/53945 | ||
- script: | | ||
env ASAN_OPTIONS="detect_odr_violation=0:detect_leaks=0" RUSTFLAGS="-Z sanitizer=address" cargo test --lib --tests --all-features --target x86_64-unknown-linux-gnu | ||
displayName: cargo -Z sanitizer=address test | ||
resources: | ||
repositories: | ||
- repository: templates | ||
type: github | ||
name: crate-ci/azure-pipelines | ||
ref: refs/heads/v0.4 | ||
endpoint: jonhoo |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I follow why it's necessary to turn this off under miri?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It goes with the other "time" related things so I believe it makes things cleaner when
due_time
is disabled (see comment below)Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, I still don't understand after reading your comment. From what I can tell, miri already mocks time just fine (rust-lang/miri#975), and supports
Instant::now
(rust-lang/miri#1243), and I don't see anything about time-related limitations in the miri readme? What error do you get if you make miri run with time supported?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, I'm going to merge this as-is just so we can iterate just on the miri point and have working CI in the meantime!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, I was getting the
clock_gettime
not available when isolation is enabled error, not knowing about-Zmiri-disable-isolation
. This should be pretty easy to address in a PR.