Skip to content

Commit 89a4c1b

Browse files
committed
fix(gitlab-ci): quarantine the non-building quic_transport NIF from cargo jobs
Wiring the cargo-* jobs to actually run (#71) exposed that opsm_ex/native/quic_transport does not compile: its pinned h3 0.0.6 / h3-quinn 0.0.7 predate quinn 0.11's private StreamId field, and with no committed Cargo.lock the fresh dependency resolve breaks. It is an OPTIONAL QUIC/HTTP3 NIF — Opsm.Transport.QuicNif swallows a failed :erlang.load_nif and falls back to HTTP/2 (nif_loaded? is hard-coded false), so the Elixir side runs without it and no CI builds it today. Remove it from $RUST_CRATE_DIRS (the build loop) and from every `rules: exists:` / artifacts list, with a QUARANTINED header note giving the un-quarantine condition: migrate the h3/h3-quinn/quinn triple to a mutually-compatible set and commit a lockfile. Tracked as a follow-up. The remaining eight crates all build, test, and fmt-clean locally. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Kq24sZCEohSrNFXSuEuz6C
1 parent 1d743b2 commit 89a4c1b

1 file changed

Lines changed: 11 additions & 8 deletions

File tree

.gitlab-ci.yml

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,16 @@
1616
# $RUST_CRATE_DIRS. Keep that variable and each job's `rules: exists:`
1717
# list in sync when a crate is added or removed — `rules: exists:` needs
1818
# literal paths, it does not expand CI variables.
19+
#
20+
# QUARANTINED: opsm_ex/native/quic_transport is deliberately absent from
21+
# $RUST_CRATE_DIRS. It is an OPTIONAL QUIC/HTTP3 NIF — Opsm.Transport.QuicNif
22+
# swallows a failed :erlang.load_nif and falls back to HTTP/2 (nif_loaded?
23+
# is hard-coded false), so the Elixir side runs fine without it, and no CI
24+
# builds it today. It currently does not compile: its pinned h3 0.0.6 /
25+
# h3-quinn 0.0.7 predate quinn 0.11's private StreamId, and with no committed
26+
# Cargo.lock the fresh resolve breaks. Un-quarantine only after migrating the
27+
# h3/h3-quinn/quinn triple to a mutually-compatible set and committing a lock.
28+
# Tracked as a follow-up; do not add it back to the loop until it builds.
1929

2030
stages:
2131
- security
@@ -26,10 +36,10 @@ variables:
2636
CARGO_HOME: ${CI_PROJECT_DIR}/.cargo
2737
# First-party Rust crates only — opsm_ex/deps/** is vendored (Mix deps
2838
# cache), never linted/audited/built as our own code.
39+
# quic_transport intentionally excluded — see QUARANTINED note in the header.
2940
RUST_CRATE_DIRS: >-
3041
opsm-ui/tui
3142
opsm_ex/native/opsm_pq_nif
32-
opsm_ex/native/quic_transport
3343
services/checky-monkey
3444
services/oikos
3545
services/palimpsest-license
@@ -73,7 +83,6 @@ cargo-audit:
7383
- exists:
7484
- opsm-ui/tui/Cargo.toml
7585
- opsm_ex/native/opsm_pq_nif/Cargo.toml
76-
- opsm_ex/native/quic_transport/Cargo.toml
7786
- services/checky-monkey/Cargo.toml
7887
- services/oikos/Cargo.toml
7988
- services/palimpsest-license/Cargo.toml
@@ -94,7 +103,6 @@ cargo-deny:
94103
- exists:
95104
- opsm-ui/tui/Cargo.toml
96105
- opsm_ex/native/opsm_pq_nif/Cargo.toml
97-
- opsm_ex/native/quic_transport/Cargo.toml
98106
- services/checky-monkey/Cargo.toml
99107
- services/oikos/Cargo.toml
100108
- services/palimpsest-license/Cargo.toml
@@ -132,7 +140,6 @@ rustfmt:
132140
- exists:
133141
- opsm-ui/tui/Cargo.toml
134142
- opsm_ex/native/opsm_pq_nif/Cargo.toml
135-
- opsm_ex/native/quic_transport/Cargo.toml
136143
- services/checky-monkey/Cargo.toml
137144
- services/oikos/Cargo.toml
138145
- services/palimpsest-license/Cargo.toml
@@ -153,7 +160,6 @@ clippy:
153160
- exists:
154161
- opsm-ui/tui/Cargo.toml
155162
- opsm_ex/native/opsm_pq_nif/Cargo.toml
156-
- opsm_ex/native/quic_transport/Cargo.toml
157163
- services/checky-monkey/Cargo.toml
158164
- services/oikos/Cargo.toml
159165
- services/palimpsest-license/Cargo.toml
@@ -198,7 +204,6 @@ cargo-test:
198204
- exists:
199205
- opsm-ui/tui/Cargo.toml
200206
- opsm_ex/native/opsm_pq_nif/Cargo.toml
201-
- opsm_ex/native/quic_transport/Cargo.toml
202207
- services/checky-monkey/Cargo.toml
203208
- services/oikos/Cargo.toml
204209
- services/palimpsest-license/Cargo.toml
@@ -232,7 +237,6 @@ cargo-build:
232237
paths:
233238
- opsm-ui/tui/target/release/
234239
- opsm_ex/native/opsm_pq_nif/target/release/
235-
- opsm_ex/native/quic_transport/target/release/
236240
- services/checky-monkey/target/release/
237241
- services/oikos/target/release/
238242
- services/palimpsest-license/target/release/
@@ -244,7 +248,6 @@ cargo-build:
244248
- exists:
245249
- opsm-ui/tui/Cargo.toml
246250
- opsm_ex/native/opsm_pq_nif/Cargo.toml
247-
- opsm_ex/native/quic_transport/Cargo.toml
248251
- services/checky-monkey/Cargo.toml
249252
- services/oikos/Cargo.toml
250253
- services/palimpsest-license/Cargo.toml

0 commit comments

Comments
 (0)