Validate, compare, sort, parse, and serialize Semantic Versioning (SemVer) 2.0.0 version strings, using XQuery.
SemVer rules are applied strictly, raising errors when version strings do not conform to the spec.
If you want to create an EXPath Package for the app, you can run:
$ mvn package
There will be a .xar
file in the target/
sub-folder.
This project is configured to use the Maven Release Plugin to make creating and subsequently publishing a release easy.
The release plugin will take care of:
.xar
file).Before performing the release, in addition to the Build requirements you need an installed and functioning copy of GPG or GnuPG with your private key setup correctly for signing.
To perform the release, from within your local Git cloned repository run:
mvn release:prepare && mvn release:perform
You will be prompted for the answers to a few questions along the way. The default response will be provided for you, and you can simply press "Enter" (or "Return") to accept it. Alternatively you may enter your own value and press "Enter" (or "Return").
What is the release version for "semver.xq"? (org.exist-db.xquery:semver-xq) 2.3.1: : 2.4.0
What is SCM release tag or label for "semver.xq"? (org.exist-db.xquery:semver-xq) 2.4.0: :
What is the new development version for "semver.xq"? (org.exist-db.xquery:semver-xq) 2.4.1-SNAPSHOT: :
release version
, please sensibly consider using the next appropriate SemVer 2.0.0 version number.SCM release tag
, please use the same value as the release version
.new development version
, the default value should always suffice.Once the release process completes, there will be a .xar
file in the target/
sub-folder. This file may be published to:
Simply run: mvn -Pdev docker:start
to start a Docker environment of eXist-db on port 9090
with the semver.xq package already deployed.
As the Docker environment binds the files from the host filesystem, changes to the source code are reflected immediately in the running eXist-db environment.
You can override the Docker host port for eXist-db from port 9090 to a port of your choosing by
specifying -Ddev.port=9191
, e.g.: mvn -Pdev -Ddev.port=9191 docker:start
.
If you also want the Dashboard and eXide to be available from the Docker environment of eXist-db
you can invoke the target public-xar-repo:resolve
before you call docker:start
,
e.g. mvn -Pdev public-xar-repo:resolve docker:start
.
To stop the Docker environment run: mvn -Pdev docker:stop
.