@@ -22,23 +22,23 @@ jobs:
2222 fail-fast : false
2323 matrix :
2424 include :
25- - test_task : ' check '
25+ - test_task : ' test-all '
2626 run_opts : ' --zjit-call-threshold=1'
2727 specopts : ' -T --zjit-call-threshold=1'
2828 configure : ' --enable-zjit=dev'
2929
30- - test_task : ' check '
30+ - test_task : ' test-all '
3131 run_opts : ' --zjit-disable-hir-opt --zjit-call-threshold=1'
3232 specopts : ' -T --zjit-disable-hir-opt -T --zjit-call-threshold=1'
3333 configure : ' --enable-zjit=dev'
3434
35- - test_task : ' zjit-check' # zjit-test + quick feedback of test_zjit.rb
36- configure : ' --enable-yjit=dev --enable-zjit'
37- rust_version : " 1.85.0"
35+ # - test_task: 'zjit-check' # zjit-test + quick feedback of test_zjit.rb
36+ # configure: '--enable-yjit=dev --enable-zjit'
37+ # rust_version: "1.85.0"
3838
39- - test_task : ' ruby'
40- hint : ' combo build test'
41- configure : ' --enable-yjit --enable-zjit'
39+ # - test_task: 'ruby'
40+ # hint: 'combo build test'
41+ # configure: '--enable-yjit --enable-zjit'
4242
4343 env :
4444 GITPULLOPTIONS : --no-tags origin ${{ github.ref }}
@@ -109,6 +109,27 @@ jobs:
109109 continue-on-error : true
110110 timeout-minutes : 3
111111
112+ - name : Run compact_stress tests
113+ run : |
114+ test -n "${LAUNCHABLE_STDOUT}" && exec 1> >(tee "${LAUNCHABLE_STDOUT}")
115+ test -n "${LAUNCHABLE_STDERR}" && exec 2> >(tee "${LAUNCHABLE_STDERR}")
116+
117+ set -x
118+ make -s test-all TESTS="../src/test/ruby/test_regexp.rb ../src/test/ruby/test_enumerator.rb -n /compact_stress/ --repeat-count=10" \
119+ RUN_OPTS="$RUN_OPTS" \
120+ SPECOPTS="$SPECOPTS" \
121+ TESTOPTS="$TESTOPTS"
122+ timeout-minutes : 60
123+ env :
124+ RUBY_TESTOPTS : ' -q --tty=no'
125+ EXCLUDES : ' ../src/test/.excludes-zjit'
126+ TEST_BUNDLED_GEMS_ALLOW_FAILURES : ' '
127+ SYNTAX_SUGGEST_TIMEOUT : ' 30'
128+ PRECHECK_BUNDLED_GEMS : ' no'
129+ LAUNCHABLE_STDOUT : ${{ steps.launchable.outputs.stdout_report_path }}
130+ LAUNCHABLE_STDERR : ${{ steps.launchable.outputs.stderr_report_path }}
131+ continue-on-error : ${{ matrix.continue-on-test_task || false }}
132+
112133 - name : make ${{ matrix.test_task }}
113134 run : |
114135 test -n "${LAUNCHABLE_STDOUT}" && exec 1> >(tee "${LAUNCHABLE_STDOUT}")
@@ -143,76 +164,76 @@ jobs:
143164 SLACK_WEBHOOK_URL : ${{ secrets.SIMPLER_ALERTS_URL }} # ruby-lang slack: ruby/simpler-alerts-bot
144165 if : ${{ failure() }}
145166
146- result :
147- if : ${{ always() }}
148- name : ${{ github.workflow }} result
149- runs-on : ubuntu-latest
150- needs : [make]
151- steps :
152- - run : exit 1
153- working-directory :
154- if : ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}
167+ # result:
168+ # if: ${{ always() }}
169+ # name: ${{ github.workflow }} result
170+ # runs-on: ubuntu-latest
171+ # needs: [make]
172+ # steps:
173+ # - run: exit 1
174+ # working-directory:
175+ # if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}
155176
156177 # Separated from `make` job to avoid making it a required status check for now
157- ruby-bench :
158- strategy :
159- matrix :
160- include :
161- # Test --call-threshold=2 with 2 iterations in total
162- - ruby_opts : ' --zjit-call-threshold=2'
163- bench_opts : ' --warmup=1 --bench=1 --excludes=shipit'
164- configure : ' --enable-zjit=dev_nodebug' # --enable-zjit=dev is too slow
165-
166- runs-on : macos-14
167-
168- if : >-
169- ${{!(false
170- || contains(github.event.head_commit.message, '[DOC]')
171- || contains(github.event.pull_request.title, '[DOC]')
172- || contains(github.event.pull_request.labels.*.name, 'Documentation')
173- || (github.event.pull_request.user.login == 'dependabot[bot]' && !startsWith(github.head_ref, 'dependabot/cargo'))
174- )}}
175-
176- steps :
177- - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
178- with :
179- persist-credentials : false
180-
181- - uses : ./.github/actions/setup/macos
182-
183- - uses : ./.github/actions/setup/directories
184- with :
185- srcdir : src
186- builddir : build
187- makeup : true
188-
189- - name : Run configure
190- run : ../src/configure -C --disable-install-doc --prefix="$(pwd)/install" ${{ matrix.configure }}
191-
192- - run : make install
193-
194- # setup/directories set MAKEFLAGS=-j4 for macOS, which randomly fails sqlite3.gem builds
195- - name : Unset MAKEFLAGS
196- run : echo "MAKEFLAGS=" >> "$GITHUB_ENV"
197-
198- - name : Checkout ruby-bench
199- uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
200- with :
201- persist-credentials : false
202- repository : ruby/ruby-bench
203- path : ruby-bench
204-
205- # If you want to skip failing benchmark, consider using `--excludes`.
206- # e.g. `bench_opts: '--warmup=1 --bench=1 --excludes=railsbench,lobsters'`
207- - name : Run ruby-bench
208- run : ruby run_benchmarks.rb -e "zjit::../build/install/bin/ruby ${{ matrix.ruby_opts }}" ${{ matrix.bench_opts }}
209- working-directory : ruby-bench
210-
211- - uses : ./.github/actions/slack
212- with :
213- label : ruby-bench ${{ matrix.bench_opts }} ${{ matrix.ruby_opts }}
214- SLACK_WEBHOOK_URL : ${{ secrets.SIMPLER_ALERTS_URL }} # ruby-lang slack: ruby/simpler-alerts-bot
215- if : ${{ failure() }}
178+ # ruby-bench:
179+ # strategy:
180+ # matrix:
181+ # include:
182+ # # Test --call-threshold=2 with 2 iterations in total
183+ # - ruby_opts: '--zjit-call-threshold=2'
184+ # bench_opts: '--warmup=1 --bench=1 --excludes=shipit'
185+ # configure: '--enable-zjit=dev_nodebug' # --enable-zjit=dev is too slow
186+
187+ # runs-on: macos-14
188+
189+ # if: >-
190+ # ${{!(false
191+ # || contains(github.event.head_commit.message, '[DOC]')
192+ # || contains(github.event.pull_request.title, '[DOC]')
193+ # || contains(github.event.pull_request.labels.*.name, 'Documentation')
194+ # || (github.event.pull_request.user.login == 'dependabot[bot]' && !startsWith(github.head_ref, 'dependabot/cargo'))
195+ # )}}
196+
197+ # steps:
198+ # - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
199+ # with:
200+ # persist-credentials: false
201+
202+ # - uses: ./.github/actions/setup/macos
203+
204+ # - uses: ./.github/actions/setup/directories
205+ # with:
206+ # srcdir: src
207+ # builddir: build
208+ # makeup: true
209+
210+ # - name: Run configure
211+ # run: ../src/configure -C --disable-install-doc --prefix="$(pwd)/install" ${{ matrix.configure }}
212+
213+ # - run: make install
214+
215+ # # setup/directories set MAKEFLAGS=-j4 for macOS, which randomly fails sqlite3.gem builds
216+ # - name: Unset MAKEFLAGS
217+ # run: echo "MAKEFLAGS=" >> "$GITHUB_ENV"
218+
219+ # - name: Checkout ruby-bench
220+ # uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
221+ # with:
222+ # persist-credentials: false
223+ # repository: ruby/ruby-bench
224+ # path: ruby-bench
225+
226+ # # If you want to skip failing benchmark, consider using `--excludes`.
227+ # # e.g. `bench_opts: '--warmup=1 --bench=1 --excludes=railsbench,lobsters'`
228+ # - name: Run ruby-bench
229+ # run: ruby run_benchmarks.rb -e "zjit::../build/install/bin/ruby ${{ matrix.ruby_opts }}" ${{ matrix.bench_opts }}
230+ # working-directory: ruby-bench
231+
232+ # - uses: ./.github/actions/slack
233+ # with:
234+ # label: ruby-bench ${{ matrix.bench_opts }} ${{ matrix.ruby_opts }}
235+ # SLACK_WEBHOOK_URL: ${{ secrets.SIMPLER_ALERTS_URL }} # ruby-lang slack: ruby/simpler-alerts-bot
236+ # if: ${{ failure() }}
216237
217238defaults :
218239 run :
0 commit comments