Skip to content

Commit 2faf10b

Browse files
committed
Fix #838: Add Android SDK compatibility check with AnimalSniffer (#841)
1 parent a615ffe commit 2faf10b

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

.github/workflows/main.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@ jobs:
4949
- name: Extract project Maven version
5050
id: projectVersion
5151
run: echo "version=$(./mvnw org.apache.maven.plugins:maven-help-plugin:3.3.0:evaluate -DforceStdout -Dexpression=project.version -q)" >>$GITHUB_OUTPUT
52+
- name: Verify Android SDK Compatibility
53+
if: matrix.java_version == '8'
54+
run: ./mvnw -B -q -ff -ntp -DskipTests animal-sniffer:check
5255
- name: Deploy snapshot
5356
if: github.event_name != 'pull_request' && matrix.java_version == '8' && endsWith(steps.projectVersion.outputs.version, '-SNAPSHOT')
5457
env:

pom.xml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,15 @@
3838
still use Moditect to get JDK9+ module info support; need newer bundle plugin as well
3939
(can just defaults from `jackson-parent`)
4040
-->
41+
42+
<!-- 16-Nov-2022, tatu: [core#838] Verify Android SDK compatibility.
43+
Baseline compatibility:
44+
* Jackson 2.13 compatible with Android SDK 19 and up
45+
* Jackson 2.14 compatible with Android SDK 19 and up
46+
-->
47+
<version.android.sdk>19</version.android.sdk>
48+
<version.android.sdk.signature>0.5.0</version.android.sdk.signature>
49+
4150
<osgi.export>com.fasterxml.jackson.core;version=${project.version},
4251
com.fasterxml.jackson.core.*;version=${project.version}
4352
</osgi.export>
@@ -140,6 +149,24 @@ com.fasterxml.jackson.core.*;version=${project.version}
140149
<groupId>de.jjohannes</groupId>
141150
<artifactId>gradle-module-metadata-maven-plugin</artifactId>
142151
</plugin>
152+
153+
<!-- 16-Nov-2022, tatu: [core#838] add verification of compatibility
154+
wrt Android SDK versions using AnimalSniffer with "gummy bears" signatures.
155+
To be run from CI, but manually with:
156+
mvn clean package animal-sniffer:check
157+
-->
158+
<plugin>
159+
<groupId>org.codehaus.mojo</groupId>
160+
<artifactId>animal-sniffer-maven-plugin</artifactId>
161+
<version>1.22</version>
162+
<configuration>
163+
<signature>
164+
<groupId>com.toasttab.android</groupId>
165+
<artifactId>gummy-bears-api-${version.android.sdk}</artifactId>
166+
<version>${version.android.sdk.signature}</version>
167+
</signature>
168+
</configuration>
169+
</plugin>
143170
</plugins>
144171
</build>
145172

0 commit comments

Comments
 (0)