All notable changes to this project will be documented in this file.
-
Fixed issue with distribution management repositories losing authentication settings (Riesen, Stefan <[email protected]>)
-
Explicitely define m-jar-p version (Hervé Boutemy <[email protected]>)
-
Added Astro based documentation (WIP)
-
Additional fixes for distributionManagement usage inside tiles
-
Fix NPE in Repository Policy retreival
-
Fix distribution management snapshot repository load (Ricardo Caldeira <[email protected]>)
-
Drop maven-compat and update dependendies
-
Switched to using Maven 3.9.5
-
Updated groovy to 4.0.15
-
Updated gmavenplus-plugin to 3.0.2
-
Updated maven-enforcer-plugin to 3.4.1
-
Updated maven-invoker-plugin to 3.6.0
-
Updated maven-plugin-plugin to 3.9.0
-
Updated maven-release-plugin to 3.0.1
-
Updated maven-scm-plugin to 2.0.1
-
Updated maven-source-plugin to 3.3.0
-
Updated maven-surefire-plugin to 3.1.2
-
Enablerd Reproducible Builds (Hervé Boutemy <[email protected]>)
-
Add missing model version (Guillaume Nodet <[email protected]>)
-
Updated maven-plugin-annotations to 3.8.2
-
Updated maven-filtering to 3.3.1
-
Updated mockito-core to 4.11.0
-
Updated maven-gpg-plugin to 3.1.0
-
Updated maven-invoker-plugin to 3.5.1
-
Updated maven-scm-plugin to 2.0.0
-
Updated maven-enforcer-plugin to 3.3.0
-
Updated maven-release-plugin to 3.0.0
-
Updated maven-compiler-plugin to 3.11.0
-
Updated sisu-maven-plugin to 0.9.0.M2
-
Updated maven-plugin-plugin to 3.8.2
-
Updated maven-surefire-plugin to 3.1.0
-
Updated groovy to 4.0.12 and fixed minor static analysis bug
-
Updated gmavenplus-plugin to 2.1.0
-
Updated groovy to 4.0.7
-
Updated slf4j to 2.0.6
-
Updated maven-plugin-annotations to 3.7.0
-
Adds support for Maven 4 (Tamás Cservenák <[email protected]>)
-
Removed a lot of legacy dependencies / cleanup (Tamás Cservenák <[email protected]>)
-
Updated Groovy to 4.0.4
-
Updated maven-filtering from 3.2.0 to 3.3.0
-
Updated maven-invoker-plugin to 3.3.0
-
Upgraded Groovy to Apache Groovy 4.0.0
-
Use maven version 3.8.4
-
Updated internal build dependendencies
-
Updated github actions to also run on pull requests
-
Fixed possible NullPointerException on SNAPSHOT DistributionManagement Url
-
Updated README for Kotlin usage
-
Updated Groovy to 3.0.8
-
Updated gmavenplus-plugin
-
Updated mockito to 3.8.0
-
Switch to github actions for CI builds
-
#118 - Fixes tile ordering for embedded/nested <tiles>
-
#116 - Copy distribution management URLs if possible.
Security update for Groovy 3.0.7.
-
Updated Groovy to 3.0.7
-
Updated maven-release-plugin
-
Updated maven-surefire-plugin
-
Updated gmavenplus-plugin
-
Ewps! We missed some changes!
-
Updated Groovy version from 2.5.8 to 3.0.4
-
Updated maven-enforcer to 3.0.0-M3
-
Updated gmavenplus-plugin to 1.9.0
-
Updated maven-source-plugin to 3.2.1
-
Updated test tiles to include the modelVersion ( upcoming maven likes to have that present )
-
Switched rewritten execution id to use underscores
-
Updated build dependencies
-
Improved error messages when target tile is missing - Rob Bygrave
-
Added support explicit merging of tiles execution configuration - Rob Bygrave
-
Reintroduced tiles-keep-id as attribute which was removed by mistake - brian.vella
-
Added threadSafe annotation settings
-
Fail tile validation if <build><extensions> is present
-
Fail tile validation when a plugin includes <extensions>
-
Allow a version property that evaluates as empty so it can be replaced by a plugin (potentially in a tile) later.
-
Filter tiles in reactor during tile injection to avoid using unfiltered properties
-
Resolve tile dependency version to the non-range value of it’s lower-bound when injecting tiles as dependencies
-
Remove unneeded org.codehaus.plexus.logging.Logger re-definition.
-
Fixed rewriting execution ids and rewrite them in profiles as well
-
Load tile from repositories declared in pom / settings instead of always from central
-
Inject tiles as dependencies. This is purely optional, requires .mvn/extensions.xml with the gav of this plugin to work.
-
Evaluate property substitution when processing pom parents and the applyBefore configuration directive.
-
Perform property substitution in version numbers before merging tiles to pickup CI Friendly version numbers.
-
Copy reporting plugins when copying tile for merging.
-
m2e LifecycleMapping support in tiles (#9)
-
Improved compatibility when tiles are applied to specific parent
-
Fixed interpolation of env.XXX properties
-
Updated to Groovy 2.4.6
-
Optionally apply tiles to specific parent. By default, tiles are injected as parents of the primary Maven Project, the
applyBefore
configuration property can now be used to define a partial GAV ( groupId:artifactId ) to declare a injection target. -
Reset source/test directories after processing tiles to detect assignment inside tiles.
-
Added Gittr Chat at https://gitter.im/repaint-io/maven-tiles
-
Restore original ModelProcessor after processing ( fixes issues with M2E and Eclipse )
-
Copy groupId/version from original parent if inherited (Fixes #47)
-
Optionally supress title plugin’s execution id rewriting (Fixes #12)
Thanks to contributions from Erwin Tratar for making this release.
-
Clear collected tiles before processing each project in reactor.
Removes warning for duplicate tiles in reactor builds and fixes bad behaviour if projects in reactor don’t use the same set of tiles.
-
When resolving tile artifacts, we were only resolving the .xml tile artifact and not it’s .pom artifact as well, this caused resolution issues with the flatten plugin ( among others ) when the artifact didn’t exist in your local
`~/.m2/repository
.
-
If something is trying to use the MavenBuilder, because we remain in the lifecycle they were requesting the tile parents and because they were of type "tile" they were not being accepted by plugins that wanted "pom" parents (which is perfectly reasonable). This particularly affected the flatten plugin. There is a change in the smack-talk we introduce to ensure that tile models are returned as pom models.
-
Mixed in tiles were not appearing as distribution management early enough, so now after the resolution of a project’s model, we check if there is a distribution management section and insert it into the MavenProject so the Deploy plugin can pick it up. Much like the deploy plugin does for supporting overrides.
-
GAV tile references can now specify the artifact type to use ( for legacy tiles, or those deployed via other means ) in the form of
groupId:artifact:type:versionrange
. -
Added support for inherited version/groupId
-
Maven Tiles Lifecycle now prevents execution with submodules, this is to prevent breaking support of -pl, -am, and -amd usage from Apache Maven. This also serves to drive one away from parents, forcing one mix in the tiles at the artifact level.
-
The
attach-tile
goal now correctly attaches the tile as the primary artifact for atile
packaged project, and merely as atile' artifact with a `.xml
extension for other packaging types. -
GAV specification now looks for a
.xml
artifact with an empty classifier or one with a specific extension/classifier. -
Updated to use Groovy 2.4.1
-
GAV tile references can now specify the artifact type to use ( for legacy tiles, or those deployed via other means ) in the form of
groupId:artifact:type:versionrange
. -
Added support for inherited version/groupId
-
The
attach-tile
goal now understands a newfiltering
configuration property which will enable standard Maven resource processing for your tile. This enables refering to such things as@project.version@
which will be resolved at install/deploy time. This is primarily useful for use in conjunction with including the tiles plugin in an existing project.
-
When a tile is merged into the build, any plugin execution id’s defined now get prepended with the tile’s GAV reference. This allows for better understanding of what’s happening in your build when looking at a build log file. Very useful for debugging/diagnosing oddities with your build process.
-
The logging around what tiles are being injected into your project as parents has been cleaned up and improved.
-
We’ve removed the copying/updating of the
<parent>
in the effective POM Model - this was causing issues with IntelliJ projects that contained both the tile, and an artifact using that tile. Due to the maven server being reused over all IntelliJ Modules, and that IntelliJ assumes a parents artifact type is alwayspom
and nottile
, a circular reference was being reported to the IDE. As the effective model has already been resolved, this change does not actually effect the build process at all. -
<distributionManagement>
wasn’t being merged from tile models at all. This was preventing the implementation of a standard 'release' style tile.
-
When 1.4 switched to the new 'parental guidance' model of applying tiles, we unfortunately missed a critical step of applying activated and deactivate profiles, as well as the superpom. This meant that all unconfigured plugins simply….. vanished.
-
As part of the above change, a problem dating back to 1.3 where
<configuration>
blocks that were not inside a plugins<execution>
block were not correctly being applied to the plugin.
-
The Maven Tiles Plugin now supports
<pluginManagement>
and<profiles>
declared inside of a tile.
-
Apache Maven configuration parameter defintions for IDE support. This prevents IDEs such as IntelliJ IDEA from reporting
<tiles>
as being unexpected content.