Skip to content

Commit f21c023

Browse files
committed
[WIP] CI: test on 64-bit Windows (GNU)
1 parent 224ecbe commit f21c023

File tree

6 files changed

+92
-38
lines changed

6 files changed

+92
-38
lines changed

.github/workflows/md5.yml

Lines changed: 30 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,36 +8,36 @@ on:
88
push:
99
branches: master
1010

11+
defaults:
12+
run:
13+
working-directory: md5
14+
1115
env:
1216
CARGO_INCREMENTAL: 0
1317
RUSTFLAGS: "-Dwarnings"
1418

1519
jobs:
16-
test:
20+
linux:
1721
strategy:
1822
matrix:
1923
include:
2024
# 32-bit Linux/x86
2125
- target: i686-unknown-linux-gnu
22-
platform: ubuntu-latest
23-
toolchain: 1.41.0 # MSRV
26+
toolchain: 1.43.0 # MSRV
2427
deps: sudo apt install gcc-multilib
2528
- target: i686-unknown-linux-gnu
26-
platform: ubuntu-latest
2729
toolchain: stable
2830
deps: sudo apt install gcc-multilib
2931

3032
# 64-bit Linux/x86_64
3133
- target: x86_64-unknown-linux-gnu
32-
platform: ubuntu-latest
33-
toolchain: 1.41.0 # MSRV
34+
toolchain: 1.43.0 # MSRV
3435
deps: true
3536
- target: x86_64-unknown-linux-gnu
36-
platform: ubuntu-latest
3737
toolchain: stable
3838
deps: true
3939

40-
runs-on: ${{ matrix.platform }}
40+
runs-on: ubuntu-latest
4141
steps:
4242
- uses: actions/checkout@v1
4343
- run: ${{ matrix.deps }}
@@ -47,10 +47,26 @@ jobs:
4747
toolchain: ${{ matrix.toolchain }}
4848
target: ${{ matrix.target }}
4949
override: true
50-
# NOTE: using `marcopolo/cargo` fork to support the `working-directory` attribute
51-
# See: https://github.com/actions-rs/cargo/pull/59
52-
- uses: marcopolo/cargo@master
50+
- run: cargo test --target ${{ matrix.target }} --release
51+
52+
windows:
53+
strategy:
54+
matrix:
55+
include:
56+
# 64-bit Windows (GNU)
57+
- target: x86_64-pc-windows-gnu
58+
toolchain: 1.43.0 # MSRV
59+
- target: x86_64-pc-windows-gnu
60+
toolchain: stable
61+
62+
runs-on: windows-latest
63+
steps:
64+
- uses: actions/checkout@v1
65+
- uses: msys2/setup-msys2@v2
66+
- uses: actions-rs/toolchain@v1
5367
with:
54-
command: test
55-
working-directory: md5
56-
args: --target ${{ matrix.target }} --release
68+
profile: minimal
69+
toolchain: ${{ matrix.toolchain }}
70+
target: ${{ matrix.target }}
71+
override: true
72+
- run: cargo test --target ${{ matrix.target }} --release

.github/workflows/sha1.yml

Lines changed: 50 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,50 +8,87 @@ on:
88
push:
99
branches: master
1010

11+
defaults:
12+
run:
13+
working-directory: sha1
14+
1115
env:
1216
CARGO_INCREMENTAL: 0
1317
RUSTFLAGS: "-Dwarnings"
1418

1519
jobs:
16-
test:
20+
# Linux tests
21+
linux:
1722
strategy:
1823
matrix:
1924
include:
2025
# 32-bit Linux/x86
2126
- target: i686-unknown-linux-gnu
2227
platform: ubuntu-latest
23-
rust: 1.41.0 # MSRV
24-
use_cross: false
28+
rust: 1.43.0 # MSRV
2529
deps: sudo apt install gcc-multilib
2630
- target: i686-unknown-linux-gnu
2731
platform: ubuntu-latest
2832
rust: stable
29-
use_cross: false
3033
deps: sudo apt install gcc-multilib
3134

3235
# 64-bit Linux/x86_64
3336
- target: x86_64-unknown-linux-gnu
3437
platform: ubuntu-latest
35-
rust: 1.41.0 # MSRV
36-
use_cross: false
38+
rust: 1.43.0 # MSRV
3739
deps: true
3840
- target: x86_64-unknown-linux-gnu
3941
platform: ubuntu-latest
4042
rust: stable
41-
use_cross: false
4243
deps: true
4344

45+
runs-on: ${{ matrix.platform }}
46+
steps:
47+
- uses: actions/checkout@v1
48+
- run: ${{ matrix.deps }}
49+
- uses: actions-rs/toolchain@v1
50+
with:
51+
profile: minimal
52+
toolchain: ${{ matrix.rust }}
53+
target: ${{ matrix.target }}
54+
override: true
55+
- run: cargo test --target ${{ matrix.target }} --release
56+
57+
# Windows tests
58+
windows:
59+
strategy:
60+
matrix:
61+
include:
62+
# 64-bit Windows (GNU)
63+
- target: x86_64-pc-windows-gnu
64+
toolchain: 1.43.0 # MSRV
65+
- target: x86_64-pc-windows-gnu
66+
toolchain: stable
67+
68+
runs-on: windows-latest
69+
steps:
70+
- uses: actions/checkout@v1
71+
- uses: msys2/setup-msys2@v2
72+
- uses: actions-rs/toolchain@v1
73+
with:
74+
profile: minimal
75+
toolchain: ${{ matrix.toolchain }}
76+
target: ${{ matrix.target }}
77+
override: true
78+
- run: cargo test --target ${{ matrix.target }} --release
79+
80+
# Cross-compiled tests
81+
cross:
82+
strategy:
83+
matrix:
84+
include:
4485
# ARM64
4586
- target: aarch64-unknown-linux-gnu
4687
platform: ubuntu-latest
47-
rust: 1.41.0 # MSRV
48-
use_cross: true
49-
deps: true
88+
rust: 1.43.0 # MSRV
5089
- target: aarch64-unknown-linux-gnu
5190
platform: ubuntu-latest
5291
rust: stable
53-
use_cross: true
54-
deps: true
5592

5693
runs-on: ${{ matrix.platform }}
5794
steps:
@@ -63,11 +100,4 @@ jobs:
63100
toolchain: ${{ matrix.rust }}
64101
target: ${{ matrix.target }}
65102
override: true
66-
# NOTE: using `marcopolo/cargo` fork to support the `working-directory` attribute
67-
# See: https://github.com/actions-rs/cargo/pull/59
68-
- uses: marcopolo/cargo@master
69-
with:
70-
command: test
71-
working-directory: sha1
72-
use-cross: ${{ matrix.use_cross }}
73-
args: --target ${{ matrix.target }} --release
103+
- run: cross test --target ${{ matrix.target }} --release

.github/workflows/sha2.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
# 32-bit Linux/x86
2525
- target: i686-unknown-linux-gnu
2626
platform: ubuntu-latest
27-
rust: 1.41.0 # MSRV
27+
rust: 1.43.0 # MSRV
2828
use_cross: false
2929
deps: sudo apt install gcc-multilib
3030
- target: i686-unknown-linux-gnu
@@ -36,7 +36,7 @@ jobs:
3636
# 64-bit Linux/x86_64
3737
- target: x86_64-unknown-linux-gnu
3838
platform: ubuntu-latest
39-
rust: 1.41.0 # MSRV
39+
rust: 1.43.0 # MSRV
4040
use_cross: false
4141
deps: true
4242
- target: x86_64-unknown-linux-gnu
@@ -48,7 +48,7 @@ jobs:
4848
# ARM64
4949
- target: aarch64-unknown-linux-gnu
5050
platform: ubuntu-latest
51-
rust: 1.41.0 # MSRV
51+
rust: 1.43.0 # MSRV
5252
use_cross: true
5353
deps: true
5454
- target: aarch64-unknown-linux-gnu

.github/workflows/workspace.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
- uses: actions-rs/toolchain@v1
1818
with:
1919
profile: minimal
20-
toolchain: 1.41.0 # MSRV
20+
toolchain: 1.43.0 # MSRV
2121
components: clippy
2222
override: true
2323
- run: cargo clippy --all -- -D warnings

Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,13 @@ functionality please refer to the crates from
99
enabled `asm` feature `md5`, `sha-1`, `sha2` and `whirlpool` crates will use
1010
code from this repository.
1111

12+
### Minimum Supported Rust Version
13+
14+
All crates in this repository support **Rust 1.43** or higher.
15+
16+
In the future when the minimum supported Rust version is changed,
17+
it will be accompanied by a minor version bump.
18+
1219
## License
1320

1421
All crates licensed under the [MIT license](http://opensource.org/licenses/MIT).

0 commit comments

Comments
 (0)