Написал rust.yml
name: Rust
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
jobs:
build-debug:
name: Build Debug
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build Debug
run: cargo build --verbose
test-debug:
name: Test Debug
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build Debug
run: cargo build --verbose
- name: Run Tests Debug
run: cargo test --verbose
Тесты постоянно проваливаются с ошибкой (signal: 11, SIGSEGV: invalid memory reference). Проблема в том, что github не помечает, на каком именно тесте он лёг. Поэтому я даже не знаю, куда смотреть. Сам разрабатываю на Ubuntu, и все тесты у меня проходят.
Вывод github
Run cargo test --verbose
Fresh libc v0.2.161
Fresh autocfg v1.4.0
Fresh cfg-if v1.0.0
Fresh unicode-ident v1.0.13
Fresh crossbeam-utils v0.8.20
Fresh proc-macro2 v1.0.88
Fresh getrandom v0.2.15
Fresh cfg_aliases v0.2.1
Fresh version_check v0.9.5
Fresh scopeguard v1.2.0
Fresh lock_api v0.4.12
Fresh quote v1.0.37
Fresh crossbeam-epoch v0.9.18
Fresh bitflags v2.6.0
Fresh crossbeam-deque v0.8.5
Fresh memoffset v0.9.1
Fresh syn v2.0.82
Fresh spin v0.9.8
Fresh nanorand v0.7.0
Fresh crossbeam-queue v0.3.11
Fresh crossbeam-channel v0.5.13
Fresh num_cpus v1.16.0
Fresh once_cell v1.20.2
Fresh zerocopy v0.7.35
Fresh futures-sink v0.3.31
Fresh futures-core v0.3.31
Fresh crossbeam v0.8.4
Fresh ahash v0.8.11
Fresh flume v0.11.1
Fresh core_affinity v0.8.1
Fresh nix v0.29.0
Fresh io-uring v0.7.1
Fresh orengine-macros v2.0.0 (/home/runner/work/orengine/orengine/orengine-macros)
Fresh socket2 v0.5.7
Fresh fastrand v2.1.1
Fresh smallvec v2.0.0-alpha.7
Compiling orengine v0.4.0-unstable (/home/runner/work/orengine/orengine)
Running `/home/runner/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/bin/rustc --crate-name orengine --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values())' -C metadata=3df080d3568801d4 -C extra-filename=-3df080d3568801d4 --out-dir /home/runner/work/orengine/orengine/target/debug/deps -C incremental=/home/runner/work/orengine/orengine/target/debug/incremental -L dependency=/home/runner/work/orengine/orengine/target/debug/deps --extern ahash=/home/runner/work/orengine/orengine/target/debug/deps/libahash-d2f8b00339272b31.rlib --extern core_affinity=/home/runner/work/orengine/orengine/target/debug/deps/libcore_affinity-2bba5e24b5a10516.rlib --extern crossbeam=/home/runner/work/orengine/orengine/target/debug/deps/libcrossbeam-2cf157d5941126e0.rlib --extern fastrand=/home/runner/work/orengine/orengine/target/debug/deps/libfastrand-42826cb8e3d3a20a.rlib --extern flume=/home/runner/work/orengine/orengine/target/debug/deps/libflume-41920447e35a6fc1.rlib --extern io_uring=/home/runner/work/orengine/orengine/target/debug/deps/libio_uring-aa1e9cf086b5ad8a.rlib --extern nix=/home/runner/work/orengine/orengine/target/debug/deps/libnix-e435e9930f958c40.rlib --extern orengine_macros=/home/runner/work/orengine/orengine/target/debug/deps/liborengine_macros-d957f3b1a30dafd7.so --extern smallvec=/home/runner/work/orengine/orengine/target/debug/deps/libsmallvec-7d2c07de46ae86e0.rlib --extern socket2=/home/runner/work/orengine/orengine/target/debug/deps/libsocket2-9a122f393c1b08f4.rlib`
Finished `test` profile [unoptimized + debuginfo] target(s) in 4.89s
Running `/home/runner/work/orengine/orengine/target/debug/deps/orengine-3df080d3568801d4`
running 108 tests
test buf::buf_pool::tests::test_buf_pool ... ok
test buf::buffer::tests::test_from ... ok
test buf::buffer::tests::test_append_and_clear ... ok
test buf::buffer::tests::test_add_len_and_set_len_to_cap ... ok
test buf::buffer::tests::test_new ... ok
test buf::buffer::tests::test_len_and_cap ... ok
test buf::buffer::tests::test_index ... ok
test buf::buffer::tests::test_is_empty_and_is_full ... ok
test buf::buffer::tests::test_resize ... ok
test fs::dir_builder::tests::test_dir_builder ... ok
test fs::dir_builder::tests::test_dir_builder_create ... ok
test fs::shortcuts::tests::test_remove_dir ... ok
test local::pool::tests::test_new_local_pool ... ok
error: test failed, to rerun pass `--lib`
Caused by:
process didn't exit successfully: `/home/runner/work/orengine/orengine/target/debug/deps/orengine-3df080d3568801d4` (signal: 11, SIGSEGV: invalid memory reference)
Есть ли мысли, почему тесты падают именно там, или как посмотреть, на каком?