diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bdccd8e27..026d14895 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,7 +18,7 @@ jobs: - uses: actions-rs/toolchain@v1 with: profile: minimal - toolchain: 1.50.0 + toolchain: stable override: true - run: rustup component add rustfmt - uses: actions-rs/cargo@v1 @@ -32,7 +32,7 @@ jobs: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: - toolchain: 1.50.0 + toolchain: stable components: clippy override: true - uses: actions-rs/clippy-check@v1 @@ -68,12 +68,23 @@ jobs: strategy: matrix: include: + # Currently used Rust version, same as in `rust-toolchain` file. - os: ubuntu-latest - rust: 1.50.0 - python: 3.6 + rust: 1.54.0 + python: 3.9 - os: windows-latest - rust: 1.50.0 + rust: 1.54.0 python: false # Python bindings compilation on Windows is not supported. + + # Minimum Supported Rust Version = 1.48.0 + # This is the Debian "bullseye" release version of Rust. + # + # Minimum Supported Python Version = 3.7 + # This is the minimum version for which manylinux Python wheels are + # built. + - os: ubuntu-latest + rust: 1.48.0 + python: 3.7 runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@master diff --git a/rust-toolchain b/rust-toolchain index 5a5c7211d..b7921ae87 100644 --- a/rust-toolchain +++ b/rust-toolchain @@ -1 +1 @@ -1.50.0 +1.54.0 diff --git a/scripts/docker-coredeps-arm64/deps/build_rust.sh b/scripts/docker-coredeps-arm64/deps/build_rust.sh index 75cdeba50..670dffb06 100755 --- a/scripts/docker-coredeps-arm64/deps/build_rust.sh +++ b/scripts/docker-coredeps-arm64/deps/build_rust.sh @@ -8,9 +8,11 @@ set -e -x # # Avoid using rustup here as it depends on reading /proc/self/exe and # has problems running under QEMU. -curl "https://static.rust-lang.org/dist/rust-1.52.1-$(uname -m)-unknown-linux-gnu.tar.gz" | tar xz -cd "rust-1.52.1-$(uname -m)-unknown-linux-gnu" +RUST_VERSION=1.54.0 + +curl "https://static.rust-lang.org/dist/rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu.tar.gz" | tar xz +cd "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu" ./install.sh --prefix=/usr --components=rustc,cargo,"rust-std-$(uname -m)-unknown-linux-gnu" rustc --version cd .. -rm -fr "rust-1.52.1-$(uname -m)-unknown-linux-gnu" +rm -fr "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu" diff --git a/scripts/docker-coredeps/deps/build_rust.sh b/scripts/docker-coredeps/deps/build_rust.sh index 11f296ad9..670dffb06 100755 --- a/scripts/docker-coredeps/deps/build_rust.sh +++ b/scripts/docker-coredeps/deps/build_rust.sh @@ -3,9 +3,16 @@ set -e -x # Install Rust -curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain "1.50.0-$(uname -m)-unknown-linux-gnu" -y -export PATH=/root/.cargo/bin:$PATH -rustc --version +# +# Path from https://forge.rust-lang.org/infra/other-installation-methods.html +# +# Avoid using rustup here as it depends on reading /proc/self/exe and +# has problems running under QEMU. +RUST_VERSION=1.54.0 -# remove some 300-400 MB that we don't need for automated builds -rm -rf "/root/.rustup/toolchains/1.50.0-$(uname -m)-unknown-linux-gnu/share" +curl "https://static.rust-lang.org/dist/rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu.tar.gz" | tar xz +cd "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu" +./install.sh --prefix=/usr --components=rustc,cargo,"rust-std-$(uname -m)-unknown-linux-gnu" +rustc --version +cd .. +rm -fr "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu"