New features of Maven 3.9.x:
- Shared local repository (using advisory file locking, Hazelcast or Redis)
- Switchable and alternative transports (resolver "native" along with default Wagon) with default switched to native.
- Chained local repository (for IT isolation between "outer" and "inner" builds)
- Recording reverse dependency tree tracking information
- Pluggable checksum algorithms API (is not tied to MessageDigest anymore)
- Choice of resolver collectors BF along existing DF (parallel POM downloads with BF)
- Split local repository, plus "workspace" support for branched development
- Remote repository filtering (see https://github.com/cstamas/rrf-demo)
- Trusted checksum sources (ability to provide some or all artifact checksums ahead of time)
- Pluggable artifact resolver post-processor, with "trustedChecksums" implementation (that verifies artifacts on resolve)L makes possible to use "untrusted" local and remote repositories and to end up with "trusted" artifacts.
- Help with projects maintenance - warnings about deprecated plugins, goals, deprecated parameters, no existing parameters, read only parameters
- Add support for "mvn pluginPrefix:version:goal"
- Profile activation by packaging
- Fixing Maven finally to be able to use m-install-p/m-deploy-p 3.x
- JDK 8 as minimum
- ??? add the rest, these were just from top of my head