11name : main
22on : [push, pull_request]
3- env :
4- SCRIPT_DIR : ./.github/scripts
3+
4+ concurrency :
5+ group : ${{ github.workflow }}-${{ github.ref }}
6+ cancel-in-progress : true
57
68jobs :
79 test :
810 strategy :
11+ fail-fast : false
912 matrix :
1013 os : [macos-latest, ubuntu-latest, windows-latest]
1114 runs-on : ${{ matrix.os }}
1215 steps :
13- - uses : actions/checkout@v3
14- - uses : actions/setup-node@v3
16+ - uses : actions/checkout@v4
17+ - uses : r-lib/ actions/setup-r@v2
1518 with :
16- node-version : 18
19+ use-public-rspm : true
20+ - uses : actions/setup-node@v4
21+ with :
22+ node-version : 20
23+ cache : ' npm'
1724 - run : npm install
1825 - name : Run tests
1926 uses : GabrielBB/xvfb-action@v1.0
@@ -24,28 +31,22 @@ jobs:
2431 env :
2532 VSIX_FILE : vscode-R.vsix
2633 steps :
27- - uses : actions/checkout@v3
28- - run : npm install
29- - uses : lannonbr/vsce-action@4.0.0
34+ - uses : actions/checkout@v4
35+ - uses : actions/setup-node@v4
3036 with :
31- args : " package -o $VSIX_FILE"
37+ node-version : 20
38+ cache : ' npm'
39+ - run : npm install
40+ - name : Package extension
41+ run : npx @vscode/vsce package -o $VSIX_FILE
3242 - uses : actions/upload-artifact@v4
3343 with :
3444 name : ${{ env.VSIX_FILE }}
3545 path : ${{ env.VSIX_FILE }}
36- eslint :
37- runs-on : ubuntu-latest
38- steps :
39- - uses : actions/checkout@v3
40- - uses : actions/setup-node@v3
41- with :
42- node-version : 18
43- - run : npm install
44- - run : npm run lint
4546 markdownlint-cli :
4647 runs-on : ubuntu-latest
4748 steps :
48- - uses : actions/checkout@v3
49+ - uses : actions/checkout@v4
4950 - uses : nosborn/github-action-markdown-cli@v1.1.1
5051 with :
5152 files : .
@@ -57,17 +58,30 @@ jobs:
5758 GITHUB_PAT : ${{ secrets.GITHUB_TOKEN }}
5859 steps :
5960 - uses : actions/checkout@v4
60-
6161 - uses : r-lib/actions/setup-r@v2
6262 with :
6363 use-public-rspm : true
64-
6564 - name : Install lintr
6665 run : install.packages("lintr")
6766 shell : Rscript {0}
6867
69- - name : Lint root directory
68+ - uses : actions/setup-node@v4
69+ with :
70+ node-version : 20
71+ cache : ' npm'
72+
73+ - run : npm install
74+ - name : eslint
75+ run : npx eslint src --ext ts
76+
77+ - name : Lint R directory
7078 run : lintr::lint_dir("./R")
7179 shell : Rscript {0}
7280 env :
7381 LINTR_ERROR_ON_LINT : true
82+
83+ - name : Lint root directory
84+ run : lintr::lint_package("sess")
85+ shell : Rscript {0}
86+ env :
87+ LINTR_ERROR_ON_LINT : true
0 commit comments