ci: build on rust 1.91 — the locked Arti 0.46 crates require rustc >= 1.91
Some checks failed
ci / test (push) Failing after 9m2s

The rust:1.87-bookworm job image failed every builder step with
'tor-*@0.46.0 requires rustc 1.91 ... either upgrade rustc or select
compatible dependency versions'. Cargo.toml declared rust-version 1.87,
which was simply wrong: cargo 1.87 could not even resolve the lockfile.

- rust-version 1.87 -> 1.91 (README requirement text too)
- RUST_IMAGE rust:1.87-bookworm -> rust:1.91-bookworm in ci and release
This commit is contained in:
Sirius DevOps 2026-09-10 13:14:55 -04:00
parent e7c0b98a2b
commit 19af4cc768
No known key found for this signature in database
4 changed files with 6 additions and 6 deletions

View file

@ -10,7 +10,7 @@ on:
env:
CARGO_TERM_COLOR: never
RUST_IMAGE: rust:1.87-bookworm
RUST_IMAGE: rust:1.91-bookworm
CARGO_REGISTRY_VOLUME: onionwire-cargo-registry
CARGO_TARGET_VOLUME: onionwire-target-ci
BUILD_CONTAINER: onionwire-ci

View file

@ -19,7 +19,7 @@ env:
TARGET: aarch64-unknown-linux-gnu
# Job steps run inside node:20-bullseye (the runner's docker label image) with
# the host docker socket mounted, so builds happen in a sibling rust container.
RUST_IMAGE: rust:1.87-bookworm
RUST_IMAGE: rust:1.91-bookworm
CARGO_REGISTRY_VOLUME: onionwire-cargo-registry
CARGO_TARGET_VOLUME: onionwire-target-aarch64
BUILD_CONTAINER: onionwire-release-build

View file

@ -2,7 +2,7 @@
name = "onionwire"
version = "0.1.2"
edition = "2024"
rust-version = "1.87"
rust-version = "1.91"
description = "Lean Tor messenger: Arti in-process, identity=pubkey, onion=locator. No XMPP."
license = "MIT"
publish = false

View file

@ -58,13 +58,13 @@ Checksum files are `sha256sum` format (`<hash> onionwire-<target>`). Download b
### Option B — build from source
Needs [Rust](https://rustup.rs/) **1.87+** (`edition = "2024"`). A distro `rustc` is fine if `rustc --version` reports 1.87 or newer. Do not install `tor` for this app.
Needs [Rust](https://rustup.rs/) **1.91+** (`edition = "2024"`; the pinned Arti 0.46 crates require rustc 1.91). A distro `rustc` is fine if `rustc --version` reports 1.91 or newer. Do not install `tor` for this app.
```bash
# rustup (if you do not already have cargo)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"
rustc --version # must be 1.87 or newer
rustc --version # must be 1.91 or newer
```
```bash
@ -203,7 +203,7 @@ FORGEJO_TOKEN=<pat> scripts/build-release-local.sh vX.Y.Z
```
Workflows (Forgejo Actions, `.forgejo/workflows/` — jobs run on the `docker`
label of the Pi runner and do their Rust work in a `rust:1.87-bookworm`
label of the Pi runner and do their Rust work in a `rust:1.91-bookworm`
sibling container):
- [`.forgejo/workflows/ci.yml`](.forgejo/workflows/ci.yml) — `cargo test --locked` + `cargo clippy --all-targets -- -D warnings` on `main` and PRs (ignored Tor-live tests are not run).