JVM | Platform | Status |
---|---|---|
OpenJDK (Temurin) Current | Linux | |
OpenJDK (Temurin) LTS | Linux | |
OpenJDK (Temurin) Current | Windows | |
OpenJDK (Temurin) LTS | Windows |
A trivial command-line wrapper around japicmp.
- Simple command-line tool for checking jar version changes.
- Compare
jar
files for semantic versioning conformance. - Compare Android
aar
files for semantic versioning conformance. - Powered by japicmp.
- High-coverage automated test suite.
- ISC license.
$ mvn clean verify
Usage: scando [options]
Options:
--excludeList
A file containing a list of package/class exclusions
--help
Display this help message
* --htmlReport
The output file for the HTML report
--ignoreMissingOld
Trivially succeed if the old jar is missing.
Default: false
* --newJar
The new jar file
* --newJarVersion
The new jar version
* --oldJarUri
The old jar/aar file/URI
* --oldJarVersion
The old jar version
* --textReport
The output file for the plain text report
$ java -jar \
com.io7m.scando.cmdline-0.0.1-main.jar \
--oldJarUri https://repo1.maven.org/maven2/com/io7m/jtensors/io7m-jtensors-core/7.1.0/io7m-jtensors-core-7.1.0.jar \
--newJar com.io7m.jtensors.core-9.0.0.jar \
--oldJarVersion 7.1.0 \
--newJarVersion 7.2.0 \
--textReport report.txt \
--htmlReport report.html
INFO: Text report written to report.txt
INFO: HTML report written to report.html
ERROR: Version change between 7.1.0 and 7.2.0 is MINOR, but the changes made to code require a MAJOR version change
$ echo $?
1
The --excludeList
parameter, if specified, gives the path of a file containing
one exclude pattern per line. Empty lines, and lines starting with #
are ignored.
See japicmp for the syntax of
exclude patterns.
The --ignoreMissingOld
parameter, if specified, allows for ignoring a missing
"old" jar. This is useful when, for example, a new module is added to a project.