Skip to content

Commit ca6309d

Browse files
authored
Merge pull request #62 from jamesmunns/james-miri
Refactor with Cursor-based API, and passing Miri tests
2 parents c8190bd + 085c264 commit ca6309d

File tree

5 files changed

+649
-290
lines changed

5 files changed

+649
-290
lines changed

.github/workflows/build.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,27 @@ on:
1010
- cron: '40 5 * * *' # every day at 5:40
1111
pull_request:
1212

13+
env:
14+
# disable incremental compilation.
15+
#
16+
# incremental compilation is useful as part of an edit-build-test-edit cycle,
17+
# as it lets the compiler avoid recompiling code that hasn't changed. however,
18+
# on CI, we're not making small edits; we're almost always building the entire
19+
# project from scratch. thus, incremental compilation on CI actually
20+
# introduces *additional* overhead to support making future builds
21+
# faster...but no future builds will ever occur in any given CI environment.
22+
#
23+
# see https://matklad.github.io/2021/09/04/fast-rust-builds.html#ci-workflow
24+
# for details.
25+
CARGO_INCREMENTAL: 0
26+
# allow more retries for network requests in cargo (downloading crates) and
27+
# rustup (installing toolchains). this should help to reduce flaky CI failures
28+
# from transient network timeouts or other issues.
29+
CARGO_NET_RETRY: 10
30+
RUSTUP_MAX_RETRIES: 10
31+
# don't emit giant backtraces in the CI logs.
32+
RUST_BACKTRACE: short
33+
1334
jobs:
1435
test:
1536
name: "Test"
@@ -110,6 +131,16 @@ jobs:
110131
- name: "Run cargo test with `use_spin_nightly` feature"
111132
run: cargo test --features use_spin_nightly
112133

134+
test_miri:
135+
name: "Miri tests"
136+
runs-on: ubuntu-latest
137+
env:
138+
MIRIFLAGS: "-Zmiri-disable-isolation -Zmiri-strict-provenance -Zmiri-tag-raw-pointers -Zmiri-ignore-leaks"
139+
steps:
140+
- uses: actions/checkout@v1
141+
- run: rustup toolchain install nightly --profile minimal --component rust-src miri
142+
- run: cargo +nightly miri test --all-features
143+
113144
check_formatting:
114145
name: "Check Formatting"
115146
runs-on: ubuntu-latest

Changelog.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Unreleased
22

3+
- Changed constructor to take `*mut u8` instead of `usize` ([#62])
4+
- NOTE: Breaking API change - will require 0.10.0 release
5+
- Reworked internals to pass Miri tests ([#62])
6+
7+
[#62]: https://github.com/phil-opp/linked-list-allocator/pull/62
8+
39
# 0.9.1 – 2021-10-17
410

511
- Add safe constructor and initialization for `Heap` ([#55](https://github.com/phil-opp/linked-list-allocator/pull/55))

0 commit comments

Comments
 (0)