1
0
forked from ROMEO/nexosim

Split sinks and source registries

This makes it possible to concurrently control and monitor the
simulation when using gRPC.
Accordingly, the gRPC server now runs on 2 threads so it can serve
control and monitoring requests concurrently.
This commit is contained in:
Serge Barral
2024-06-12 11:14:30 +02:00
parent f731d40add
commit 0abc520e4b
19 changed files with 1259 additions and 1679 deletions

View File

@ -28,7 +28,7 @@ jobs:
toolchain: ${{ matrix.rust }}
- name: Run cargo check
run: cargo check --features="rpc grpc-service"
run: cargo check --features="grpc-service"
build-wasm:
name: Build wasm32
@ -43,7 +43,7 @@ jobs:
targets: wasm32-unknown-unknown
- name: Run cargo build (wasm)
run: cargo build --target wasm32-unknown-unknown --features="rpc"
run: cargo build --target wasm32-unknown-unknown --features="wasm-service"
test:
name: Test suite
@ -56,7 +56,7 @@ jobs:
uses: dtolnay/rust-toolchain@stable
- name: Run cargo test
run: cargo test --features="rpc grpc-service"
run: cargo test --features="grpc-service"
loom-dry-run:
name: Loom dry run
@ -69,7 +69,7 @@ jobs:
uses: dtolnay/rust-toolchain@stable
- name: Dry-run cargo test (Loom)
run: cargo test --no-run --tests --features="rpc grpc-service"
run: cargo test --no-run --tests --features="grpc-service"
env:
RUSTFLAGS: --cfg asynchronix_loom
@ -86,12 +86,12 @@ jobs:
components: miri
- name: Run cargo miri tests (single-threaded executor)
run: cargo miri test --tests --lib --features="rpc grpc-service"
run: cargo miri test --tests --lib --features="grpc-service"
env:
MIRIFLAGS: -Zmiri-strict-provenance -Zmiri-disable-isolation -Zmiri-num-cpus=1
- name: Run cargo miri tests (multi-threaded executor)
run: cargo miri test --tests --lib --features="rpc grpc-service"
run: cargo miri test --tests --lib --features="grpc-service"
env:
MIRIFLAGS: -Zmiri-strict-provenance -Zmiri-disable-isolation -Zmiri-num-cpus=4
@ -149,7 +149,7 @@ jobs:
run: cargo fmt --all -- --check
- name: Run cargo clippy
run: cargo clippy --features="rpc grpc-service"
run: cargo clippy --features="grpc-service"
docs:
name: Docs
@ -162,4 +162,4 @@ jobs:
uses: dtolnay/rust-toolchain@stable
- name: Run cargo doc
run: cargo doc --no-deps --features="rpc grpc-service" --document-private-items
run: cargo doc --no-deps --features="grpc-service" --document-private-items