Support serializing anonymous and local class with custom adapter #533
Workflow file for this run
This file contains 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
# This workflow makes sure that a pull request does not make any incompatible changes | |
# to the public API of Gson | |
name: Check API compatibility | |
on: pull_request | |
jobs: | |
check-api-compatibility: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout old version | |
uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.base.sha }} | |
path: 'gson-old-japicmp' | |
- name: Set up JDK 11 | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: '11' | |
cache: 'maven' | |
- name: Build old version | |
run: | | |
cd gson-old-japicmp | |
# Set dummy version | |
mvn --batch-mode --no-transfer-progress org.codehaus.mojo:versions-maven-plugin:2.11.0:set -DnewVersion=JAPICMP-OLD | |
# Install artifacts with dummy version in local repository; used later by Maven plugin for comparison | |
mvn --batch-mode --no-transfer-progress install -DskipTests | |
- name: Checkout new version | |
uses: actions/checkout@v3 | |
- name: Check API compatibility | |
id: check-compatibility | |
run: | | |
mvn --batch-mode --fail-at-end --no-transfer-progress package japicmp:cmp -DskipTests | |
- name: Upload API differences artifacts | |
uses: actions/upload-artifact@v3 | |
# Run on workflow success (in that case differences report might include added methods and classes) | |
# or when API compatibility check failed | |
if: success() || ( failure() && steps.check-compatibility.outcome == 'failure' ) | |
with: | |
name: api-differences | |
path: | | |
**/japicmp/default-cli.html | |
**/japicmp/default-cli.diff | |
# Plugin should always have created report files (though they might be empty) | |
if-no-files-found: error |