Don't shorten types when a superclass is outside the file #4353
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # BUILDCACHE_USER | |
| # BUILDCACHE_PASS | |
| # - rw access to buildcache.diffplug.com | |
| name: CI | |
| on: | |
| pull_request: | |
| push: | |
| branches: [ main, release ] | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| # least privilege by default; jobs opt in to more below | |
| permissions: | |
| contents: read | |
| jobs: | |
| sanity-check: | |
| name: Sanity Check | |
| runs-on: ubuntu-latest | |
| env: | |
| # Only push to the remote build cache on push events to prevent cache pollution and poisoning from PRs. | |
| buildcacheuser: ${{ github.event_name == 'push' && secrets.BUILDCACHE_USER || '' }} | |
| buildcachepass: ${{ github.event_name == 'push' && secrets.BUILDCACHE_PASS || '' }} | |
| steps: | |
| - uses: actions/checkout@v7 | |
| with: | |
| fetch-depth: 0 | |
| - uses: actions/setup-java@v6 | |
| with: | |
| distribution: "temurin" | |
| java-version: 21 | |
| - uses: gradle/actions/setup-gradle@v6 | |
| - run: ./gradlew spotlessCheck | |
| - run: ./gradlew assemble testClasses publishToMavenLocal | |
| build-gradle: | |
| name: Gradle (Java ${{ matrix.jre }}, ${{ matrix.os }}) | |
| needs: sanity-check | |
| permissions: | |
| contents: read | |
| checks: write # mikepenz/action-junit-report posts check runs | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ ubuntu-latest ] | |
| jre: [ 17, 21, 25, 26 ] # Test on all supported LTS and latest JDK. | |
| include: | |
| - os: windows-latest | |
| jre: 26 # Test on the latest JDK for speeds. | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-java@v6 | |
| with: | |
| distribution: "temurin" | |
| java-version: ${{ matrix.jre }} | |
| - uses: gradle/actions/setup-gradle@v6 | |
| - run: ./gradlew build -x spotlessCheck -PSPOTLESS_EXCLUDE_MAVEN=true | |
| - name: junit result | |
| uses: mikepenz/action-junit-report@v6 | |
| if: always() | |
| with: | |
| check_name: JUnit Gradle ${{ matrix.jre }} ${{ matrix.os }} | |
| report_paths: '*/build/test-results/*/TEST-*.xml' | |
| check_retries: true | |
| build-maven: | |
| name: Maven (Java ${{ matrix.jre }}, ${{ matrix.os }}) | |
| needs: sanity-check | |
| permissions: | |
| contents: read | |
| checks: write # mikepenz/action-junit-report posts check runs | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ ubuntu-latest ] | |
| jre: [ 17, 21, 25, 26 ] # Test on all supported LTS and latest JDK. | |
| include: | |
| - os: windows-latest | |
| jre: 26 # Test on the latest JDK for speeds. | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-java@v6 | |
| with: | |
| distribution: "temurin" | |
| java-version: ${{ matrix.jre }} | |
| - uses: gradle/actions/setup-gradle@v6 | |
| - run: ./gradlew :plugin-maven:build -x spotlessCheck | |
| - name: junit result | |
| uses: mikepenz/action-junit-report@v6 | |
| if: always() | |
| with: | |
| check_name: JUnit Maven ${{ matrix.jre }} ${{ matrix.os }} | |
| report_paths: '*/build/test-results/*/TEST-*.xml' | |
| check_retries: true | |
| test-npm: | |
| name: NPM | |
| needs: sanity-check | |
| permissions: | |
| contents: read | |
| checks: write # mikepenz/action-junit-report posts check runs | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-java@v6 | |
| with: | |
| distribution: "temurin" | |
| java-version: 17 | |
| - uses: gradle/actions/setup-gradle@v6 | |
| - run: ./gradlew testNpm | |
| - name: junit result | |
| uses: mikepenz/action-junit-report@v6 | |
| if: always() | |
| with: | |
| check_name: JUnit NPM | |
| report_paths: '*/build/test-results/*/TEST-*.xml' | |
| check_retries: true | |
| test-shfmt: | |
| name: Shfmt | |
| needs: sanity-check | |
| permissions: | |
| contents: read | |
| checks: write # mikepenz/action-junit-report posts check runs | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-java@v6 | |
| with: | |
| distribution: "temurin" | |
| java-version: 17 | |
| - uses: gradle/actions/setup-gradle@v6 | |
| - uses: actions/setup-go@v7 | |
| with: | |
| go-version: 'stable' | |
| - name: Install shfmt | |
| run: | | |
| go install mvdan.cc/sh/v3/cmd/shfmt@v3.8.0 | |
| - name: Test shfmt | |
| run: ./gradlew testShfmt | |
| - name: junit result | |
| uses: mikepenz/action-junit-report@v6 | |
| if: always() | |
| with: | |
| check_name: JUnit shfmt | |
| report_paths: '*/build/test-results/*/TEST-*.xml' | |
| check_retries: true | |
| test-idea: | |
| name: IntelliJ IDEA | |
| needs: sanity-check | |
| permissions: | |
| contents: read | |
| checks: write # mikepenz/action-junit-report posts check runs | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-java@v6 | |
| with: | |
| distribution: "temurin" | |
| java-version: 17 | |
| - uses: gradle/actions/setup-gradle@v6 | |
| - name: Test idea | |
| run: | | |
| download_link=$(curl https://data.services.jetbrains.com/products/releases\?code\=IIC\&latest\=true\&type\=release | jq -r '.IIC[0].downloads.linux.link') | |
| curl --location "$download_link" -o idea.tar.gz | |
| tar -xf idea.tar.gz | |
| cd idea-IU* | |
| export PATH=${PATH}:$(pwd)/bin | |
| cd .. | |
| ./gradlew testIdea | |
| - name: junit result | |
| uses: mikepenz/action-junit-report@v6 | |
| if: always() | |
| with: | |
| check_name: JUnit IDEA | |
| report_paths: '*/build/test-results/*/TEST-*.xml' | |
| check_retries: true | |
| # Status check that is required in branch protection rules. | |
| final-status: | |
| needs: | |
| - sanity-check | |
| - build-gradle | |
| - build-maven | |
| - test-npm | |
| - test-shfmt | |
| - test-idea | |
| runs-on: ubuntu-slim | |
| if: always() | |
| steps: | |
| - name: Check | |
| run: | | |
| results=$(tr -d '\n' <<< '${{ toJSON(needs.*.result) }}') | |
| if ! grep -q -v -E '(failure|cancelled)' <<< "$results"; then | |
| echo "One or more required jobs failed" | |
| exit 1 | |
| fi | |
| echo "All required jobs completed successfully." |