From b4fd2618993005920a58bbbaca18f1d581b7239b Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Tue, 29 Aug 2023 15:27:01 -0500 Subject: [PATCH] Move Java 8 indy spec:ji and force compilation This moves the indy-enabled Java 8 spec:ji run to the "latest LTS" group (currently 21-ea) and adds additional flags there to force compilation. The latter change is needed in order for some types of tests to fully compile (like rspec specs, which usually have only blocks down to the root of the script). Both flags are required to force compilation of whole files (e.g. specs) or individual methods and blocks (if whole file fails or new methods are evaluated at runtime). This should help catch more indy issues. --- .github/workflows/ci.yml | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b3c5bfcdeb6..72f9a8d2b35 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -81,14 +81,14 @@ jobs: strategy: matrix: - target: ['test:mri:core:jit', 'test:jruby:jit', 'spec:compiler', 'spec:ruby:fast:jit'] + target: ['test:mri:core:jit', 'test:jruby:jit', 'spec:compiler', 'spec:ruby:fast:jit', 'spec:ji'] java-version: ['21-ea'] fail-fast: false name: rake ${{ matrix.target }} (Java ${{ matrix.java-version }} +indy) env: - JRUBY_OPTS: '-Xcompile.invokedynamic' + JRUBY_OPTS: '-Xcompile.invokedynamic -X+C -Xjit.threshold=0' steps: - name: Bootstrap build @@ -153,27 +153,6 @@ jobs: env: PHASE: 'package ${{ matrix.package-flags }}' - ji-specs-8-indy: - runs-on: ubuntu-latest - - strategy: - fail-fast: false - - env: - JRUBY_OPTS: '-Xcompile.invokedynamic' - - steps: - - name: Bootstrap build - uses: jruby/jruby-ci-build@v1 - - name: set up java 8 - uses: actions/setup-java@v3 - with: - distribution: 'zulu' - java-version: 8 - cache: 'maven' - - name: rake spec:ji - run: bin/jruby -S rake spec:ji - regression-specs-jit: runs-on: ubuntu-latest @@ -415,7 +394,7 @@ jobs: permissions: contents: none if: ${{ github.ref == 'refs/heads/master' || github.ref == 'refs/heads/jruby-9.3' }} - needs: [mvn-test, mvn-test-8, mvn-test-windows, dependency-check, rake-test, rake-test-17-indy, rake-test-8, test-versions, sequel, concurrent-ruby, jruby-tests-dev, ji-specs-8-indy, regression-specs-jit, mvn-test-m1] + needs: [mvn-test, mvn-test-8, mvn-test-windows, dependency-check, rake-test, rake-test-17-indy, rake-test-8, test-versions, sequel, concurrent-ruby, jruby-tests-dev, regression-specs-jit, mvn-test-m1] uses: jruby/jruby/.github/workflows/snapshot-publish.yml@6cd0d4d96d9406635183d81cf91acc82cd78245f secrets: SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}