From d791c4e1e7d244a89bed14335e9d54fca06f8a35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D1=91=D0=BC=20=D0=9F=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2=20=5BArtyom=20Pavlov=5D?= Date: Mon, 9 Feb 2026 21:30:14 +0300 Subject: [PATCH 1/4] ci: enable `minimal-versions` jobs --- .github/workflows/aead.yml | 9 ++++----- .github/workflows/cipher.yml | 15 +++------------ .github/workflows/crypto-common.yml | 9 ++++----- .github/workflows/crypto.yml | 14 +++----------- .github/workflows/digest.yml | 9 ++++----- .github/workflows/elliptic-curve.yml | 15 +++------------ .github/workflows/kdf.yml | 5 +++++ .github/workflows/kem.yml | 5 +++++ .github/workflows/password-hash.yml | 15 +++------------ .github/workflows/signature.yml | 1 - .github/workflows/universal-hash.yml | 9 ++++----- 11 files changed, 38 insertions(+), 68 deletions(-) diff --git a/.github/workflows/aead.yml b/.github/workflows/aead.yml index 9f128bc33..38aa4e6de 100644 --- a/.github/workflows/aead.yml +++ b/.github/workflows/aead.yml @@ -47,11 +47,10 @@ jobs: # - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features heapless - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features rand_core - # TODO(tarcieri): re-enable after next `crypto-common` release - # minimal-versions: - # uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master - # with: - # working-directory: ${{ github.workflow }} + minimal-versions: + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} test: runs-on: ubuntu-latest diff --git a/.github/workflows/cipher.yml b/.github/workflows/cipher.yml index aec863cd0..da68fd49d 100644 --- a/.github/workflows/cipher.yml +++ b/.github/workflows/cipher.yml @@ -44,19 +44,10 @@ jobs: - run: cargo build --target ${{ matrix.target }} --features rand_core - run: cargo build --target ${{ matrix.target }} --features block-padding - # TODO: use the reusable workflow after this crate will be part of the - # root workspace minimal-versions: - if: false # disabled until we stop using pre-releases - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - - uses: RustCrypto/actions/cargo-cache@master - - uses: dtolnay/rust-toolchain@nightly - - uses: RustCrypto/actions/cargo-hack-install@master - - run: cargo update -Z minimal-versions - - uses: dtolnay/rust-toolchain@stable - - run: cargo hack test --release --feature-powerset + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} test: runs-on: ubuntu-latest diff --git a/.github/workflows/crypto-common.yml b/.github/workflows/crypto-common.yml index c10e058af..3ba9fe3f0 100644 --- a/.github/workflows/crypto-common.yml +++ b/.github/workflows/crypto-common.yml @@ -41,11 +41,10 @@ jobs: targets: ${{ matrix.target }} - run: cargo build --target ${{ matrix.target }} - # TODO(tarcieri): re-enable when `getrandom` has a crate release with `sys_rng` - # minimal-versions: - # uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master - # with: - # working-directory: ${{ github.workflow }} + minimal-versions: + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} test: runs-on: ubuntu-latest diff --git a/.github/workflows/crypto.yml b/.github/workflows/crypto.yml index 03e2e8c7c..651a1ba15 100644 --- a/.github/workflows/crypto.yml +++ b/.github/workflows/crypto.yml @@ -44,17 +44,9 @@ jobs: --features aead,cipher,digest,elliptic-curve,signature,universal-hash minimal-versions: - if: false # disabled until we stop using pre-releases - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - - uses: RustCrypto/actions/cargo-cache@master - - uses: dtolnay/rust-toolchain@master - with: - toolchain: nightly - - uses: RustCrypto/actions/cargo-hack-install@master - - run: cargo update -Z minimal-versions - - run: cargo hack test --release --feature-powerset + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} test: runs-on: ubuntu-latest diff --git a/.github/workflows/digest.yml b/.github/workflows/digest.yml index 485fc91a2..f97322726 100644 --- a/.github/workflows/digest.yml +++ b/.github/workflows/digest.yml @@ -41,11 +41,10 @@ jobs: targets: ${{ matrix.target }} - run: cargo build --target ${{ matrix.target }} - # TODO(tarcieri): re-enable after next `crypto-common` release - #minimal-versions: - # uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master - # with: - # working-directory: ${{ github.workflow }} + minimal-versions: + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} test: runs-on: ubuntu-latest diff --git a/.github/workflows/elliptic-curve.yml b/.github/workflows/elliptic-curve.yml index 8e1322219..1586dd5d7 100644 --- a/.github/workflows/elliptic-curve.yml +++ b/.github/workflows/elliptic-curve.yml @@ -62,18 +62,9 @@ jobs: - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features alloc,digest,ecdh,pem,pkcs8,sec1,serde minimal-versions: - # Temporarily disabled until elliptic-curve 0.14.0 is published - if: false - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - - uses: RustCrypto/actions/cargo-cache@master - - uses: dtolnay/rust-toolchain@master - with: - toolchain: nightly - - uses: RustCrypto/actions/cargo-hack-install@master - - run: cargo update -Z minimal-versions - - run: cargo +stable build --release --all-features + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} test: runs-on: ubuntu-latest diff --git a/.github/workflows/kdf.yml b/.github/workflows/kdf.yml index 7dd7b7552..70d57e214 100644 --- a/.github/workflows/kdf.yml +++ b/.github/workflows/kdf.yml @@ -36,6 +36,11 @@ jobs: targets: ${{ matrix.target }} - run: cargo build --no-default-features --release --target ${{ matrix.target }} + minimal-versions: + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} + test: runs-on: ubuntu-latest strategy: diff --git a/.github/workflows/kem.yml b/.github/workflows/kem.yml index c89d6ac0f..f0c8bdd91 100644 --- a/.github/workflows/kem.yml +++ b/.github/workflows/kem.yml @@ -41,6 +41,11 @@ jobs: targets: ${{ matrix.target }} - run: cargo build --no-default-features --release --target ${{ matrix.target }} + minimal-versions: + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} + test: runs-on: ubuntu-latest strategy: diff --git a/.github/workflows/password-hash.yml b/.github/workflows/password-hash.yml index ecc863135..947289d1a 100644 --- a/.github/workflows/password-hash.yml +++ b/.github/workflows/password-hash.yml @@ -42,19 +42,10 @@ jobs: - uses: RustCrypto/actions/cargo-hack-install@master - run: cargo hack build --target ${{ matrix.target }} --feature-powerset --exclude-features getrandom - # TODO: use the reusable workflow after this crate will be part of the root workspace minimal-versions: - if: false # disabled until we stop using pre-releases - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - - uses: RustCrypto/actions/cargo-cache@master - - uses: dtolnay/rust-toolchain@master - with: - toolchain: nightly - - uses: RustCrypto/actions/cargo-hack-install@master - - run: cargo update -Z minimal-versions - - run: cargo hack test --release --feature-powerset + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} test: runs-on: ubuntu-latest diff --git a/.github/workflows/signature.yml b/.github/workflows/signature.yml index d59de9464..7403ca2ce 100644 --- a/.github/workflows/signature.yml +++ b/.github/workflows/signature.yml @@ -44,7 +44,6 @@ jobs: - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features rand_core minimal-versions: - if: false # disabled until we stop using pre-releases uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master with: working-directory: ${{ github.workflow }} diff --git a/.github/workflows/universal-hash.yml b/.github/workflows/universal-hash.yml index 504da4797..5bc9157d4 100644 --- a/.github/workflows/universal-hash.yml +++ b/.github/workflows/universal-hash.yml @@ -41,11 +41,10 @@ jobs: targets: ${{ matrix.target }} - run: cargo build --no-default-features --release --target ${{ matrix.target }} - # TODO(tarcieri): re-enable after next `crypto-common` release - # minimal-versions: - # uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master - # with: - # working-directory: ${{ github.workflow }} + minimal-versions: + uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master + with: + working-directory: ${{ github.workflow }} test: runs-on: ubuntu-latest From 47efacb39a87b2324548e9b4b44104f89c365f75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D1=91=D0=BC=20=D0=9F=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2=20=5BArtyom=20Pavlov=5D?= Date: Mon, 9 Feb 2026 21:33:55 +0300 Subject: [PATCH 2/4] run workflows on confg change --- .github/workflows/aead.yml | 1 + .github/workflows/crypto-common.yml | 1 + .github/workflows/crypto.yml | 1 + .github/workflows/digest.yml | 1 + .github/workflows/kdf.yml | 1 + .github/workflows/kem.yml | 1 + .github/workflows/password-hash.yml | 1 + .github/workflows/signature.yml | 1 + .github/workflows/universal-hash.yml | 1 + .github/workflows/workspace.yml | 3 --- 10 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/aead.yml b/.github/workflows/aead.yml index 38aa4e6de..e9b74ba6f 100644 --- a/.github/workflows/aead.yml +++ b/.github/workflows/aead.yml @@ -3,6 +3,7 @@ name: aead on: pull_request: paths: + - ".github/workflows/aead.yml" - "aead/**" - "Cargo.*" push: diff --git a/.github/workflows/crypto-common.yml b/.github/workflows/crypto-common.yml index 3ba9fe3f0..79e7de4be 100644 --- a/.github/workflows/crypto-common.yml +++ b/.github/workflows/crypto-common.yml @@ -3,6 +3,7 @@ name: crypto-common on: pull_request: paths: + - ".github/workflows/crypto-common.yml" - "crypto-common/**" - "Cargo.*" push: diff --git a/.github/workflows/crypto.yml b/.github/workflows/crypto.yml index 651a1ba15..8ef6cc2fd 100644 --- a/.github/workflows/crypto.yml +++ b/.github/workflows/crypto.yml @@ -3,6 +3,7 @@ name: crypto on: pull_request: paths: + - ".github/workflows/crypto.yml" - "crypto/**" - "Cargo.*" push: diff --git a/.github/workflows/digest.yml b/.github/workflows/digest.yml index f97322726..60cea0169 100644 --- a/.github/workflows/digest.yml +++ b/.github/workflows/digest.yml @@ -3,6 +3,7 @@ name: digest on: pull_request: paths: + - ".github/workflows/digest.yml" - "digest/**" - "Cargo.*" push: diff --git a/.github/workflows/kdf.yml b/.github/workflows/kdf.yml index 70d57e214..d2eba00ed 100644 --- a/.github/workflows/kdf.yml +++ b/.github/workflows/kdf.yml @@ -3,6 +3,7 @@ name: kdf on: pull_request: paths: + - ".github/workflows/kdf.yml" - "kdf/**" - "Cargo.*" push: diff --git a/.github/workflows/kem.yml b/.github/workflows/kem.yml index f0c8bdd91..35fc1fd04 100644 --- a/.github/workflows/kem.yml +++ b/.github/workflows/kem.yml @@ -3,6 +3,7 @@ name: kem on: pull_request: paths: + - ".github/workflows/kem.yml" - "kem/**" - "Cargo.*" push: diff --git a/.github/workflows/password-hash.yml b/.github/workflows/password-hash.yml index 947289d1a..461e1b25b 100644 --- a/.github/workflows/password-hash.yml +++ b/.github/workflows/password-hash.yml @@ -3,6 +3,7 @@ name: password-hash on: pull_request: paths: + - ".github/workflows/password-hash.yml" - "password-hash/**" - "Cargo.*" push: diff --git a/.github/workflows/signature.yml b/.github/workflows/signature.yml index 7403ca2ce..5de19d66a 100644 --- a/.github/workflows/signature.yml +++ b/.github/workflows/signature.yml @@ -3,6 +3,7 @@ name: signature on: pull_request: paths: + - ".github/workflows/signature.yml" - "signature/**" - "Cargo.*" push: diff --git a/.github/workflows/universal-hash.yml b/.github/workflows/universal-hash.yml index 5bc9157d4..17ea71d27 100644 --- a/.github/workflows/universal-hash.yml +++ b/.github/workflows/universal-hash.yml @@ -3,6 +3,7 @@ name: universal-hash on: pull_request: paths: + - ".github/workflows/universal-hash.yml" - "universal-hash/**" - "Cargo.*" push: diff --git a/.github/workflows/workspace.yml b/.github/workflows/workspace.yml index 5ac4dd58b..51fe8ce8b 100644 --- a/.github/workflows/workspace.yml +++ b/.github/workflows/workspace.yml @@ -7,9 +7,6 @@ on: - '**/CHANGELOG.md' push: branches: master - paths-ignore: - - '**/README.md' - - '**/CHANGELOG.md' env: CARGO_INCREMENTAL: 0 From bf493bd3dbe979265fce014f486d90c122fb8070 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D1=91=D0=BC=20=D0=9F=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2=20=5BArtyom=20Pavlov=5D?= Date: Mon, 9 Feb 2026 21:41:49 +0300 Subject: [PATCH 3/4] tweak cmd for elliptic-curve --- .github/workflows/elliptic-curve.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/elliptic-curve.yml b/.github/workflows/elliptic-curve.yml index 1586dd5d7..6e14ac171 100644 --- a/.github/workflows/elliptic-curve.yml +++ b/.github/workflows/elliptic-curve.yml @@ -65,6 +65,7 @@ jobs: uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master with: working-directory: ${{ github.workflow }} + stable-cmd: cargo check --all-features test: runs-on: ubuntu-latest From 537a039a4057862a91ded4f59e210f55fcc024f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D1=91=D0=BC=20=D0=9F=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2=20=5BArtyom=20Pavlov=5D?= Date: Mon, 9 Feb 2026 21:46:43 +0300 Subject: [PATCH 4/4] tweack elliptic-curve cmd --- .github/workflows/elliptic-curve.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/elliptic-curve.yml b/.github/workflows/elliptic-curve.yml index 6e14ac171..aafbab136 100644 --- a/.github/workflows/elliptic-curve.yml +++ b/.github/workflows/elliptic-curve.yml @@ -65,7 +65,9 @@ jobs: uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master with: working-directory: ${{ github.workflow }} - stable-cmd: cargo check --all-features + stable-cmd: | + cargo hack check --feature-powerset --no-dev-deps --skip basepoint-table + cargo check --all-features test: runs-on: ubuntu-latest