|
11 | 11 | jobs: |
12 | 12 | codecov: |
13 | 13 | name: Collect code coverage data |
14 | | - needs: lalrpop |
15 | 14 | runs-on: ubuntu-latest |
16 | 15 | steps: |
17 | 16 | - uses: actions/checkout@v3 |
18 | | - - name: Cache generated parser |
19 | | - uses: actions/cache@v3 |
20 | | - with: |
21 | | - path: compiler/parser/python.rs |
22 | | - key: lalrpop-${{ hashFiles('compiler/parser/python.lalrpop') }} |
23 | 17 | - uses: dtolnay/rust-toolchain@stable |
24 | 18 | with: |
25 | 19 | components: llvm-tools-preview |
|
62 | 56 |
|
63 | 57 | testdata: |
64 | 58 | name: Collect regression test data |
65 | | - needs: lalrpop |
66 | 59 | runs-on: ubuntu-latest |
67 | 60 | steps: |
68 | 61 | - uses: actions/checkout@v3 |
69 | | - - name: Cache generated parser |
70 | | - uses: actions/cache@v3 |
71 | | - with: |
72 | | - path: compiler/parser/python.rs |
73 | | - key: lalrpop-${{ hashFiles('compiler/parser/python.lalrpop') }} |
74 | 62 | - uses: dtolnay/rust-toolchain@stable |
75 | 63 | - name: build rustpython |
76 | 64 | run: cargo build --release --verbose |
|
97 | 85 |
|
98 | 86 | whatsleft: |
99 | 87 | name: Collect what is left data |
100 | | - needs: lalrpop |
101 | 88 | runs-on: ubuntu-latest |
102 | 89 | steps: |
103 | 90 | - uses: actions/checkout@v3 |
104 | | - - name: Cache generated parser |
105 | | - uses: actions/cache@v3 |
106 | | - with: |
107 | | - path: compiler/parser/python.rs |
108 | | - key: lalrpop-${{ hashFiles('compiler/parser/python.lalrpop') }} |
109 | 91 | - uses: dtolnay/rust-toolchain@stable |
110 | 92 | - name: build rustpython |
111 | 93 | run: cargo build --release --verbose |
@@ -135,15 +117,9 @@ jobs: |
135 | 117 |
|
136 | 118 | benchmark: |
137 | 119 | name: Collect benchmark data |
138 | | - needs: lalrpop |
139 | 120 | runs-on: ubuntu-latest |
140 | 121 | steps: |
141 | 122 | - uses: actions/checkout@v3 |
142 | | - - name: Cache generated parser |
143 | | - uses: actions/cache@v3 |
144 | | - with: |
145 | | - path: compiler/parser/python.rs |
146 | | - key: lalrpop-${{ hashFiles('compiler/parser/python.lalrpop') }} |
147 | 123 | - uses: dtolnay/rust-toolchain@stable |
148 | 124 | - uses: actions/setup-python@v4 |
149 | 125 | with: |
@@ -183,35 +159,3 @@ jobs: |
183 | 159 | if git -c user.name="Github Actions" -c user.email="actions@github.com" commit -m "Update benchmark results"; then |
184 | 160 | git push |
185 | 161 | fi |
186 | | -
|
187 | | - lalrpop: |
188 | | - name: Generate parser with lalrpop |
189 | | - strategy: |
190 | | - matrix: |
191 | | - os: [ubuntu-latest, windows-latest] |
192 | | - runs-on: ${{ matrix.os }} |
193 | | - steps: |
194 | | - - uses: actions/checkout@v3 |
195 | | - - name: Cache generated parser |
196 | | - uses: actions/cache@v3 |
197 | | - with: |
198 | | - path: compiler/parser/python.rs |
199 | | - key: lalrpop-${{ hashFiles('compiler/parser/python.lalrpop') }} |
200 | | - - name: Check if cached generated parser exists |
201 | | - id: generated_parser |
202 | | - uses: andstor/file-existence-action@v2 |
203 | | - with: |
204 | | - files: "compiler/parser/python.rs" |
205 | | - - if: runner.os == 'Windows' |
206 | | - name: Force python.lalrpop to be lf # actions@checkout ignore .gitattributes |
207 | | - run: | |
208 | | - set file compiler/parser/python.lalrpop; ((Get-Content $file) -join "`n") + "`n" | Set-Content -NoNewline $file |
209 | | - - name: Install lalrpop |
210 | | - if: steps.generated_parser.outputs.files_exists == 'false' |
211 | | - uses: baptiste0928/cargo-install@v2 |
212 | | - with: |
213 | | - crate: lalrpop |
214 | | - version: "0.19.9" |
215 | | - - name: Run lalrpop |
216 | | - if: steps.generated_parser.outputs.files_exists == 'false' |
217 | | - run: lalrpop compiler/parser/python.lalrpop |
0 commit comments