Proof of concept mechanical port of ircnet/ircd to Rust as part of a bit about C being insecure for network services
0

Configure Feed

Select the types of activity you want to include in your feed.

ircd.rs / .config / nextest.toml
2.7 kB 51 lines
1# cargo-nextest configuration — https://nexte.st/docs/configuration/ 2# 3# Why this exists: `cargo test` runs each test *binary* serially (libtest only 4# parallelizes within a binary), so the boot-level golden suite — ~200 binaries, 5# each booting a real leveva daemon — runs end-to-end serially (~10 min). nextest 6# runs every test as its own process, parallelizing across binaries *and* tests. 7# 8# This is only safe because the golden harness (leveva/tests/harness/mod.rs) boots 9# each fixture on a freshly-reserved **ephemeral** port instead of the old shared 10# 16700-under-a-global-lock; with that, the wall-clock floor becomes the single 11# slowest test rather than the sum of all of them. 12 13# The boot-level golden tests each spawn a single-threaded leveva daemon and drive 14# barrier-paced clients. Cap how many run at once (independent of `test-threads`) 15# so the daemons stay responsive and do not miss a client's read window under load. 16# The fast lib unit tests are not in this group, so they still run at full width. 17# Raise/lower this on a bigger/smaller box; the harness also enforces a CPU-count 18# semaphore as a backstop, so this never needs to exceed the core count. 19[test-groups] 20golden = { max-threads = 32 } 21 22[[profile.default.overrides]] 23# Only the daemon-booting boot-level tests — every one lives in a binary named 24# golden_*, integration_*, or *pseudoserver. The lib unit tests and the fast 25# *_proptest binaries are excluded, so they still run at full `test-threads` width. 26filter = 'binary(/^golden_/) | binary(/^integration_/) | binary(/pseudoserver/)' 27test-group = 'golden' 28 29[profile.default] 30# Fast lib unit tests (and anything not in the `golden` group) run this wide. 31# Daemon-booting golden tests are bounded by the `golden` test-group above, so a 32# high value here does not oversubscribe the single-threaded daemons. 33test-threads = 256 34 35# A few golden tests deliberately wait out the harness read deadline (negative 36# checks via timeout) and run 30–125s. Flag them as SLOW but never kill before 37# 5 minutes — that ceiling only catches a genuinely hung test. 38slow-timeout = { period = "30s", terminate-after = 10 } 39 40# Barrier-paced transcripts can occasionally miss a read window under parallel 41# load. Genuine breaks reproduce deterministically (e.g. a snapshot mismatch), 42# so a small retry budget absorbs the rare timing flake without masking real 43# failures — a test that only passes on retry is reported as FLAKY, not PASS. 44retries = 2 45 46# CI: don't stop at the first failure (collect the full failure set) and surface 47# flaky passes in the summary. 48[profile.ci] 49retries = 2 50fail-fast = false 51final-status-level = "flaky"