5
5
NODE_OPTIONS : ' --max-old-space-size=8192'
6
6
CI : true
7
7
8
+ concurrency :
9
+ group : ${{ github.workflow }}-${{ github.ref }}
10
+ cancel-in-progress : true
11
+
8
12
on :
9
13
push :
10
14
branches :
11
15
- master
12
16
pull_request :
13
17
14
18
jobs :
15
- prettier-check :
16
- name : 🧹 Prettier Check
17
- runs-on : ubuntu-latest
18
- steps :
19
- - name : Checkout Master
20
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
21
-
22
- - name : Setup env
23
- uses : the-guild-org/shared-config/setup@main
24
- with :
25
- nodeVersion : 22
26
-
27
- - name : Prettier Check
28
- run : yarn prettier:check
29
- lint :
30
- name : Lint
31
- uses : the-guild-org/shared-config/.github/workflows/lint.yml@main
32
- with :
33
- script : yarn ci:lint
34
- secrets :
35
- githubToken : ${{ secrets.GITHUB_TOKEN }}
36
-
37
- build :
38
- name : Type Check on GraphQL v${{matrix.graphql_version}}
19
+ typecheck-15 :
20
+ name : Type Check on GraphQL v15
39
21
runs-on : ubuntu-latest
40
- strategy :
41
- fail-fast : false
42
- matrix :
43
- graphql_version :
44
- - 15
45
- - 16
46
22
steps :
47
23
- name : Checkout Master
48
24
uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
@@ -52,25 +28,27 @@ jobs:
52
28
with :
53
29
nodeVersion : 22
54
30
55
- - name : Use GraphQL v${{matrix.graphql_version}}
56
- run : node ./scripts/match-graphql.js ${{matrix.graphql_version}}
31
+ - name : Use GraphQL v15
32
+ run : node ./scripts/match-graphql.js 15
57
33
- name : Install Dependencies using Yarn
58
34
run : yarn install --ignore-engines && git checkout yarn.lock
59
35
- name : Type Check
60
36
run : yarn ts:check
61
- test_esm :
62
- name : ESM Test
37
+ check :
38
+ name : Full Check on GraphQL v16
63
39
runs-on : ubuntu-latest
64
40
steps :
65
41
- name : Checkout Master
66
42
uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
67
-
68
43
- name : Setup env
69
44
uses : the-guild-org/shared-config/setup@main
70
45
with :
71
46
nodeVersion : 22
72
-
73
- - name : Build Packages
47
+ - name : Prettier
48
+ run : yarn prettier:check
49
+ - name : Lint
50
+ run : yarn lint
51
+ - name : Build
74
52
run : yarn build
75
53
- name : Test ESM and CJS integrity
76
54
run : yarn bob check
83
61
fail-fast : false
84
62
matrix :
85
63
os : [ubuntu-latest] # remove windows to speed up the tests
86
- node-version : [18, 20, 22]
64
+ node-version : [18, 20, 22, 23 ]
87
65
graphql_version :
88
66
- 15
89
67
- 16
@@ -113,34 +91,13 @@ jobs:
113
91
hashFiles('yarn.lock') }}
114
92
restore-keys : |
115
93
${{ runner.os }}-${{matrix.node-version}}-${{matrix.graphql_version}}-jest-
116
- - name : Test
117
- if : ${{ matrix.node-version >= 20 }}
94
+ - name : Build
95
+ run : yarn build
96
+ - name : Unit Tests
118
97
run : yarn test --ci
119
- - name : Test
120
- if : ${{ matrix.node-version < 20 }}
98
+ - name : Leak Tests
121
99
uses : nick-fields/retry@v3
122
100
with :
123
101
timeout_minutes : 10
124
102
max_attempts : 5
125
103
command : yarn test:leaks --ci
126
-
127
- test_browser :
128
- name : Browser Test
129
- runs-on : ubuntu-latest
130
- steps :
131
- - name : Checkout Master
132
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
133
- - name : Setup env
134
- uses : the-guild-org/shared-config/setup@main
135
- with :
136
- nodeVersion : 22
137
- - name : Setup Chrome
138
- uses : browser-actions/setup-chrome@v1
139
- - name : Build Packages
140
- run : yarn build
141
- - name : Test
142
- uses : nick-fields/retry@v3
143
- with :
144
- timeout_minutes : 10
145
- max_attempts : 5
146
- command : TEST_BROWSER=true yarn jest --no-watchman --ci browser
0 commit comments