- Fixes
- Handle xsi:schemaLocation property in configuration file
- Features
- Improved Logging
- Features
- Add support for environment variables in version formats e.g.
${env.BUILD_NUMBER}
- Add support for environment variables in version formats e.g.
- Features
- add ability to define default or overwrite values for version and property format.
- default value if parameter value is not set
${paramter:-<DEFAULT_VALUE>}
e.g.${buildNumber:-0}
- overwrite value if parameter has a value
${paramter:+<OVERWRITE_VALUE>}
e.g.${dirty:+-SNAPSHOT}
- default value if parameter value is not set
- add ability to define default or overwrite values for version and property format.
- Fixes
- fixed wrong dependency management version updates.
- Features
- add
${dirty.snapshot}
placeholder that resolves to-SNAPSHOT
if repository is in a dirty state.- e.g.
<versionFormat>${tag}${dirty.snapshot}</versionFormat>
- e.g.
- add
- Fixes
- fixed
NullPointerException
when no<commit>
config tag exists.
- fixed
- Fixes
- fixed
NullPointerException
when noversionFormat
is set.
- fixed
- Fixes
- fixed wrong property replacement.
- Fixes
- fixed
NullPointerException
when no<plugin><groupId>
is undefined.
- fixed
- Fixes
- fixed
NullPointerException
caused by accessing wrong element within versioning ofpom.xml
profile plugin section
- fixed
- Fixes
- add padding for
timestamp
related placeholder values.
- add padding for
-
Major refactoring
-
New Feature
- Project
<Dependency>
and<Plugin>
versions will be updated accordingly to git versions - Add config option
<disable>true</disable>
to disable extension by default. - Add format placeholder:
${dirty.snapshot}
${commit.timestamp.year}
${commit.timestamp.month}
${commit.timestamp.day}
${commit.timestamp.hour}
${commit.timestamp.minute}
${commit.timestamp.second}
- Maven CLI properties e.g.
mvn ... -Dfoo=bar
will be accessible by${foo}
placeholder
- Project
-
BREAKING CHANGES
- default version format on a branch changed to
${branch}-SNAPSHOT
was${commit}
- Removed support for project property
versioning.disable
to disable extension by default, use config option<disable>
instead. - Replace property regex pattern match with simple name match
- old regex pattern config
<branch|tag|commit> <property> <pattern>
- new property name config
<branch|tag|commit> <property> <name>
- old regex pattern config
- Remove property value pattern
<branch|tag|commit> <property> <valuePattern>
- Remove format placeholder
${property.name}
- Rename format placeholder
${property.value}
to just${value}
- default version format on a branch changed to
- Add feature to disable extension by default and enable on demand
⚠️ minimal required maven version is now3.6.3
- remove workaround for maven
3.6.2
compatibility
- BREAKING minimal required maven version set to
3.6.3
- new version format placeholder
${ref.slug}
alike${ref}
with all/
replaced by-
- new property
git.ref.slug
alikegit.ref
with all/
replaced by-
⚠️ accidentally bump minimal required maven version to3.6.3
- prevent maven from failing, if project is not part of a git repository. Instead a warning is logged.
- fix incompatibility with maven version
3.6.2
- simplify
<property>
replacement configuration
- add missing dependency vor maven version 3.3
-
simplify
<property>
replacement configurationnew config
<gitVersioning> <branch> <pattern>master</pattern> <versionFormat>${version}</versionFormat> <property> <pattern>revision</pattern> <valueFormat>${branch-SNAPSHOT}</valueFormat> </property> </branch> </gitVersioning>
old config
<gitVersioning> <branch> <pattern>master</pattern> <versionFormat>${version}</versionFormat> <property> <pattern>revision</pattern> <value> <format>${branch-SNAPSHOT}</format> </value> </property> </branch> </gitVersioning>
- fix verbose logging when disabling extension by flag
- restrict project versioning to root- and sub-projects
- provide
${git.dirty}
project property
- set execution phase to INITIALIZE
- Fix IntelliJ multi-modules project handling.
- New Provided properties, see Provided Project Properties
git.commit.timestamp
git.commit.timestamp.datetime
- Add parameters and environment variable to disable extension. see Parameters & Environment Variables
- Add config option(
<update>
) to update version in original pom file. see Configure Extension
- Major Refactoring, Simplification
- Also available as Gradle Plugin
- New Provided Project Properties
git.ref
value of branch of tag name, always set
- Restructured XML Config
- renamed root tag
<configuration>
-><gitVersioning>
- removed nested structure
- see Configure Extension
- renamed root tag
- Renamed Environment Variables
MAVEN_PROJECT_BRANCH
->VERSIONING_GIT_BRANCH
MAVEN_PROJECT_TAG
->VERSIONING_GIT_TAG
- Renamed Maven Parameters
-Dproject.branch
->-Dgit.branch
-Dproject.tag
->-Dgit.tag
- Removed Maven Parameters
-DgitVersioning
- disable the extension by a parameter is no longer supported
- Renamed Provided Project Properties
project.branch
->git.branch
project.tag
->git.tag
project.commit
->git.commit