ci: MSRV 1.69 -> 1.93

This commit is contained in:
tobtoht
2026-04-16 10:41:38 +02:00
parent 4fc4d1e2e5
commit 09dae82a03
2 changed files with 18 additions and 15 deletions

View File

@@ -15,7 +15,7 @@ env:
REMOVE_BUNDLED_PACKAGES : sudo rm -rf /usr/local
# ARCH="default" (not "native") ensures, that a different execution host can execute binaries compiled elsewhere.
BUILD_DEFAULT_LINUX: 'cmake -S . -B build -D ARCH="default" -D BUILD_TESTS=ON -D ENABLE_FUZZ_TEST=ON -D CMAKE_BUILD_TYPE=Release && cmake --build build --target all && cmake --build build --target wallet_api'
APT_INSTALL_LINUX: 'apt -y install build-essential cargo cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev libsodium-dev libhidapi-dev libusb-1.0-0-dev libprotobuf-dev protobuf-compiler ccache curl git'
APT_INSTALL_LINUX: 'apt -y install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev libsodium-dev libhidapi-dev libusb-1.0-0-dev libprotobuf-dev protobuf-compiler ccache curl git'
APT_SET_CONF: |
tee -a /etc/apt/apt.conf.d/80-custom << EOF
Acquire::Retries "3";
@@ -26,6 +26,12 @@ env:
ccache --max-size=150M
ccache --set-config=compression=true
USE_DEVICE_TREZOR_MANDATORY: ON
INSTALL_RUST: |
curl -O https://static.rust-lang.org/rustup/archive/1.29.0/x86_64-unknown-linux-gnu/rustup-init
echo "4acc9acc76d5079515b46346a485974457b5a79893cfb01112423c89aeb5aa10 rustup-init" | sha256sum -c
chmod +x rustup-init
./rustup-init -y --default-toolchain 1.93
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
jobs:
build-macos:
@@ -116,13 +122,7 @@ jobs:
- name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}}
- name: install rust
# Debian 11 ships Rust 1.48.0. We need >=1.69 to build FCMP++.
run: |
curl -O https://static.rust-lang.org/rustup/archive/1.27.1/x86_64-unknown-linux-gnu/rustup-init
echo "6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d rustup-init" | sha256sum -c
chmod +x rustup-init
./rustup-init -y --default-toolchain 1.69
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
run: ${{env.INSTALL_RUST}}
- name: configure git
run: git config --global --add safe.directory '*'
- uses: actions/checkout@v5
@@ -157,6 +157,8 @@ jobs:
run: apt update
- name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}}
- name: install rust
run: ${{env.INSTALL_RUST}}
- name: configure git
run: git config --global --add safe.directory '*'
- uses: actions/checkout@v5
@@ -200,6 +202,8 @@ jobs:
run: apt update
- name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}}
- name: install rust
run: ${{env.INSTALL_RUST}}
- name: install pip
run: apt install -y python3-pip
- name: install Python dependencies

View File

@@ -26,7 +26,7 @@ jobs:
build-cross:
runs-on: ubuntu-latest
container:
image: ubuntu:22.04
image: ${{ matrix.toolchain.container || 'ubuntu:22.04' }}
env:
DEBIAN_FRONTEND: noninteractive
CCACHE_TEMPDIR: /tmp/.ccache-temp
@@ -38,6 +38,7 @@ jobs:
host: "riscv64-linux-gnu"
rust_host: "riscv64gc-unknown-linux-gnu"
packages: "g++-riscv64-linux-gnu"
container: "ubuntu:26.04" # RandomX v2 requires GCC 14 or above for riscv64
- name: "ARM v8"
host: "aarch64-linux-gnu"
rust_host: "aarch64-unknown-linux-gnu"
@@ -50,6 +51,7 @@ jobs:
host: "x86_64-w64-mingw32"
rust_host: "x86_64-pc-windows-gnu"
packages: "g++-mingw-w64-x86-64"
container: "ubuntu:24.04" # Rust >= 1.70 requires binutils >= 2.40
- name: "x86_64 Linux"
host: "x86_64-unknown-linux-gnu"
rust_host: "x86_64-unknown-linux-gnu"
@@ -91,14 +93,11 @@ jobs:
- name: install dependencies
run: apt update; apt -y install build-essential cmake pkg-config git ccache ${{ matrix.toolchain.packages }}
- name: install rust
# We can't use the latest Rust due to LLVM 17 not working with old `ld`s (such as in Ubuntu 20.04) for RISC-V
# We could update ld (a pain), update Ubuntu (requires a large amount of changes), or downgrade Rust
# We can't use Rust 1.70 due to LLVM 16 requiring ld >= 2.40 when building for Windows
run: |
curl -O https://static.rust-lang.org/rustup/archive/1.27.1/x86_64-unknown-linux-gnu/rustup-init
echo "6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d rustup-init" | sha256sum -c
curl -O https://static.rust-lang.org/rustup/archive/1.29.0/x86_64-unknown-linux-gnu/rustup-init
echo "4acc9acc76d5079515b46346a485974457b5a79893cfb01112423c89aeb5aa10 rustup-init" | sha256sum -c
chmod +x rustup-init
./rustup-init -y --default-toolchain 1.69 --target ${{ matrix.toolchain.rust_host }}
./rustup-init -y --default-toolchain 1.93 --target ${{ matrix.toolchain.rust_host }}
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: configure git
run: git config --global --add safe.directory '*'