Commit Graph

2751 Commits

Author SHA1 Message Date
Jason van Zyl dd5eb31a08 Fold back into MavenRepositorySystem and work from there to clean up all references to the legacy system and Settings. 2015-02-09 01:44:32 -05:00
Jason van Zyl 2d34e67eed First pass at cleaning up MavenExecutionRequestPopulator and its use.
Push MavenExecutionRequestPopulator down to only operate in the MavenCli. Two of the three methods were already called from MavenCli so now all of them are. In the process I deleted a bunch of code and pursue my quest to remove Settings from the core in order to make a general configuration mechanism that can be plugged into the core via the MavenCli.

Also removed the requirement of the LegacyRepositorySystem in the DefaultMavenExecutionRequestPopulator which breaks another tie with the legacy code. I took the bits that were needed and a lot of the code, after tracing through it, is redundant so it has been deleted.

Turning off:

injectMirror( request, request.getRemoteRepositories(), request.getMirrors() );
injectMirror( request, request.getPluginArtifactRepositories(), request.getMirrors() );

in DefaultMavenExecutionRequestPopulator

Results :

Failed tests:
  MavenITmng4190MirrorRepoMergingTest>AbstractMavenIntegrationTestCase.runTest:220->testit:76 null expected:<[1]> but was:<[4]>

Tests in error:
  MavenITmng4991NonProxyHostsTest>AbstractMavenIntegrationTestCase.runTest:220->testit:89 » Verification
  MavenITmng4963ParentResolutionFromMirrorTest>AbstractMavenIntegrationTestCase.runTest:220->testit:58 » Verification

There is mirror evaluation code in DefaultMaven:newRepositorySession( MavenExecutionRequest request ) which appears to
duplicate this logic but not quite enough for the ITs to pass.

---

Turning off:

injectProxy( request.getRemoteRepositories(), request.getProxies() );
injectProxy( request.getPluginArtifactRepositories(), request.getProxies() );

in

DefaultMavenExecutionRequestPopulator

Result:

The ITs pass

So the code is not needed so it has been deleted.

---

Turning off:

injectProxy( request.getRemoteRepositories(), request.getProxies() );
injectProxy( request.getPluginArtifactRepositories(), request.getProxies() );
injectAuthentication( request.getRemoteRepositories(), request.getServers() );
injectAuthentication( request.getPluginArtifactRepositories(), request.getServers() );

in

DefaultMavenExecutionRequestPopulator

Result:

The ITs pass

The code in DefaultMaven:newRepositorySession( MavenExecutionRequest request ) appears to populate proxies and authentication correctly. The injectAuthentication code has been deleted.

---

This is also perfunctory in DefaultMavenExecutionRequestPopulator after tracing through it:

request.setRemoteRepositories( getEffectiveRepositories( request, request.getRemoteRepositories() ) );
request.setPluginArtifactRepositories( getEffectiveRepositories( request, request.getPluginArtifactRepositories() ) );
2015-02-08 22:26:48 -05:00
Igor Fedorenko d745f8c475 MNG-5762 populate plugin repositories in ExecutionRequestPopulator
Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2015-02-04 22:26:16 -05:00
Robert Scholte 4b263106db [MNG-5755] Access toolchains without maven-toolchain-plugin
Added List<Toolchain> getToolchains( MavenSession session, String type, Map<String, String> requirements ) to ToolchainManager
2015-01-18 16:53:56 +01:00
Robert Scholte b6ae8ef8ab [MNG-5754] Toolchains should be read during initialization
DefaultToolchainManagerPrivate now uses toolchains from MavenExecutionRequest
2015-01-17 17:24:00 +01:00
Robert Scholte f75008743b [MNG-5754] Toolchains should be read during initialization
MavenExecutionRequest has been extended with toolchains, which is filled by MavenCli
Interfaces have been extended with new methods, assuming only Maven provides implementations
2015-01-17 15:45:53 +01:00
Robert Scholte 99f763decd Add junit tests for DefaultToolchainsBuilder and ToolchainsBuildingException 2015-01-16 13:24:57 +01:00
Jason van Zyl 36d491a648 MNG-5753: Allow plugin implementors to choose how they want the configuration created for a particular MojoExecution 2015-01-15 15:16:59 -05:00
Robert Scholte 32053c99d7 Add junittests for DefaultToolchain
Implement toString() for better log messages
2015-01-12 23:23:31 +01:00
Robert Scholte 3e133902fb Additional unittests for DefaultToolchainManagerPrivate
Remove unnecessary null checks for Lists
Improve javadoc
2015-01-11 22:02:14 +01:00
Robert Scholte 2d0ec94269 [MNG-5716] Add unittests for DefaultToolchainManagerPrivate 2015-01-10 22:58:24 +01:00
Igor Fedorenko bb4988496a better plugin/extensions realm parent classloader
Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2015-01-08 08:08:47 -05:00
Tibor17 3a6f63345c [MNG-5702] Final Fields on DefaultMavenExecutionResult.java 2015-01-02 20:20:26 +01:00
Tibor17 4d33358be2 [MNG-5702] Final Fields on DefaultMavenExecutionResult.java 2015-01-02 20:01:20 +01:00
Karl Heinz Marbaise 6f0318ed68 [MNG-5702] Wrong reactor summary output while using -T option
Fixed checkstyle reported errors.
2014-12-31 11:34:27 +01:00
Karl Heinz Marbaise cb91332d3d [MNG-5702] Wrong reactor summary output while using -T option
Changing into a better solution which doesn't change the
 implemented type of Map but use a synchronized one.
2014-12-31 11:25:55 +01:00
Karl Heinz Marbaise 3b671d0734 [MNG-5702] Wrong reactor summary output while using -T option
Fixed by using ConcurrentMap instead non synchronized ones.
2014-12-29 14:33:47 +01:00
Igor Fedorenko 6ab41ee8d3 MNG-5742 fixed null ComponentDescriptor#realm for extensions plugins
Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2014-12-26 13:27:51 -05:00
Hervé Boutemy c239f6ea6f [MNG-5748] keep builderId on copy 2014-12-26 17:24:39 +01:00
Hervé Boutemy 328a777cd5 [MNG-5747] keep useLegacyLocalRepositoryManager on copy 2014-12-26 17:19:40 +01:00
Igor Fedorenko 1420d61c05 MNG-5742 fixed duplicate plugin realms when extensions=true
Consolidated plugin realm setup logic in DefaultMavenPluginManager.
Extensions realm is fully setup during project loading and the same
realm is used to both load extensions and execute plugin goals now.

Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2014-12-25 13:31:29 -05:00
Robert Scholte dbecf3b5cd Rename package so it has same structure as settings and model 2014-12-25 15:55:13 +01:00
Robert Scholte ceae922653 [MNG-3891] Modify maven-toolchain to look in ${maven.home}/conf/toolchains.xml and in ${user.home}/.m2/toolchains.xml
Also added new cmdline option: -gt / --global-toolchains
2014-12-25 14:55:02 +01:00
Jason van Zyl fa71e5f5ad [maven-release-plugin] prepare for next development iteration 2014-12-14 12:22:54 -05:00
Jason van Zyl 12a6b3acb9 [maven-release-plugin] prepare release maven-3.2.5 2014-12-14 12:22:35 -05:00
Hervé Boutemy 0252eb2a1f updated unit test 2014-12-13 18:09:45 +01:00
Hervé Boutemy 61f1d01ba8 since this class is new, immediately mark it package protected: it is
the implementation of JavaToolchain interface (even if the interface is
empty at the moment)
2014-12-13 17:52:31 +01:00
Hervé Boutemy 6f1bc80f3e added a notice about internal API 2014-12-13 15:18:31 +01:00
Igor Fedorenko d6e45a5d56 MNG-5719 reintroduced DefaultJavaToolChain
DefaultJavaToolChain was the only way to access JDK toolchain
javaHome parameter and was used by some clients, notably Tycho.
The class is now marked as deprecated and clients are adviced to
use JavaToolchainImpl instead.

Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2014-12-13 08:42:07 -05:00
Jason van Zyl 35c49f7a5e [maven-release-plugin] prepare for next development iteration 2014-12-12 16:14:40 -05:00
Jason van Zyl ed0e6acb01 [maven-release-plugin] prepare release maven-3.2.4 2014-12-12 16:14:23 -05:00
Igor Fedorenko 369889296e introduced RepositorySessionDecorator
Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2014-11-25 19:11:00 -05:00
Igor Fedorenko c15226f13f decoupled project #file and #basedir to allow pom.xml processing
Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2014-11-25 19:11:00 -05:00
Igor Fedorenko 8643e00993 introduced ProjectArtifactFactory component
this hides use of deprecated/legacy ArtifactFactory and allows custom
project dependency artifact creation logic.

Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2014-11-25 19:11:00 -05:00
Igor Fedorenko ce6f0bfdb5 MNG-5727 fixed cryptic exception when managed depenency has no <version>
Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2014-11-25 19:11:00 -05:00
Robert Scholte 5c84bd33ba [MNG-5714] Add Merger for Maven Toolchain 2014-11-25 22:40:18 +01:00
Michael Osipov 0343c52601 Trimmed trailing whitespace 2014-11-23 13:04:30 +01:00
Hervé Boutemy b1b80f61a4 improved explanations 2014-11-15 02:50:38 +01:00
Hervé Boutemy e661aa87f5 improved javadoc and Java toolchain implementation class name (not a
Plexus component, then DefaultComponentName convention doesn't apply)
2014-11-08 22:43:09 +01:00
Hervé Boutemy 36d746789d make algo more visible 2014-11-08 21:53:16 +01:00
Hervé Boutemy bdf5770f95 improved documentation 2014-11-05 01:36:24 +01:00
Hervé Boutemy aef3b36c0e renamed DefaultJavaToolchainFactory to JavaToolchainFactory to ease
understanding: there is no JavaToolchainFactory Plexus component
2014-11-05 01:32:21 +01:00
Hervé Boutemy eddfef3394 improved javadoc 2014-11-05 01:24:32 +01:00
Hervé Boutemy b8d220c686 prepare provides before configuration, to follown descriptor logic 2014-11-05 01:23:26 +01:00
Hervé Boutemy 44174308a6 [MNG-5719] take the case change into account 2014-11-04 01:10:56 +01:00
Hervé Boutemy b013d97ceb [MNG-5719] renamed JavaToolChain to JavaToolchain for consistency and
removed its Plexus component declaration
2014-11-04 00:58:27 +01:00
Robert Scholte fa4f7040ad [MNG-5718] Change 'provides' from Object to Properties in toolchains.xml 2014-11-03 23:10:06 +01:00
Robert Scholte 01a879384c Add tests for equals() and hashCode() 2014-11-02 22:34:19 +01:00
Robert Scholte 21c13ca484 [MNG-5717] Enrich toolchain xml with merge information
Pushing version forward from 1.0.0 to 1.1.0
2014-11-02 21:15:50 +01:00
Robert Scholte 2d086fde25 remove unused import 2014-11-02 20:20:24 +01:00