ci: update Rust and Python versions used for testing

- Use latest stable for rustfmt and clippy.
- Update Rust in rust-toolchain and coredeps Docker container to 1.54.0
  and test against it.
- Test against 1.48.0 to ensure libdeltachat can be compiled with Debian
  bullseye "rustc" and "cargo".
This commit is contained in:
link2xt
2021-08-07 11:16:03 +00:00
parent 0f86800f5d
commit 4ef80aaea5
4 changed files with 34 additions and 14 deletions

View File

@@ -18,7 +18,7 @@ jobs:
- uses: actions-rs/toolchain@v1 - uses: actions-rs/toolchain@v1
with: with:
profile: minimal profile: minimal
toolchain: 1.50.0 toolchain: stable
override: true override: true
- run: rustup component add rustfmt - run: rustup component add rustfmt
- uses: actions-rs/cargo@v1 - uses: actions-rs/cargo@v1
@@ -32,7 +32,7 @@ jobs:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1 - uses: actions-rs/toolchain@v1
with: with:
toolchain: 1.50.0 toolchain: stable
components: clippy components: clippy
override: true override: true
- uses: actions-rs/clippy-check@v1 - uses: actions-rs/clippy-check@v1
@@ -68,12 +68,23 @@ jobs:
strategy: strategy:
matrix: matrix:
include: include:
# Currently used Rust version, same as in `rust-toolchain` file.
- os: ubuntu-latest - os: ubuntu-latest
rust: 1.50.0 rust: 1.54.0
python: 3.6 python: 3.9
- os: windows-latest - os: windows-latest
rust: 1.50.0 rust: 1.54.0
python: false # Python bindings compilation on Windows is not supported. 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 }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@master - uses: actions/checkout@master

View File

@@ -1 +1 @@
1.50.0 1.54.0

View File

@@ -8,9 +8,11 @@ set -e -x
# #
# Avoid using rustup here as it depends on reading /proc/self/exe and # Avoid using rustup here as it depends on reading /proc/self/exe and
# has problems running under QEMU. # 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 RUST_VERSION=1.54.0
cd "rust-1.52.1-$(uname -m)-unknown-linux-gnu"
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" ./install.sh --prefix=/usr --components=rustc,cargo,"rust-std-$(uname -m)-unknown-linux-gnu"
rustc --version rustc --version
cd .. cd ..
rm -fr "rust-1.52.1-$(uname -m)-unknown-linux-gnu" rm -fr "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu"

View File

@@ -3,9 +3,16 @@
set -e -x set -e -x
# Install Rust # 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 # Path from https://forge.rust-lang.org/infra/other-installation-methods.html
rustc --version #
# 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 curl "https://static.rust-lang.org/dist/rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu.tar.gz" | tar xz
rm -rf "/root/.rustup/toolchains/1.50.0-$(uname -m)-unknown-linux-gnu/share" 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"