From 2efe39c891be9f172ecf11b76a31cec8ad5ee198 Mon Sep 17 00:00:00 2001 From: John Vandenberg Date: Sat, 14 Nov 2026 10:00:00 +0800 Subject: [PATCH] Upgrade to Rust 1.100 --- .mise/config.coverage.toml | 32 +++++++++++++++++ .mise/config.toml | 4 ++- CHANGELOG.md | 2 ++ Cargo.toml | 11 +++--- config/conftest/policy/cargo/cargo.rego | 10 ++++-- config/conftest/policy/cargo/cargo_test.rego | 38 ++++++++++++++++++++ config/jscpd-baseline.json | 10 ++++-- generated/rust-rest/Cargo.toml | 1 + libs/actix-web-config/Cargo.toml | 1 + libs/core-guest/Cargo.toml | 1 + libs/edge-toolkit/Cargo.toml | 1 + libs/et-otlp/Cargo.toml | 1 + libs/gpu-probe/Cargo.toml | 1 + libs/https-listener/Cargo.toml | 1 + libs/lidar/Cargo.toml | 1 + libs/math1/Cargo.toml | 1 + libs/org/Cargo.toml | 1 + libs/path/Cargo.toml | 1 + libs/sanitise/Cargo.toml | 1 + libs/test-helpers/Cargo.toml | 1 + libs/test-nats/Cargo.toml | 1 + libs/test-otlp/Cargo.toml | 1 + libs/test-recovery/Cargo.toml | 1 + libs/wasi-guest/Cargo.toml | 1 + libs/web/Cargo.toml | 1 + libs/ws-runner-common/Cargo.toml | 1 + modules/core/core-math1/Cargo.toml | 1 + modules/wasi/wasi-comm1/Cargo.toml | 1 + modules/wasi/wasi-data1/Cargo.toml | 1 + modules/wasi/wasi-lidar1/Cargo.toml | 1 + modules/wasi/wasi-math1-sender/Cargo.toml | 1 + modules/wasi/wasi-math1/Cargo.toml | 1 + modules/web/audio1/Cargo.toml | 1 + modules/web/bluetooth/Cargo.toml | 1 + modules/web/comm1/Cargo.toml | 1 + modules/web/data1/Cargo.toml | 1 + modules/web/except1/Cargo.toml | 1 + modules/web/face-detection/Cargo.toml | 1 + modules/web/geolocation/Cargo.toml | 1 + modules/web/graphics-info/Cargo.toml | 1 + modules/web/har1/Cargo.toml | 1 + modules/web/llm1/Cargo.toml | 1 + modules/web/math1-sender/Cargo.toml | 1 + modules/web/math1/Cargo.toml | 1 + modules/web/nfc/Cargo.toml | 1 + modules/web/pic-viewer/Cargo.toml | 1 + modules/web/sensor1/Cargo.toml | 1 + modules/web/speech-recognition/Cargo.toml | 1 + modules/web/video1/Cargo.toml | 1 + services/firmware-modules/Cargo.toml | 1 + services/hub-backplane/Cargo.toml | 1 + services/modules/Cargo.toml | 1 + services/recovery-supervisor/Cargo.toml | 1 + services/storage/Cargo.toml | 1 + services/websockify/Cargo.toml | 1 + services/ws-pyo3-runner/Cargo.toml | 1 + services/ws-server-firmware/Cargo.toml | 1 + services/ws-server/Cargo.toml | 1 + services/ws-test-server/Cargo.toml | 1 + services/ws-wasi-runner/Cargo.toml | 1 + services/ws-wasm-agent/Cargo.toml | 1 + services/ws/Cargo.toml | 1 + utilities/cli/Cargo.toml | 1 + utilities/gpu-probe/Cargo.toml | 1 + utilities/gpu-probe/web/Cargo.toml | 1 + utilities/int-gen/Cargo.toml | 1 + utilities/onnx/Cargo.toml | 1 + utilities/repo-check/Cargo.toml | 1 + utilities/wasm-cov-wrapper/Cargo.toml | 1 + 69 files changed, 157 insertions(+), 12 deletions(-) diff --git a/.mise/config.coverage.toml b/.mise/config.coverage.toml index 6fcada8d..6892303a 100644 --- a/.mise/config.coverage.toml +++ b/.mise/config.coverage.toml @@ -93,6 +93,38 @@ DYLD_LIBRARY_PATH = "{{ vars.ort_loc_unix }}/lib" LD_LIBRARY_PATH = "{{ vars.ort_loc_unix }}/lib" _.path = "{{ vars.a_home }}/.local/share/mise/installs/conda-clang/latest/bin" +# Lower the workspace `rust-version` to the coverage nightly's own release, which it predates. +# `rust_nightly` is held at a 1.99 nightly for its LLVM (see that var), while every crate inherits a newer +# `rust-version`, and cargo refuses to build any of them on an older rustc: +# error: rustc 1.99.0-nightly is not supported by the following packages: +# et-ws-web-runner@0.3.0 requires rustc 1.100.0 +# Cargo's only bypass is the `--ignore-rust-version` flag, with no config key or env var, and this env runs every +# cargo call on the nightly -- the module builds, nextest, the scenario runners' generated `cargo run`s -- so one +# rewrite of the manifest, before any of them, replaces threading the flag through each. postinstall runs at the +# end of every `mise install` in this env, which the coverage workflow does before its first build; run locally, +# it leaves Cargo.toml modified, which must not be committed. Drop it once `rust_nightly` reaches the +# `rust-version` again. +# +# Neither awk program may start with `/` or hold a backslash: Git Bash on Windows rewrites such an argument to a +# native exe as a path, and goawk then sees +# C:/Program Files/Git/^rust-version = / { $0 = "rust-version = /"" v "/"" } { print } +# so each line matches on its first field and the quote comes in through `-v q`. Observed on commit +# at +# `https://github.com/edge-toolkit/core/actions/runs/43579615267/job/132401326649`. +[hooks] +postinstall = """ +release=$(rustc -vV | goawk '$1 == "release:" { sub(/-.*/, "", $2); print $2 }') +if [ -z "$release" ]; then + echo "coverage: no release line in rustc -vV" >&2 + exit 1 +fi +manifest="$MISE_PROJECT_ROOT/Cargo.toml" +pin='$1 == "rust-version" { $0 = "rust-version = " q v q } { print }' +goawk -v v="$release" -v q='"' "$pin" "$manifest" >"$manifest.cov" +coreutils mv "$manifest.cov" "$manifest" +echo "coverage: workspace rust-version set to $release for $RUSTUP_TOOLCHAIN; do not commit Cargo.toml" >&2 +""" + [tasks.cargo-llvm-cov] description = "Rust coverage (cargo-llvm-cov) + JUnit test results (nextest); emits lcov.info + JUnit reports" # cargo-llvm-cov installs `llvm-tools-preview` on demand for the mise-managed toolchain. diff --git a/.mise/config.toml b/.mise/config.toml index 48dc2edd..a0b8c65b 100644 --- a/.mise/config.toml +++ b/.mise/config.toml @@ -1379,8 +1379,10 @@ coreutils mkdir -p "$ort_build_dir/examples" "$ort_build_dir/deps" tc="{{ vars.rust_nightly }}" # `docs` is the feature docs.rs builds with, which renders each crate's feature list. features="--features docs" +# `rust_nightly` predates the workspace `rust-version`, which cargo otherwise refuses to build on. +flags="--keep-going --workspace --no-deps --document-private-items --ignore-rust-version" # shellcheck disable=SC2086 -cargo "+$tc" doc --keep-going --workspace --no-deps --document-private-items $features {{ vars.cargo_ws_excludes }} +cargo "+$tc" doc $flags $features {{ vars.cargo_ws_excludes }} """ shell = "{{ vars.task_shell }}" diff --git a/CHANGELOG.md b/CHANGELOG.md index dedd5602..0f289de3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -193,6 +193,8 @@ Changelog 1.1.0. ### Changed +- **Breaking:** every published crate now declares a minimum supported Rust version of 1.100, which cargo enforces; + build with Rust 1.100 or newer. Before, only `et-ws-web-runner` declared one, at 1.99. - **Breaking:** `edge-toolkit` built without `std` holds the agent registry, `ws_server`, only with its new `board` feature, which brings in the spin lock it is kept under; `board` also adds `board::BoardLock`, that lock, for the rest of a board's shared state. Likewise `et-ws-service` without `std` holds its `hub` routing core only with diff --git a/Cargo.toml b/Cargo.toml index 3e159ad1..1255c323 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,13 +2,10 @@ edition = "2024" license = "Apache-2.0 or MIT" repository = "https://github.com/edge-toolkit/core" -# Held at 1.99 by the coverage toolchain, which no 1.100 nightly can be. -# Every 1.100.0-nightly carries LLVM 23, whose profraw format minicov 0.3.8 cannot write, and wasm-bindgen-test -# 0.3.80 pins minicov at exactly 0.3.8 (see the minicov entry). A 1.100 requirement made cargo refuse every crate -# on `rust_nightly`, with "rustc 1.99.0-nightly is not supported" on -# https://github.com/edge-toolkit/core/actions/runs/43355799367/job/131657587566. Raise it once a -# wasm-bindgen-test release accepts minicov 0.3.9, moving `rust_nightly` to a 1.100 nightly in the same change. -rust-version = "1.99.0" +# The oldest stable Rust every crate builds on; each member inherits it. +# The coverage build still compiles on `rust_nightly`, which predates it, so code must not use a std API that nightly +# lacks even where this value allows one. +rust-version = "1.100.0" [workspace] members = [ diff --git a/config/conftest/policy/cargo/cargo.rego b/config/conftest/policy/cargo/cargo.rego index ea87be92..61910125 100644 --- a/config/conftest/policy/cargo/cargo.rego +++ b/config/conftest/policy/cargo/cargo.rego @@ -147,10 +147,16 @@ deny contains msg if { msg := sprintf("%s: crate is not registered in the root [workspace].members", [file.path]) } +# Every field the root [workspace.package] defines, which each member must inherit rather than restate. +# Read from the manifest rather than listed here, so a field added to the workspace binds every member at once. +inherited_package_field contains field if { + some file in paths.files + file.path == "Cargo.toml" + some field, _ in file.contents.workspace["package"] +} + # Shared [package] metadata must be inherited from [workspace.package] via `.workspace = true`. # This keeps the values defined in exactly one place. -inherited_package_field := {"edition", "license", "repository"} - deny contains msg if { some file in paths.files is_member(file) diff --git a/config/conftest/policy/cargo/cargo_test.rego b/config/conftest/policy/cargo/cargo_test.rego index 22538c26..38a39041 100644 --- a/config/conftest/policy/cargo/cargo_test.rego +++ b/config/conftest/policy/cargo/cargo_test.rego @@ -323,3 +323,41 @@ test_feature_named_for_a_dependency_is_rejected if { some msg in msgs contains(msg, "feature \"picoserve\" shares its name with a dependency; name it for what it gives") } + +# A root manifest whose [workspace.package] defines `fields`, beside one member crate whose [package] is `pkg`. +inherit_input(fields, pkg) := [ + {"path": "Cargo.toml", "contents": {"workspace": {"package": fields}}}, + {"path": "libs/a/Cargo.toml", "contents": {"package": pkg}}, +] + +inherit_flagged(msgs, field) if { + some msg in msgs + msg == $"libs/a/Cargo.toml: [package] {field} must inherit via {field}.workspace = true" +} + +test_a_member_inheriting_every_workspace_field_is_accepted if { + fields := {"edition": "2024", "rust-version": "1.100.0"} + pkg := {"edition": {"workspace": true}, "rust-version": {"workspace": true}} + msgs := cargo.deny with input as inherit_input(fields, pkg) + not inherit_flagged(msgs, "edition") + not inherit_flagged(msgs, "rust-version") +} + +test_a_member_missing_a_workspace_field_is_rejected if { + fields := {"edition": "2024", "rust-version": "1.100.0"} + msgs := cargo.deny with input as inherit_input(fields, {"edition": {"workspace": true}}) + inherit_flagged(msgs, "rust-version") +} + +test_a_member_restating_a_workspace_field_is_rejected if { + fields := {"edition": "2024", "rust-version": "1.100.0"} + pkg := {"edition": {"workspace": true}, "rust-version": "1.99.0"} + msgs := cargo.deny with input as inherit_input(fields, pkg) + inherit_flagged(msgs, "rust-version") +} + +test_a_field_the_workspace_does_not_define_is_not_required if { + msgs := cargo.deny with input as inherit_input({"edition": "2024"}, {"edition": {"workspace": true}}) + not inherit_flagged(msgs, "license") + not inherit_flagged(msgs, "rust-version") +} diff --git a/config/jscpd-baseline.json b/config/jscpd-baseline.json index 1bd078c4..26dbea6f 100644 --- a/config/jscpd-baseline.json +++ b/config/jscpd-baseline.json @@ -3,6 +3,7 @@ "fingerprints": { "006f44d440c27cda": 1, "00d81214be9140a8": 1, + "01edd6739ce753fe": 1, "023513f38a87a1e6": 1, "02c3bb68a9cb1430": 1, "03b42cb8e894fb6e": 1, @@ -34,6 +35,7 @@ "1a1e1611e4db4656": 1, "1a97e5c72a30152e": 1, "1ac2e9fe36333da4": 1, + "1ae54c113da40043": 4, "1c64414236b8476c": 1, "1ce17b70419170cb": 1, "1d995ad6a80df709": 1, @@ -64,7 +66,6 @@ "35d7f304546de8a8": 1, "35deb288571d007e": 1, "35ee0ca892c51e2d": 1, - "378e3311bed8161a": 1, "389aea3e8662fb9b": 1, "39df8b0c7c0dccc1": 1, "3a3c6b4e89834dc8": 1, @@ -73,6 +74,7 @@ "3c0efbffa8bb6f9b": 1, "3c49721a9a85b54b": 1, "3de59029c7b786b0": 1, + "3e5173fcffd3dff2": 1, "3e5aadc3e77078b6": 1, "3e8305f3237e82bf": 1, "4259948cb662c568": 1, @@ -180,6 +182,7 @@ "92ed119fbc8ed830": 1, "92f49d4882056751": 1, "931d878178376165": 1, + "96823e8416235581": 1, "985af6ffa52d3359": 1, "9868e80d502c44d3": 1, "98bde64f5eef9b3a": 1, @@ -200,6 +203,7 @@ "a1ef5137775b605c": 1, "a3111223b027f569": 1, "a3a2b355d83e7c60": 1, + "a50e3c2ab67dc2d4": 2, "a518b5ae71e6e140": 1, "a52b3254cc78b001": 1, "a58c4944142e3bc2": 1, @@ -226,7 +230,10 @@ "b4803673dd3c6d6b": 1, "b4bba4c77bcedb60": 1, "b5cf8f89d849de0b": 1, + "b712ff446bb5bfaf": 1, "b75fecd921e6b09f": 1, + "b869684a731f3c33": 1, + "b95bd6bdf630137e": 1, "b9618e5424e42dff": 1, "b9f2cf6d0d1816f7": 1, "ba18dcc601d42b5e": 1, @@ -303,7 +310,6 @@ "edfb18c73a139873": 1, "ef5b9c050e029806": 1, "ef69568ef92f1b79": 1, - "efae224386080be2": 1, "f1d71f58ab3823e9": 1, "f1f99624666ed51c": 1, "f20e3a3f28708194": 1, diff --git a/generated/rust-rest/Cargo.toml b/generated/rust-rest/Cargo.toml index ed4d338a..8c3da93a 100644 --- a/generated/rust-rest/Cargo.toml +++ b/generated/rust-rest/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # Private retry tests need log capture and temporary files. # The compiler loads tests/unit/retry.rs through src/retry.rs's #[path] module, but cargo-shear misses its uses. diff --git a/libs/actix-web-config/Cargo.toml b/libs/actix-web-config/Cargo.toml index 6225adb1..79ac18e4 100644 --- a/libs/actix-web-config/Cargo.toml +++ b/libs/actix-web-config/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/libs/core-guest/Cargo.toml b/libs/core-guest/Cargo.toml index 85d9d2e7..d269c005 100644 --- a/libs/core-guest/Cargo.toml +++ b/libs/core-guest/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # Built for the guests' own target, so the docs show the imports, heap and `export!` a guest links. [package.metadata.docs.rs] diff --git a/libs/edge-toolkit/Cargo.toml b/libs/edge-toolkit/Cargo.toml index 8bb35534..1a59439f 100644 --- a/libs/edge-toolkit/Cargo.toml +++ b/libs/edge-toolkit/Cargo.toml @@ -6,6 +6,7 @@ version = "0.4.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/libs/et-otlp/Cargo.toml b/libs/et-otlp/Cargo.toml index 0a0b8b40..08efa135 100644 --- a/libs/et-otlp/Cargo.toml +++ b/libs/et-otlp/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/gpu-probe/Cargo.toml b/libs/gpu-probe/Cargo.toml index 696cf04f..2c415afa 100644 --- a/libs/gpu-probe/Cargo.toml +++ b/libs/gpu-probe/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/libs/https-listener/Cargo.toml b/libs/https-listener/Cargo.toml index 047fea7e..ed629059 100644 --- a/libs/https-listener/Cargo.toml +++ b/libs/https-listener/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] all-features = true diff --git a/libs/lidar/Cargo.toml b/libs/lidar/Cargo.toml index f3601084..777f9340 100644 --- a/libs/lidar/Cargo.toml +++ b/libs/lidar/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/math1/Cargo.toml b/libs/math1/Cargo.toml index 4c6c59f2..35cc8db8 100644 --- a/libs/math1/Cargo.toml +++ b/libs/math1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/org/Cargo.toml b/libs/org/Cargo.toml index d91e76e9..eca63b9a 100644 --- a/libs/org/Cargo.toml +++ b/libs/org/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/path/Cargo.toml b/libs/path/Cargo.toml index 1e2d51f0..1b653457 100644 --- a/libs/path/Cargo.toml +++ b/libs/path/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/sanitise/Cargo.toml b/libs/sanitise/Cargo.toml index 07110418..040f3fd2 100644 --- a/libs/sanitise/Cargo.toml +++ b/libs/sanitise/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/test-helpers/Cargo.toml b/libs/test-helpers/Cargo.toml index 07aaab00..8c72cd1d 100644 --- a/libs/test-helpers/Cargo.toml +++ b/libs/test-helpers/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/test-nats/Cargo.toml b/libs/test-nats/Cargo.toml index 639d3174..810fc9da 100644 --- a/libs/test-nats/Cargo.toml +++ b/libs/test-nats/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/test-otlp/Cargo.toml b/libs/test-otlp/Cargo.toml index 723e8577..4c52f492 100644 --- a/libs/test-otlp/Cargo.toml +++ b/libs/test-otlp/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/test-recovery/Cargo.toml b/libs/test-recovery/Cargo.toml index b7966360..9a50da39 100644 --- a/libs/test-recovery/Cargo.toml +++ b/libs/test-recovery/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/libs/wasi-guest/Cargo.toml b/libs/wasi-guest/Cargo.toml index d48008cd..d2f02300 100644 --- a/libs/wasi-guest/Cargo.toml +++ b/libs/wasi-guest/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] default-target = "wasm32-wasip2" diff --git a/libs/web/Cargo.toml b/libs/web/Cargo.toml index fc9fcd2d..5a0066c8 100644 --- a/libs/web/Cargo.toml +++ b/libs/web/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/libs/ws-runner-common/Cargo.toml b/libs/ws-runner-common/Cargo.toml index 0bba869f..c20bbb0a 100644 --- a/libs/ws-runner-common/Cargo.toml +++ b/libs/ws-runner-common/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/modules/core/core-math1/Cargo.toml b/modules/core/core-math1/Cargo.toml index d926dc9e..7841cadc 100644 --- a/modules/core/core-math1/Cargo.toml +++ b/modules/core/core-math1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] default-target = "wasm32v1-none" diff --git a/modules/wasi/wasi-comm1/Cargo.toml b/modules/wasi/wasi-comm1/Cargo.toml index e6368ebf..9babb00e 100644 --- a/modules/wasi/wasi-comm1/Cargo.toml +++ b/modules/wasi/wasi-comm1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] default-target = "wasm32-wasip2" diff --git a/modules/wasi/wasi-data1/Cargo.toml b/modules/wasi/wasi-data1/Cargo.toml index ef19fb9d..769c8cac 100644 --- a/modules/wasi/wasi-data1/Cargo.toml +++ b/modules/wasi/wasi-data1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] default-target = "wasm32-wasip2" diff --git a/modules/wasi/wasi-lidar1/Cargo.toml b/modules/wasi/wasi-lidar1/Cargo.toml index 31f03199..be9537fd 100644 --- a/modules/wasi/wasi-lidar1/Cargo.toml +++ b/modules/wasi/wasi-lidar1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] default-target = "wasm32-wasip2" diff --git a/modules/wasi/wasi-math1-sender/Cargo.toml b/modules/wasi/wasi-math1-sender/Cargo.toml index 6954e163..a2264b74 100644 --- a/modules/wasi/wasi-math1-sender/Cargo.toml +++ b/modules/wasi/wasi-math1-sender/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] default-target = "wasm32-wasip2" diff --git a/modules/wasi/wasi-math1/Cargo.toml b/modules/wasi/wasi-math1/Cargo.toml index e620d432..37032597 100644 --- a/modules/wasi/wasi-math1/Cargo.toml +++ b/modules/wasi/wasi-math1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] default-target = "wasm32-wasip2" diff --git a/modules/web/audio1/Cargo.toml b/modules/web/audio1/Cargo.toml index e5963a97..bfd70e28 100644 --- a/modules/web/audio1/Cargo.toml +++ b/modules/web/audio1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/bluetooth/Cargo.toml b/modules/web/bluetooth/Cargo.toml index f8a7d03c..4ba13413 100644 --- a/modules/web/bluetooth/Cargo.toml +++ b/modules/web/bluetooth/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/comm1/Cargo.toml b/modules/web/comm1/Cargo.toml index 996620eb..aa3a0138 100644 --- a/modules/web/comm1/Cargo.toml +++ b/modules/web/comm1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # `#[wasm_bindgen] pub async fn run` expands to `wasm_bindgen_futures` paths, which cargo-shear's scan cannot see. [package.metadata.cargo-shear] diff --git a/modules/web/data1/Cargo.toml b/modules/web/data1/Cargo.toml index b6c649fb..86d8b9f0 100644 --- a/modules/web/data1/Cargo.toml +++ b/modules/web/data1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # `#[wasm_bindgen] pub async fn run` expands to `wasm_bindgen_futures` paths, which cargo-shear's scan cannot see. [package.metadata.cargo-shear] diff --git a/modules/web/except1/Cargo.toml b/modules/web/except1/Cargo.toml index ab5c95f3..bc8bda9b 100644 --- a/modules/web/except1/Cargo.toml +++ b/modules/web/except1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # `#[wasm_bindgen] pub async fn run` expands to `wasm_bindgen_futures` paths, which cargo-shear's scan cannot see. [package.metadata.cargo-shear] diff --git a/modules/web/face-detection/Cargo.toml b/modules/web/face-detection/Cargo.toml index dcd66fae..bc158e06 100644 --- a/modules/web/face-detection/Cargo.toml +++ b/modules/web/face-detection/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/geolocation/Cargo.toml b/modules/web/geolocation/Cargo.toml index 53814f0f..e12d72d5 100644 --- a/modules/web/geolocation/Cargo.toml +++ b/modules/web/geolocation/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/graphics-info/Cargo.toml b/modules/web/graphics-info/Cargo.toml index 4c6146a7..5f43183a 100644 --- a/modules/web/graphics-info/Cargo.toml +++ b/modules/web/graphics-info/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/har1/Cargo.toml b/modules/web/har1/Cargo.toml index 1ff0a975..aa5b6511 100644 --- a/modules/web/har1/Cargo.toml +++ b/modules/web/har1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/llm1/Cargo.toml b/modules/web/llm1/Cargo.toml index 13089ca2..e84ac118 100644 --- a/modules/web/llm1/Cargo.toml +++ b/modules/web/llm1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/math1-sender/Cargo.toml b/modules/web/math1-sender/Cargo.toml index ef316245..eadd83c4 100644 --- a/modules/web/math1-sender/Cargo.toml +++ b/modules/web/math1-sender/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # `#[wasm_bindgen] pub async fn run` expands to `wasm_bindgen_futures` paths, which cargo-shear's scan cannot see. [package.metadata.cargo-shear] diff --git a/modules/web/math1/Cargo.toml b/modules/web/math1/Cargo.toml index 33282418..efb7b9bf 100644 --- a/modules/web/math1/Cargo.toml +++ b/modules/web/math1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # `#[wasm_bindgen] pub async fn run` expands to `wasm_bindgen_futures` paths, which cargo-shear's scan cannot see. [package.metadata.cargo-shear] diff --git a/modules/web/nfc/Cargo.toml b/modules/web/nfc/Cargo.toml index e4aafaef..a95c4735 100644 --- a/modules/web/nfc/Cargo.toml +++ b/modules/web/nfc/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/pic-viewer/Cargo.toml b/modules/web/pic-viewer/Cargo.toml index b1ae8833..07d11c13 100644 --- a/modules/web/pic-viewer/Cargo.toml +++ b/modules/web/pic-viewer/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/sensor1/Cargo.toml b/modules/web/sensor1/Cargo.toml index 31e84b8f..75878faf 100644 --- a/modules/web/sensor1/Cargo.toml +++ b/modules/web/sensor1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # `#[wasm_bindgen] pub async fn run` expands to `wasm_bindgen_futures` paths, which cargo-shear's scan cannot see. [package.metadata.cargo-shear] diff --git a/modules/web/speech-recognition/Cargo.toml b/modules/web/speech-recognition/Cargo.toml index 413b9632..430d0179 100644 --- a/modules/web/speech-recognition/Cargo.toml +++ b/modules/web/speech-recognition/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/modules/web/video1/Cargo.toml b/modules/web/video1/Cargo.toml index 997b90e4..e5859996 100644 --- a/modules/web/video1/Cargo.toml +++ b/modules/web/video1/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.release] release = false diff --git a/services/firmware-modules/Cargo.toml b/services/firmware-modules/Cargo.toml index 8099ef63..198c5d15 100644 --- a/services/firmware-modules/Cargo.toml +++ b/services/firmware-modules/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/services/hub-backplane/Cargo.toml b/services/hub-backplane/Cargo.toml index 2e43fb3e..8746b06d 100644 --- a/services/hub-backplane/Cargo.toml +++ b/services/hub-backplane/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/services/modules/Cargo.toml b/services/modules/Cargo.toml index 19f71d0b..f05a4e84 100644 --- a/services/modules/Cargo.toml +++ b/services/modules/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] all-features = true diff --git a/services/recovery-supervisor/Cargo.toml b/services/recovery-supervisor/Cargo.toml index fe30ab39..3739df03 100644 --- a/services/recovery-supervisor/Cargo.toml +++ b/services/recovery-supervisor/Cargo.toml @@ -7,6 +7,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # The compiler links this private unit-test module through src/policy.rs's #[path] attribute. # cargo-shear reports it as unlinked even though cargo test --lib executes its tests; keep the exception limited diff --git a/services/storage/Cargo.toml b/services/storage/Cargo.toml index b6b3fd54..c1429281 100644 --- a/services/storage/Cargo.toml +++ b/services/storage/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] all-features = true diff --git a/services/websockify/Cargo.toml b/services/websockify/Cargo.toml index c125da97..8d19d0dc 100644 --- a/services/websockify/Cargo.toml +++ b/services/websockify/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/services/ws-pyo3-runner/Cargo.toml b/services/ws-pyo3-runner/Cargo.toml index 568236e2..de715ff9 100644 --- a/services/ws-pyo3-runner/Cargo.toml +++ b/services/ws-pyo3-runner/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/services/ws-server-firmware/Cargo.toml b/services/ws-server-firmware/Cargo.toml index ac3fa82c..eb3bacb8 100644 --- a/services/ws-server-firmware/Cargo.toml +++ b/services/ws-server-firmware/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/services/ws-server/Cargo.toml b/services/ws-server/Cargo.toml index 3ee50a03..b61d5b37 100644 --- a/services/ws-server/Cargo.toml +++ b/services/ws-server/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] all-features = true diff --git a/services/ws-test-server/Cargo.toml b/services/ws-test-server/Cargo.toml index 6569c798..ffc39077 100644 --- a/services/ws-test-server/Cargo.toml +++ b/services/ws-test-server/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/services/ws-wasi-runner/Cargo.toml b/services/ws-wasi-runner/Cargo.toml index 7e518ce1..1b5c5295 100644 --- a/services/ws-wasi-runner/Cargo.toml +++ b/services/ws-wasi-runner/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true # A dependency no source path names, which cargo-shear's scan therefore reads as unused. # `ort` is never called, only depended on to hold the prerelease wasmtime-wasi-nn is built against. diff --git a/services/ws-wasm-agent/Cargo.toml b/services/ws-wasm-agent/Cargo.toml index 5c193cbe..dffa0884 100644 --- a/services/ws-wasm-agent/Cargo.toml +++ b/services/ws-wasm-agent/Cargo.toml @@ -6,6 +6,7 @@ version = "0.3.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/services/ws/Cargo.toml b/services/ws/Cargo.toml index 3b2b76b1..948731a7 100644 --- a/services/ws/Cargo.toml +++ b/services/ws/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/utilities/cli/Cargo.toml b/utilities/cli/Cargo.toml index 84d891da..c27210b3 100644 --- a/utilities/cli/Cargo.toml +++ b/utilities/cli/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/utilities/gpu-probe/Cargo.toml b/utilities/gpu-probe/Cargo.toml index 5481f80d..26a4120d 100644 --- a/utilities/gpu-probe/Cargo.toml +++ b/utilities/gpu-probe/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/utilities/gpu-probe/web/Cargo.toml b/utilities/gpu-probe/web/Cargo.toml index 65549ad6..86720511 100644 --- a/utilities/gpu-probe/web/Cargo.toml +++ b/utilities/gpu-probe/web/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [package.metadata.docs.rs] features = ["docs"] diff --git a/utilities/int-gen/Cargo.toml b/utilities/int-gen/Cargo.toml index eaeedb6e..b35259e8 100644 --- a/utilities/int-gen/Cargo.toml +++ b/utilities/int-gen/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true default-run = "et-int-gen" # `int` = "internal": this crate is for in-repo use only. diff --git a/utilities/onnx/Cargo.toml b/utilities/onnx/Cargo.toml index c98fb4ad..5ad60570 100644 --- a/utilities/onnx/Cargo.toml +++ b/utilities/onnx/Cargo.toml @@ -6,6 +6,7 @@ version = "0.2.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [lib] doctest = false diff --git a/utilities/repo-check/Cargo.toml b/utilities/repo-check/Cargo.toml index 0cc069de..7c164186 100644 --- a/utilities/repo-check/Cargo.toml +++ b/utilities/repo-check/Cargo.toml @@ -6,6 +6,7 @@ version = "0.1.0" edition.workspace = true license.workspace = true repository.workspace = true +rust-version.workspace = true [[bin]] doctest = false diff --git a/utilities/wasm-cov-wrapper/Cargo.toml b/utilities/wasm-cov-wrapper/Cargo.toml index 4e6a514e..67ff7f2a 100644 --- a/utilities/wasm-cov-wrapper/Cargo.toml +++ b/utilities/wasm-cov-wrapper/Cargo.toml @@ -6,6 +6,7 @@ edition.workspace = true license.workspace = true publish = false repository.workspace = true +rust-version.workspace = true [[bin]] doctest = false