Release Notes - Maven - Version 3.9.0
Sub-task
- [MNG-7019] - Notify also at start when profile is missing
- [MNG-7447] - Several Improvements by using Stream API
Bug
- [MNG-5222] - Maven 3 no longer logs warnings about deprecated plugin parameters.
- [MNG-6965] - Extensions suddenly have org.codehaus.plexus:plexus-utils:jar:1.1 on their classpath
- [MNG-7055] - Using MINSTALL/DEPLOY 3.0.0-M1+ does not write plugin information into maven-metadata.xml
- [MNG-7106] - VersionRange.toString() produces a string that cannot be parsed with VersionRange.createFromVersionSpec() for same lower and upper bounds
- [MNG-7131] - maven.config doesn't handle arguments with spaces in them
- [MNG-7160] - Extension And Classloaders: difference of result given extension types
- [MNG-7316] - REGRESSION: MavenProject.getAttachedArtifacts() is read-only
- [MNG-7352] - org.apache.maven.toolchain.java.JavaToolchainImpl should be public
- [MNG-7413] - Fix POM model documentation confusion on report plugins, distribution repository and profile build
- [MNG-7425] - Maven artifact downloads sometimes result in empty zip files in local repository
- [MNG-7432] - [REGRESSION] Resolver session contains non-MavenWorkspaceReader
- [MNG-7433] - [REGRESSION] Multiple maven instances working on same source tree can lock each other
- [MNG-7441] - Update Version of (optional) Logback to Address CVE-2021-42550
- [MNG-7448] - Don't ignore bin/ otherwise bin/ in apache-maven module cannot be readded
- [MNG-7459] - Revert MNG-7347 (SessionScoped beans should be singletons for a given session)
- [MNG-7471] - Resolver 1.8.0 introduces binary breakage in plugin using Resolver
- [MNG-7487] - Fix deadlock during forked lifecycle executions
- [MNG-7493] - [REGRESSION] Resolving dependencies between submodules fails
- [MNG-7504] - Warning about unknown reportPlugins parameters for m-site-p are always generated
- [MNG-7511] - Ensure the degreeOfConcurrency is a positive number in MavenExecutionRequest
- [MNG-7515] - Cannot see a dependency tree for apache-maven module
- [MNG-7529] - Maven resolver makes bad repository choices when resolving version ranges
- [MNG-7545] - Multi building can create bad files for downloaded artifacts in local repository
- [MNG-7563] - REGRESSION: User properties now override model properties in dependencies
- [MNG-7564] - Potential NPE in MavenMetadataSource
- [MNG-7568] - [WARNING] The requested profile "ABCDEF" could not be activated because it does not exist.
- [MNG-7578] - Building Linux image on Windows impossible (patch incuded)
- [MNG-7600] - LocalRepositoryManager is created too early
- [MNG-7606] - Maven 3.9.0-SNAPSHOT cannot build Maven 4.0.0-SNAPSHOT
- [MNG-7621] - Parameter '-f' causes ignoring any 'maven.config' (only on Windows)
- [MNG-7624] - Plugins without non-mandatory goalPrefix are now logging incomplete info
- [MNG-7637] - Possible NPE in MavenProject#hashCode()
- [MNG-7644] - Fix version comparison where .X1 < -X2 for any string qualifier X
- [MNG-7648] - Generated model reader is not setting location information
- [MNG-7672] - Aggregate goals executed in a submodule forks the whole reactor
New Feature
- [MNG-3655] - Allow multiple local repositories
- [MNG-6270] - Store snapshots in a separate local repository
- [MNG-7193] - Introduce MAVEN_ARGS environment variable
- [MNG-7353] - Add support for "mvn pluginPrefix:version:goal"
- [MNG-7391] - Add MojoExecution strategy and runner required by Maven Build Cache Extension
- [MNG-7454] - Include resolver-transport-http in Maven
- [MNG-7457] - Warn about deprecated plugin Mojo
- [MNG-7464] - Warn about using read-only parameters for Mojo in configuration
- [MNG-7468] - Unsupported plugins parameters in configuration should be verified
- [MNG-7486] - Create a multiline message helper for boxed log messages
- [MNG-7612] - Chained Local Repository
Improvement
- [MNG-6609] - Profile activation by packaging
- [MNG-6826] - Remove condition check for JDK8+ in FileSizeFormatTest
- [MNG-6972] - Allow access to org.apache.maven.graph
- [MNG-7068] - Active dependency management for Google Guice/Guava
- [MNG-7350] - Introduce a factory for ModelCache
- [MNG-7401] - Make MavenSession#getCurrentProject() using a thread local
- [MNG-7438] - add execution id to "Configuring mojo xxx with basic configurator" debug message
- [MNG-7445] - to refactor some useless code
- [MNG-7463] - Improve documentation about deprecation in Mojo
- [MNG-7474] - SessionScoped beans should be singletons for a given session
- [MNG-7476] - Display a warning when an aggregator mojo is locking other mojo executions
- [MNG-7478] - Improve transport selection for resolver
- [MNG-7501] - display relative path to pom.xml
- [MNG-7520] - Simplify integration of Redisson and Hazelcast for Maven Resolver
- [MNG-7547] - Simplify G level metadata handling
- [MNG-7561] - DefaultVersionRangeResolver should not try to resolve versions with same upper and lower bound
- [MNG-7590] - Allow configure resolver by properties in settings.xml
- [MNG-7608] - Make Resolver native transport the default in Maven
- [MNG-7614] - Maven should translate transport configuration fully to resolver transports.
- [MNG-7619] - Maven should explain why an artifact is present in local repository
- [MNG-7645] - Implement some #toString() methods
- [MNG-7651] - Simplify and document merge of maven.config file and CLI args
- [MNG-7658] - CI-friendly versions should only come from/rely on user properties
- [MNG-7666] - Update default binding and lifecycle plugin versions
Task
- [MNG-6399] - Lift JDK minimum to JDK 8
- [MNG-7452] - Remove JDK7 run on Maven 3.9.X Branch
- [MNG-7466] - Align Assembly Descriptor NS versions
- [MNG-7513] - Address commons-io_commons-io vulnerability found in maven latest version
- [MNG-7523] - Back port MAVEN_ARGS to Apache Maven 3.9.0
- [MNG-7556] - Clean up notion between user properties and system properties
- [MNG-7618] - Use goalPrefix instead of artifactId to display mojos being executed
- [MNG-7634] - Revert MNG-5982 and MNG-7417
- [MNG-7636] - Partially revert MNG-5868 to restore backward compatibility (see MNG-7316)
Dependency upgrade
- [MNG-6878] - Upgrade Guice to 4.2.3
- [MNG-7247] - Upgrade Maven Resolver to 1.7.2
- [MNG-7453] - Upgrade Maven Resolver to 1.8.0
- [MNG-7488] - Upgrade SLF4J to 1.7.36
- [MNG-7489] - Upgrade JUnit to 4.13.2
- [MNG-7491] - Update parent POM to 36
- [MNG-7499] - Upgrade Maven Resolver to 1.8.1
- [MNG-7502] - Upgrade Guice to 5.1.0
- [MNG-7506] - Upgrade Maven Wagon to 3.5.2
- [MNG-7522] - Upgrade Maven Resolver to 1.8.2
- [MNG-7530] - Upgrade Apache Maven parent POM to version 37
- [MNG-7586] - Update Maven Resolver to 1.9.2
- [MNG-7613] - Upgrade Apache Maven parent POM to version 38
- [MNG-7641] - Upgrade Maven Wagon to 3.5.3
- [MNG-7668] - Update Maven Resolver to 1.9.4
- [MNG-7675] - Update Maven Parent to 39