aboutsummaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorMichael Davis2022-05-22 02:27:08 +0000
committerBlaž Hrastnik2022-05-23 16:05:19 +0000
commit92df5a542509e49a5ff71087b65fca2a17d5d25e (patch)
tree430db02d67c612bf1f38f5c2a8238c244155da60 /.github
parentaa87adf54b0b8dec07baa257aed71d09c3efb119 (diff)
check MSRV in CI
It's very easy to use new rust features without realizing it since the CI and local development workflows may use the latest rust version. We try to keep some backwards compatibility with rust versions to make packaging easier for some OS-level package-managers like Void Linux's. See #1881. This change runs the "Check" step for the pinned version of rust in the rust-toolchain.toml file as well as the MSRV version in a matrix. In order to bump the MSRV, we need to edit .github/workflows/msrv-rust-toolchain.toml This commit sets the MSRV as 1.60.0 but a later child commit will reduce the MSRV back to 1.57.0. Closes #2482.
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml11
-rw-r--r--.github/workflows/msrv-rust-toolchain.toml3
2 files changed, 12 insertions, 2 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index f3cd128a..1368d1bc 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -11,10 +11,17 @@ jobs:
check:
name: Check
runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ rust: [stable, msrv]
steps:
- name: Checkout sources
uses: actions/checkout@v3
+ - name: Use MSRV rust toolchain
+ if: matrix.rust == 'msrv'
+ run: cp .github/workflows/msrv-rust-toolchain.toml rust-toolchain.toml
+
- name: Install stable toolchain
uses: helix-editor/rust-toolchain@v1
with:
@@ -50,8 +57,8 @@ jobs:
uses: actions/cache@v3
with:
path: runtime/grammars
- key: ${{ runner.os }}-v2-tree-sitter-grammars-${{ hashFiles('languages.toml') }}
- restore-keys: ${{ runner.os }}-v2-tree-sitter-grammars-
+ key: ${{ runner.os }}-stable-v${{ env.CACHE_VERSION }}-tree-sitter-grammars-${{ hashFiles('languages.toml') }}
+ restore-keys: ${{ runner.os }}-stable-v${{ env.CACHE_VERSION }}-tree-sitter-grammars-
- name: Run cargo test
uses: actions-rs/cargo@v1
diff --git a/.github/workflows/msrv-rust-toolchain.toml b/.github/workflows/msrv-rust-toolchain.toml
new file mode 100644
index 00000000..958edb45
--- /dev/null
+++ b/.github/workflows/msrv-rust-toolchain.toml
@@ -0,0 +1,3 @@
+[toolchain]
+channel = "1.60.0"
+components = ["rustfmt", "rust-src"]