Release Notes - Maven 3.x
Maven 3.0.4 Release Notes
Maven 3.0.4 is a maintenance release to address various regressions/bugs and to deliver other minor improvements. The new version 3.0.4 is a recommended update for anybody currently using Maven 3.0.x.
The full list of changes can be found in our issue management system, and is reproduced below.
Known Incompatibilities with Maven 2
Please refer to the following compatibility notes before reporting any issues regarding changed build behavior in Maven 3.x.
Release Notes - Maven - Version 3.0.4 (since 3.0.3 only)
Bug
- [MNG-4792] - Preemptive authentication doesn't work
- [MNG-5064] - mvn -nsu (--no-snapshot-updates) should not download snapshots (and break local builds)
- [MNG-5096] - exclusion on dependency with typetest-jar/type doesn't work in maven 3
- [MNG-5113] - NullPointerException on javadoc site generation
- [MNG-5131] - Wrong encoding for encrypted passwords
- [MNG-5135] - Regression: in some cases aggregator mojo is unable to resolve dependencies with custom packaging
- [MNG-5137] - Reactor resolution does not work for forked multi module builds
- [MNG-5149] - DefaultArtifactRepositoryFactory.createArtifactRepository overload w/ layoutId passes wrong (repo) id
- [MNG-5153] - ModelMerger omits relativ path
- [MNG-5155] - 'inherited' flag of report sets ignored.
- [MNG-5157] - NPE stemming from DefaultModelBuilder.containsCoordinates
- [MNG-5163] - MavenProject.getPluginRepositories misimplemented
- [MNG-5164] - Odd name of central in superpom
- [MNG-5165] - Problem with scp transport (wagon-maven-plugin 1.0-beta-3, Maven 2.2.1, Ubuntu 11.04)
- [MNG-5192] - prevent ConcurrentModificationException in parallel mode -Tx when project have errors
- [MNG-5221] - Default version of m-site-p does not work (no reports)
- [MNG-5225] - The default version of the maven-site-plugin as defined in the site-lifecycle must be 3.x
- [MNG-5224] - REGRESSION: Injected Settings in a Mojo are missing the profiles from settings.xml
Improvement
- [MNG-4112] - Set property containing the currently executing maven version.
- [MNG-5073] - ProjectBuilder.build(File,ProjectBuildingRequest) returns null project if dependency version info is missing
- [MNG-5076] - Improve SEO of documentation of lifecycle.xml
- [MNG-5119] - improve site organization of core components
- [MNG-5134] - Standard documentation for build-in properties
- [MNG-5141] - Make MojoExecutor.ensureDependenciesAreResolved public
- [MNG-5151] - use CNAME or repo to provide more stability
- [MNG-5152] - upgrade wagon to the final 1.0 version
- [MNG-5158] - Make loading of extensions from lib/ext more robust with regard to existence of ext directory
- [MNG-5159] - Extend validation of settings.xml to check for uniqueness of id elements
- [MNG-5175] - replace wagon http lightweight with wagon http 2.1
- [MNG-5200] - upgrade plugin versions in super pom
- [MNG-5201] - upgrade aether to 1.13 and sisu to 2.3.0
Task
- [MNG-5046] - Remove $Id$ from sources
Test
- [MNG-5114] - Handling unrecognized version qualifiers
Wish
- [MNG-5118] - add aggregated javadoc
Maven 3.0.3 Release Notes
Maven 3.0.3 is a maintenance release to address various regressions/bugs and to deliver other minor improvements. The new version 3.0.3 is a recommended update for anybody currently using Maven 3.0.x.
The full list of changes can be found in our issue management system, and is reproduced below.
Known Incompatibilities with Maven 2
Please refer to the following compatibility notes before reporting any issues regarding changed build behavior in Maven 3.x.
Release Notes - Maven - Version 3.0.3 (since 3.0.2 only)
Bug
- [MNG-4551] - List parameter in a mojo has strange behaviour
- [MNG-4956] - Cygwin mvn script modifies CLASSPATH environment variable
- [MNG-4962] - MavenProject.getParent fails to build when parent POM, in reactor, references BOM also in reactor
- [MNG-4963] - [regression] Parent POM not downloaded when settings define global mirror and one snapshot repo but no other release repository
- [MNG-4973] - [regression] Build extensions are invisible to plugins in multi module build
- [MNG-4975] - [regression] plugin executions injected from profile run before instead of after existing executions in the POM
- [MNG-4982] - [regression] Cycle between transitive dependencies causes bad effective dependency scope
- [MNG-4987] - [regression] LATEST, RELEASE or SNAPSHOT version picked from wrong repository when resolution order does not match timestamp order
- [MNG-4990] - RepositorySystem#resolve(request) uses two different local repositories
- [MNG-4991] - LegacyRepositorySystem#injectProxy(repositories, proxies) doesn't evaluate non-proxy hosts
- [MNG-5000] - [regression] child distributionManagment.site.url not correct in a flat directory layout when child's artifactId doesn't match its module name
- [MNG-5003] - MavenPluginManager serves m2e partially initialized mojo descriptors in some cases
- [MNG-5005] - bin/mvn contains platform specific echo when on Mac OSX and JAVA_VERSION envvar is set
- [MNG-5006] - [regression] Resolution of parent POMs for dependency using version range does not consider all configured repositories
- [MNG-5009] - StackOverflowError in DefaultProjectBuilder.build when module points at current aggregator POM
- [MNG-5014] - [regression] MavenProject.getParent().isExecutionRoot() not properly set
- [MNG-5019] - [regression] String-based component lookups performed by report mojos fail with ClassCastException
- [MNG-5023] - Wrong calculation of Build Total time
Improvement
- [MNG-3575] - Allow hexadecimal parameters
- [MNG-4971] - Display maven home in version info
- [MNG-4984] - Simplify drop in of 3rd party extensions for Maven core
- [MNG-4988] - API to calculate execution plan without full mojo execution configuration
- [MNG-4992] - Allow to configure plugin parameters of type java.util.Properties just like a map
- [MNG-5011] - Allow to configure array/collection type plugin parameters via system properties
- [MNG-5012] - Allow to configure array-typed plugin parameters from expressions yielding collections and vice versa
- [MNG-5013] - Allow to condense configuration of plugin parameter beans that commonly require only one value
- [MNG-5020] - JAVA_HOME auto discovery
- [MNG-5028] - Obey generics in plugin collection parameters when populating them
- [MNG-5033] - Allow to inline collection/array items within plugin configuration
Task
- [MNG-5024] - Update default plugin versions
Maven 3.0.2 Release Notes
Maven 3.0.2 is a maintenance release to address various regressions/bugs and to deliver other minor improvements. The new version 3.0.2 is a recommended update for anybody currently using Maven 3.0.
The full list of changes can be found in our issue management system, and is reproduced below.
Known Incompatibilities with Maven 2
Please refer to the following compatibility notes before reporting any issues regarding changed build behavior in Maven 3.x.
Release Notes - Maven - Version 3.0.2 (since 3.0.1 only)
Bug
- [MNG-4840] - Prerequisites is not working on m3
- [MNG-4913] - [regression] User properties override equally named POM properties of transitive dependencies
- [MNG-4915] - Versions in pom.xml are not checked for invalid characters
- [MNG-4918] - MavenProject#clone() doubles active profiles
- [MNG-4919] - Plugin execution contributed by lifecycle mapping gets lost when same goal is bound multiple times
- [MNG-4923] - [regression] java.lang.ClassNotFoundException: org.apache.maven.artifact.ArtifactStatus
- [MNG-4925] - Mismanagement of container lookup realm can cause type incompatibilities for plugins looking up components by string
- [MNG-4933] - With a resource directory as . maven raise an java.lang.StringIndexOutOfBoundsException:217
- [MNG-4941] - PluginDescriptorBuilder doesn't populate expression/default-value fields for mojo parameters
- [MNG-4952] - [regression] RELEASE field of repository metadata is not updated upon repeated deployments
- [MNG-4955] - [regression] Outdated remote snapshots are preferred over locally installed snapshots
- [MNG-4960] - [regression] Make-like reactor mode does not build selected project when resuming from one of its prerequisites
- [MNG-4966] - Preserve double slashes in the scm connection url - identifies absolute repository paths for mercurial
Improvement
- [MNG-4912] - Use of raw type should be ComparableArtifactVersion
- [MNG-4916] - Poor ProjectBuilder.build performance for projects with unresolvable extension plugins
- [MNG-4922] - ExecutionEvent give on the exception encountered (when having mojoFailed)
- [MNG-4926] - ExecutionEvent give on the exception encountered (when having projectFailed , forkedProjectFailed)
- [MNG-4944] - Include JRE vendor in version info
- [MNG-4950] - Javadoc improvements to DefaultSettingsWriter/Reader
- [MNG-4953] - Issue a warning when a system-scope dependency refers to the project basedir
New Feature
- [MNG-4936] - Allow to better monitor and adjust a Maven build during CI
- [MNG-4937] - Allow the platform scripts to avoid loading mavenrc content
Task
- [MNG-4945] - Remove mergeId from public POM
- [MNG-4957] - Emit validation warning when project version uses irregular SNAPSHOT version string
- [MNG-4959] - Update default plugin versions
Maven 3.0.1 Release Notes
Maven 3.0.1 is a maintenance release to address various regressions/bugs and to deliver other minor improvements. The new version 3.0.1 is a recommended update for anybody currently using Maven 3.0.
The full list of changes can be found in our issue management system, and is reproduced below.
Known Incompatibilities with Maven 2
Please refer to the following compatibility notes before reporting any issues regarding changed build behavior in Maven 3.x.
Release Notes - Maven - Version 3.0.1 (since 3.0 only)
Bug
- [MNG-4850] - [regression] several elements of server configuration in settings.xml are not honoured
- [MNG-4858] - NullPointerException if goal name is malformed
- [MNG-4864] - npe when transferring artifacts
- [MNG-4866] - DefaultLegacySupport leaks MavenSession instances in some cases
- [MNG-4867] - incorrect namespace in settings.xml
- [MNG-4874] - The latestVersion value isn't updated for local installs
- [MNG-4877] - Regression: Deploy to SCP with privateKey fails - privateKey and passphrase gets lost
- [MNG-4883] - [regression] Dependency resolution does not fail for artifact with over-constrained version ranges
- [MNG-4884] - Guice provision errors
- [MNG-4892] - Use of --log-file doesn't capture all output, e.g. from maven-antrun-plugin
- [MNG-4895] - Plugins depending on 3rd party JARs that contain the Maven API can't be configured/run due to type incompatibilities
- [MNG-4900] - "Unresolveable build extension" when using shade plugin and repositories in profile
Improvement
- [MNG-4860] - Allow management of project building request kept inside MavenProject instances
- [MNG-4891] - Improve robustness of snapshot dependency resolution in case a remote repo accidently uses the id "local"
- [MNG-4896] - Help for -pl option does not include use of comma-sep, also more than one -pl does not work or complain
- [MNG-4904] - Make MavenExecutionResult.getTopologicallySortedProjects() return empty list instead of null
- [MNG-4907] - Wrong error message when relativePath wrong
- [MNG-4909] - Emit warning when dependency with scope import but inproper type is declared
- [MNG-4910] - Use BeanConfigurator for configuration sub-elements
Task
- [MNG-4902] - Update default plugin versions
- [MNG-4903] - Update to Wagon 1.0-beta-7
Maven 3.0 Release Notes
Maven 3 aims to ensure backward compatibility to the extent possible, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
Users that intent to use the new parallel build feature are strongly advised to read the Guide on Parallel Builds to learn about potential ramifications.
The full list of changes can be found in our issue management system, and is reproduced below.
Known Incompatibilities with Maven 2
Please refer to the following compatibility notes before reporting any issues regarding changed build behavior in Maven 3.
Release Notes - Maven - Version 3.0 (since 3.0-beta-3 only)
Bug
- [MNG-4592] - Snapshot artifacts that could not be downloaded due to communication problems are "blacklisted" for a day by default.
- [MNG-4751] - Snapshot version not resolved for version range
- [MNG-4785] - NPE in dependency resolution code for TC plugin
- [MNG-4786] - [regression] Ant-based mojo using maven-script-ant:2.1.0+ cause NPE
- [MNG-4788] - [regression] Appassembler Maven Plugin doesn't work like as it should
- [MNG-4789] - [regression] Difference in compile scope dependency resolution
- [MNG-4791] - [regression] POM artifacts passed into MavenProjectBuilder.buildFromRepository() are no longer resolved
- [MNG-4793] - Unable to obtain archiver for extension 'zip'
- [MNG-4794] - 'org.apache.maven.plugins:maven-install-plugin:2.3.1'. A required class is missing: org.codehaus.plexus.digest.Digester
- [MNG-4795] - [regression] Dependencies in forked reactor projects are not resolved when aggregator bound to lifecycle forks
- [MNG-4800] - Conflict resolution does not pick sub tree of nearest dependency if farther conflicting dependency has wider scope
- [MNG-4810] - Maven cannot build if loaded in a classloader that is not backed by a real JAR file / classpath
- [MNG-4811] - Custom Maven Plugin regression in Maven 3.x, custom ComponentConfigurator causes infinite loop
- [MNG-4814] - Eary dependency resolution attempts for reactor projects prevent their later resolution from the reactor
- [MNG-4818] - NPE in legacy.DefaultWagonManager.getArtifact
- [MNG-4829] - [regression] Checksum failures aren't logged
- [MNG-4832] - Maven 3 Regression: Missing constructor of org.codehaus.plexus.component.configurator.converters.special.ClassRealmConverter
- [MNG-4834] - [regression] MavenProject.getParent() ignores configured repositories
- [MNG-4836] - Incorrect recursive expression cycle errors (update plexus-interpolation)
- [MNG-4837] - Interpolation error due to cyclic expression for one of the POM coordinates gets needlessly repeated
- [MNG-4842] - [regression] Repositories discovered in dependency POMs override repositories configured for original resolution request of POM
- [MNG-4845] - [regression] MavenProject.getDependencyArtifact() returns artifacts without version for dependency with version range
Improvement
- [MNG-4452] - Metadata for snapshots should include classifier
- [MNG-4787] - Allow class realm manager delegates to alter public part of Maven core realm
- [MNG-4815] - (3.0-RC1) Maven Java API does not give nice error messages when improperly configured
- [MNG-4824] - multiple failures need additional whitespace
- [MNG-4825] - Relative path errors could be more explicit
New Feature
- [MNG-4484] - Create a Maven API for component configuration
Task
- [MNG-4805] - Update default plugin versions used for built-in lifecycle mappings
- [MNG-4807] - Extend core artifact filter to exclude relocated Guice-based Plexus shim
Wish
- [MNG-4796] - add a warning when profiles.xml is used (Maven 2) or detected (Maven 3)
Maven 3.0-beta-3 Release Notes
Maven 3 aims to ensure backward compatibility to the extent possible, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
Users that intent to use the new parallel build feature are strongly advised to read the Guide on Parallel Builds to learn about potential ramifications.
The full list of changes can be found in our issue management system, and is reproduced below.
Release Notes - Maven - Version 3.0-beta-3 (since 3.0-beta-2 only)
Bug
- [MNG-2686] - POM dependency scope auto-downgrades from provided to test
- [MNG-4690] - Transitive dependency lost when included another dependency
- [MNG-4745] - [regression] Maven does not check for plugin updates, even if forced via -U
- [MNG-4755] - Version ranges cannot be resolved against mirror if a local artifact is present
- [MNG-4761] - Plugin-level dependency scope causes some plugin classpaths to be incorrect
- [MNG-4765] - Failing to determine java version for profile....
- [MNG-4767] - Regression in parsing command-line arguments including variables
- [MNG-4768] - Depending on declaration order, nearest matching version does not win when version range is involved in conflict
- [MNG-4769] - Regression: enabled flag for central cannot be overriden
- [MNG-4771] - [regression] Plugin prefix resolution ignores enabled flags on repository
- [MNG-4772] - [regression] Plugin version resolution ignores enabled flags on repository
- [MNG-4773] - Stack trace printed from MavenProject.getParent
- [MNG-4775] - Outdated NOTICE.txt
- [MNG-4776] - NPE during build from parent but not from child
- [MNG-4779] - NullPointerException thrown during dependency resolution when dependency with range occurs more than once in the dirty tree
- [MNG-4781] - Can't deploy to Nexus staging repository
Improvement
- [MNG-4749] - Move from Plexus to Guice as IoC container
- [MNG-4782] - Automatically dump stack trace in case of internal Maven error
New Feature
- [MNG-4756] - Aether integration
Maven 3.0-beta-2 Release Notes
Maven 3 aims to ensure backward compatibility, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
Users that intent to use the new parallel build feature are strongly advised to read the Guide on Parallel Builds to learn about potential ramifications.
The full list of changes can be found in our issue management system, and is reproduced below.
Release Notes - Maven - Version 3.0-beta-2 (since 3.0-beta-1 only)
Bug
- [MNG-1803] - Provide line number information when there are errors processing a pom.xml
- [MNG-4615] - [regression] @required plugin parameters are not validated
- [MNG-4643] - [regression] Transitive dependency not available due to dependency POM erroneously rejected as invalid
- [MNG-4648] - NullPointerException thrown from DefaultPluginRealmCache#pluginHashCode method if project-level plugin dependency misses version
- [MNG-4651] - Site 3.x plugin broken due to api change
- [MNG-4666] - [regression] Plugins depending on plexus:plexus-container-default get broken runtime classpath
- [MNG-4677] - [regression] Plugin configuration incorrectly inherited from parent pom
- [MNG-4678] - CLI: AbstractConsoleDownloadMonitor, BatchModeDownloadMonitor output download progress to STDOUT
- [MNG-4679] - [regression] command line option "-update-snapshots" does not work for dependency:copy-dependencies
- [MNG-4682] - Exception upon build failure in parallel builds
- [MNG-4684] - distributionManagment section in profiles do not override default one (maven 3 regression)
- [MNG-4695] - Missing Error during pom validation: "You cannot have two plugin executions with the same (or missing) id/ elements."
- [MNG-4696] - [regression] MavenProject.getDependencyArtifacts() misses elements
- [MNG-4717] - Repository Ids containing ":" will lead to checksum errors on Windows machines
- [MNG-4718] - [regression] Missing Class in 3.0-beta-1: org.apache.maven.project.artifact.AttachedArtifact
- [MNG-4729] - Mirrors and servers not accessed properly by plugin on a build
- [MNG-4738] - DefaultArtifactResolver forks non-daemon threads
- [MNG-4740] - Maven hangs with big aggregators with lots of inter-modules dependencies
- [MNG-4747] - Javaagent not usable since 3.0-alpha
- [MNG-4750] - [regression] MavenProject.getDependencyArtifacts() aren't resolved
Improvement
- [MNG-4642] - Mojos need some way to indicate support of multithreading
- [MNG-4693] - add a dependency graph with image map to navigate easily to modules
- [MNG-4732] - Version string validation
- [MNG-4744] - Validate coordinates of dependency exclusions
Task
- [MNG-4658] - Relax validation of repository ids and only warn upon conflict with "local"
- [MNG-4664] - Minor patches needed to run Maven3 with the replacement Guice-Plexus container
- [MNG-4697] - Deprecate ununsed CLI options for plugin registry
- [MNG-4725] - Extend core artifact filter to exclude Guice-based Plexus shim
Maven 3.0-beta-1 Release Notes
Maven 3 aims to ensure backward compatibility, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
Noteworthy changes in this release are the revision of version range to no longer include snapshot versions unless explicitly matched by a range boundary (cf. [MNG-3092]) and the support for parallel builds (cf. [MNG-3092]). Users that intent to use this feature are strongly advised to read the Guide on Parallel Builds to learn about potential ramifications.
The full list of changes can be found in our issue management system, and is reproduced below.
Release Notes - Maven - Version 3.0-beta-1 (since 3.0-alpha-7 only)
Bug
- [MNG-1751] - merging metadata doesn't fail when timestamp is in the future
- [MNG-2103] - Inheritance of plugin overrides that of execution
- [MNG-2222] - dependency to dependency without source code fails
- [MNG-2276] - profile activation by property doesn't work with properties defined in settings.
- [MNG-2994] - Snapshot repositories are not checked when using ranges
- [MNG-3092] - Version ranges with non-snapshot bounds can contain snapshot versions
- [MNG-3133] - DefaultModelInheritence::appendPath assumes it is operating on interpolated/literal paths
- [MNG-3470] - Build does not fail on corrupted POM even with checksumPolicy=fail
- [MNG-3477] - Authentication failures on dependency download aren't reported
- [MNG-3529] - mvn -Da=" " throws an excepltion
- [MNG-3616] - Null Pointer Exception when mirrorOf missing from mirror in settings.xml
- [MNG-3700] - ModelUtils.clone doesn't clone plugin entries where inherited == false
- [MNG-4022] - Incorrect merge behavior using profile driven plugin configuration
- [MNG-4326] - Maven should not check snapshot repositories for dependencies in the reactor
- [MNG-4418] - Dependency resolution appears to misbehave if a remote repository uses the id "local"
- [MNG-4453] - [regression] Plugin versions defined in a lifecycle mapping are not respected
- [MNG-4555] - mvn archetype:generate -o (offline) still results in a "checking updates from central"
- [MNG-4580] - Plugin dependencies for module ignored when building from aggregator project using direct plugin invocation
- [MNG-4586] - Plugin prefix can't be resolved from plugin management if management entry is missing plugin version
- [MNG-4590] - [regression] System properties are no longer interpolated in imported POMs
- [MNG-4600] - [regression] Optional flag from dependency management applied to dependencies
- [MNG-4618] - maven-javadoc-plugin aggregate-jar fails with maven3 and multiple modules
- [MNG-4625] - Interpolation of settings.xml fails if an expression's value contains XML markup
- [MNG-4629] - [regression] POM validation fails upon non-existing system-scope dependency
- [MNG-4632] - Class loading is not thread-safe
Improvement
- [MNG-1701] - Validate that a plugin is not configured twice in the pom
- [MNG-2187] - Improve error message when the pom is encoded in the wrong charset
- [MNG-2741] - [regression] Meaningless error message: "Error transferring file"
- [MNG-3004] - Allow build lifecycle to execute projects in parallel
- [MNG-3779] - Improve error message when trying to execute mojo with no pom.xml
- [MNG-4162] - Removal of all reporting logic from the core of Maven
- [MNG-4194] - API to safely release of plugin realms
- [MNG-4591] - Enhance the download rate output to include downloaded file name
- [MNG-4610] - Bump maven-release-plugin to v2.0 in super POM
- [MNG-4619] - Issue warning in case parent.relativePath points at POM with different groupId/artifactId
- [MNG-4623] - model parsing errors can be less helpful in Maven 3
- [MNG-4628] - ReactorArtifactRepository is not setup soon enough for AbstractMavenLifecycleParticipant#afterProjectsRead
- [MNG-4634] - Allow custom lifecycles
Task
- [MNG-3917] - Complete the POM construction tests which will be the validation for the specification
Maven 3.0-alpha-7 Release Notes
Maven 3 aims to ensure backward compatibility, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
The full list of changes can be found in our issue management system, and is reproduced below.
Release Notes - Maven - Version 3.0-alpha-7 (since 3.0-alpha-6 only)
Bug
- [MNG-2281] - 1.0-beta-3 should be < 1.0-SNAPSHOT
- [MNG-4526] - [regression] Shade plugin includes too much (relative to 2.2.1)
- [MNG-4528] - [regression] mvn deploy ignores proxy settings
- [MNG-4529] - maven fails on IBM JDK 1.5.0 with exception IllegalAccessException: Field is final
- [MNG-4536] - Long build time - enforcer running too many times
- [MNG-4542] - StringSearchModelInterpolator concurrency problem
- [MNG-4543] - Cleanup tmp files created by DefaultWagonManager
- [MNG-4544] - Concurrent access to Maven internals involving active component collections is not thread-safe
- [MNG-4553] - Plugins artifact filtering should use full Artifact identification instead only ArtifactId
- [MNG-4554] - [regression] plugin updates are requested on every build regardless of policies
- [MNG-4561] - [regression] network settings are not applied to repositories from plugin dependencies
- [MNG-4562] - [regression] UnsupportedOperationException with Maven AndromMDA plugin
- [MNG-4564] - Location (and name) for settings-security.xml has changed in Maven 3
- [MNG-4570] - [regression] User/pass from settings.xml is not used during site:deploy
- [MNG-4571] - mvn deploy -DaltDeploymentRepository errors out
- [MNG-4574] - [regression] invoker:install uses wrong local repo path when settings.xml contains wildcard mirror
Improvement
- [MNG-3168] - Correct error message when project descriptor not found
- [MNG-4432] - reimplement parallel artifacts download
- [MNG-4464] - Improve handling of relative paths with backslashes
New Feature
- [MNG-1144] - List 2 or more maven goals in the defaultGoal of the POM.
Task
- [MNG-4541] - Extend class realm manager delegate to allow conditional behavior
Wish
- [MNG-4534] - implement a preferred order for POM elements
Maven 3.0-alpha-6 Release Notes
Maven 3 aims to ensure backward compatibility, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
The full list of changes can be found in our issue management system, and is reproduced below.
Release Notes - Maven - Version 3.0-alpha-6 (since 3.0-alpha-5 only)
Bug
- [MNG-2110] - ArtifactRepositoryLayout isn't extensible
- [MNG-3266] - maven-model RepositoryBase overrides equals() but not hashCode()
- [MNG-3610] - Endless loop with relocation jtds:jtds
- [MNG-4200] - Build fails on system without svn client
- [MNG-4379] - Properties defined in parent POM and used in systemPath element cause POM validation warnings and dependencies ignoration - compilation error
- [MNG-4465] - [regression] can't run mvn help:effective-settings when offline
- [MNG-4466] - Plugin Metaversion Compatibility
- [MNG-4469] - [regression] deploy:deploy-file fails with secured repository
- [MNG-4470] - [regression] Proxies are ignored during artifact deployment
- [MNG-4472] - [regression] Circular self-referential POM causes network access
- [MNG-4474] - [regression] Wagon manager does not respect instantiation strategy of wagons
- [MNG-4475] - Transitive Dependency Resolution silently fails if parent pom cannot be retrieved from repository
- [MNG-4482] - [regression] command line option "-update-snapshots" does not work for plugins/extensions
- [MNG-4488] - [regression] Parent POMs resolved from repository are validated in strict mode
- [MNG-4489] - [regression] Mirror/proxy/auth does not apply to repositories discovered in POMs of build extensions
- [MNG-4495] - mvnUpdate attempts to use a non-existent .cd directory
- [MNG-4500] - [regression] Maven checks for updates of timestamped snapshots
- [MNG-4509] - MAVEN_DEBUG_OPTS in mvnDebug.bat is set at the wrong place
- [MNG-4510] - NoSuchMethodError when using Maven 3
- [MNG-4511] - API incompatibility in MavenProjectBuilder (Maven-3)
- [MNG-4512] - [regression] Profile activation based on JDK version range fails if current version is close to range boundary
- [MNG-4518] - Profile activation based on JRE version misbehaves if java.version has build number
Improvement
- [MNG-2546] - Allow plugin executions in the "super-init" phase before reactor sorting of modules build order
- [MNG-3648] - Maven is too verbose in its output, obscuring actual messages
- [MNG-4492] - Integration test MNG1830 fails with GIT based forks
- [MNG-4494] - Custom repository layout should be able to participate in repository instance creation
- [MNG-4498] - Don't fail dependency resolution if one remote repo's metadata is broken
Task
- [MNG-1086] - Use the embedder in Maven's integration tests
- [MNG-3902] - Remove visibility MavenProjectBuilder#buildStandaloneSuperProject
Maven 3.0-alpha-5 Release Notes
Maven 3 aims to ensure backward compatibility, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
The full list of changes can be found in our issue management system, and is reproduced below.
Release Notes - Maven - Version 3.0-alpha-5 (since 3.0-alpha-4 only)
Bug
- [MNG-4450] - [regression] Stub project for missing dependency POMs is not properly created
- [MNG-4454] - Incomplete parent element causes NPE
- [MNG-4459] - [regression] Effective settings as visible to plugins contain plain text passwords
- [MNG-4461] - [regression] No transfer progress during artifact deployment
Improvement
- [MNG-4440] - error message should clearly indicate the module that failed, and how to continue
- [MNG-4456] - Deprecate fully qualified pathnames in system path
Maven 3.0-alpha-4 Release Notes
Maven 3 aims to ensure backward compatibility, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
The full list of changes can be found in our issue management system, and is reproduced below.
Release Notes - Maven - Version 3.0-alpha-4 (since 3.0-alpha-3 only)
Bug
- [MNG-4361] - [regression] command line option "-update-snapshots" does not work
- [MNG-4433] - [regression] command line option "-update-snapshots" does not work for parent POMs
- [MNG-4436] - [regression] Singleton components can get instantianted multiple times
Improvement
- [MNG-4439] - apache-maven project should not deploy a source JAR or JAR, as it is only a distribution module
Task
- [MNG-3913] - Figure out why MavenEmbedderExampleTest fails on the grid and reenable when fixed.
- [MNG-4412] - Make legacy entry points to repository system pick offline mode from session
Maven 3.0-alpha-3 Release Notes
Maven 3 aims to ensure backward compatibility, improve usability, increase performance, allow safe embedding, and pave the way to implement many highly demanded features.
The full list of changes can be found in our issue management system, and is reproduced below.
Release Notes - Maven - Version 3.0-alpha-3 (since 3.0-alpha-2 only)
Sub-task
- [MNG-3013] - The plugin manager incorrectly caches plugin versions between embedder calls
- [MNG-3862] - Remove all plugin configuration manipulation from the plugin manager
- [MNG-3932] - Remove all mirror, authentication, and proxy handling out of WagonManager and into a neutral Maven implementation
- [MNG-4163] - Deprecate all methods in MavenProject that relate to reporting.
- [MNG-4215] - Review and fix hashCode/equals methods of ArtifactRepository implementations
Improvement
- [MNG-2391] - improve validation of POM elements
- [MNG-3402] - MavenArtifactFilterManager needs to not filtering doxia-sink-api
- [MNG-3631] - Introduce new MavenEmbedder.getPluginConfiguration method
- [MNG-3714] - Allow specification of the toolchains.xml location on the command line
- [MNG-3834] - Improve error message when dependency with classifier is missing version
- [MNG-3951] - Hide drive-relative paths from plugins
- [MNG-3969] - replace maven-ant with mercury-ant in the bootstrap
- [MNG-4005] - Throw Validation Error if pom contains a dependency with two different versions.
- [MNG-4037] - Include Java home in version information
- [MNG-4048] - Allow to resolve dependencies using version range from reactor
- [MNG-4057] - Propose checking of plugin artifact when plugin descriptor cannot be found
- [MNG-4186] - Provide an exact pointer to documentation specific to each known exception that can occur
- [MNG-4193] - Throw validation error upon multiple repository declarations with the same id
- [MNG-4224] - maven lifecycle participant
- [MNG-4244] - Allow to select project for make-like reactor by artifact id
- [MNG-4247] - Displaying which artifacts are downloaded and from which repo
- [MNG-4292] - Support Enum-type parameters in mojos
- [MNG-4293] - Extend Mojo API to allow resolution of both compile and runtime dependencies
- [MNG-4296] - allow core extensions configure new classrealms
- [MNG-4298] - Build MavenProject instances incrementally
- [MNG-4368] - DefaultArtifactInstaller should only overwrite files if timestamp has changed
- [MNG-4390] - Make parsing of settings.xml lenient with respect to unrecognized tags
- [MNG-4402] - Improve duplicated modules error
- [MNG-4404] - Throw validation error upon duplicate profile id
- [MNG-4405] - Uninterpolated expressions should cause an error for plugin versions
- [MNG-4421] - Warn regarding old-style references when used in a project build
- [MNG-4423] - Allow to query session data via plugin parameter expressions
New Feature
- [MNG-553] - Secure Storage of Server Passwords
- [MNG-3760] - Support property ${baseurl} to get RFC-compliant URL of project base directory
- [MNG-4033] - Introduce password encryption to the trunk
- [MNG-4331] - Add new mojo annotation @requiresDependencyCollection to grab dependency tree without files
- [MNG-4367] - Consider layout for mirror selection
- [MNG-4381] - Allow extension plugins to contribute non-core components to be reused by other plugins
- [MNG-4398] - Provide an extension point to track artifact additions to the local repository
Task
- [MNG-2387] - <active> on <proxy> in settings is misleading
- [MNG-2765] - Refactor DefaultPluginManager
- [MNG-2766] - Refactor DefaultLifecycleExecutor
- [MNG-3850] - Integrate new Profile Activators
- [MNG-3901] - Merge all project building code into a single component
- [MNG-3903] - Create a Maven specific abstraction for Artifact use within Maven
- [MNG-3935] - Get the Maven Integration Testing Hudson plugin installed on the grid
- [MNG-4059] - Remove support for non-unique SNAPSHOT deployments
- [MNG-4060] - Remove support for profiles.xml
- [MNG-4062] - Evaluate possibility to cache parents during multi module build
- [MNG-4069] - Remove support for plugin metaversion LATEST
- [MNG-4169] - Remove invocation of maven-plugin-plugin:updatePluginRegistry from default lifecycle bindings
- [MNG-4204] - Remove support for legacy style repositories
- [MNG-4205] - Remove support for plugin metaversions RELEASE and LATEST
- [MNG-4206] - Prefer RELEASE over LATEST when resolving plugin versions
- [MNG-4216] - Remove all direct usage of DefaultArtifactRepository
- [MNG-4221] - Push all repository/artifact related code into a legacy module and create a backward compat layer for external consumers
- [MNG-4259] - Create a new name for the current PluginManager and create a backward compatible PluginManager implementation in maven-compat which delegates to the new implementation
- [MNG-4260] - Remove old-school reactor mode
- [MNG-4277] - Remove core artifacts from ${plugin.artifacts}
- [MNG-4287] - Make ToolchainManagerPrivate session-aware
Wish
- [MNG-4056] - Relax resolution of active project artifacts from the reactor with regard to artifact type
- [MNG-4425] - Restore support for resume-from (-rf flag)