diff --git a/.gitignore b/.gitignore
index 978fb21..15e4ddc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@ enforcer-1.0-beta-2.tar.xz
/enforcer-1.4-source-release.zip
/enforcer-1.4.1-source-release.zip
/enforcer-3.0.0-M2-source-release.zip
+/enforcer-3.0.0-M3-source-release.zip
diff --git a/0001-Port-to-Maven-3-API.patch b/0001-Port-to-Maven-3-API.patch
index c785036..fa1ef5d 100644
--- a/0001-Port-to-Maven-3-API.patch
+++ b/0001-Port-to-Maven-3-API.patch
@@ -7,553 +7,561 @@ Subject: [PATCH] Port to Maven 3 API
enforcer-rules/pom.xml | 6 ++-
.../enforcer/AbstractBanDependencies.java | 13 +++--
.../enforcer/BanTransitiveDependencies.java | 7 ++-
- .../maven/plugins/enforcer/BannedPlugins.java | 7 +--
.../enforcer/DependencyConvergence.java | 29 +++++------
- .../enforcer/RequirePluginVersions.java | 48 +++++++------------
- .../enforcer/RequireUpperBoundDeps.java | 31 +++++-------
+ .../enforcer/RequirePluginVersions.java | 51 +++++++------------
+ .../enforcer/RequireUpperBoundDeps.java | 31 ++++-------
.../enforcer/utils/DependencyVersionMap.java | 6 +--
- .../enforcer/utils/EnforcerRuleUtils.java | 40 +++-------------
- pom.xml | 11 +++--
- 10 files changed, 80 insertions(+), 118 deletions(-)
+ .../enforcer/utils/EnforcerRuleUtils.java | 40 +++------------
+ pom.xml | 11 ++--
+ 9 files changed, 78 insertions(+), 116 deletions(-)
diff --git a/enforcer-rules/pom.xml b/enforcer-rules/pom.xml
-index 2b3dd62..c68a7da 100644
+index 187d38b..076c84a 100644
--- a/enforcer-rules/pom.xml
+++ b/enforcer-rules/pom.xml
@@ -43,12 +43,16 @@
-
-
- org.apache.maven
-- maven-core
-+ maven-compat
-
-
- org.apache.maven.shared
- maven-common-artifact-filters
-
-+
-+ org.apache.maven.shared
-+ maven-artifact-transfer
-+
-
- org.codehaus.plexus
- plexus-utils
+
+
+ org.apache.maven
+- maven-core
++ maven-compat
+
+
+ org.apache.maven.shared
+ maven-common-artifact-filters
+
++
++ org.apache.maven.shared
++ maven-artifact-transfer
++
+
+ org.codehaus.plexus
+ plexus-utils
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/AbstractBanDependencies.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/AbstractBanDependencies.java
-index bab10ef..b791781 100644
+index 2888a61..cfd5338 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/AbstractBanDependencies.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/AbstractBanDependencies.java
-@@ -23,7 +23,9 @@ import org.apache.maven.artifact.Artifact;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
- import org.apache.maven.plugin.logging.Log;
-+import org.apache.maven.project.DefaultProjectBuildingRequest;
- import org.apache.maven.project.MavenProject;
-+import org.apache.maven.project.ProjectBuildingRequest;
- import org.apache.maven.shared.dependency.graph.DependencyGraphBuilder;
- import org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException;
- import org.apache.maven.shared.dependency.graph.DependencyNode;
+@@ -23,8 +23,10 @@ import org.apache.maven.artifact.Artifact;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
+ import org.apache.maven.plugin.logging.Log;
++import org.apache.maven.project.DefaultProjectBuildingRequest;
+ import org.apache.maven.plugins.enforcer.utils.ArtifactUtils;
+ import org.apache.maven.project.MavenProject;
++import org.apache.maven.project.ProjectBuildingRequest;
+ import org.apache.maven.shared.dependency.graph.DependencyGraphBuilder;
+ import org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException;
+ import org.apache.maven.shared.dependency.graph.DependencyNode;
@@ -53,10 +55,11 @@ public abstract class AbstractBanDependencies
- {
-
- // get the project
-- MavenProject project = null;
-+ ProjectBuildingRequest projectBuildingRequest = null;
- try
- {
-- project = (MavenProject) helper.evaluate( "${project}" );
-+ projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
-+ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
- }
- catch ( ExpressionEvaluationException eee )
- {
+ {
+
+ // get the project
+- MavenProject project = null;
++ ProjectBuildingRequest projectBuildingRequest = null;
+ try
+ {
+- project = (MavenProject) helper.evaluate( "${project}" );
++ projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
++ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
+ }
+ catch ( ExpressionEvaluationException eee )
+ {
@@ -83,7 +86,7 @@ public abstract class AbstractBanDependencies
- }
-
- // get the correct list of dependencies
-- Set dependencies = getDependenciesToCheck( project );
-+ Set dependencies = getDependenciesToCheck( projectBuildingRequest );
-
- // look for banned dependencies
- Set foundExcludes = checkDependencies( dependencies, helper.getLog() );
+ }
+
+ // get the correct list of dependencies
+- Set dependencies = getDependenciesToCheck( project );
++ Set dependencies = getDependenciesToCheck( projectBuildingRequest );
+
+ // look for banned dependencies
+ Set foundExcludes = checkDependencies( dependencies, helper.getLog() );
@@ -114,12 +117,12 @@ public abstract class AbstractBanDependencies
- return "Found Banned Dependency: " + artifact.getId() + "\n";
- }
-
-- protected Set getDependenciesToCheck( MavenProject project )
-+ protected Set getDependenciesToCheck( ProjectBuildingRequest projectBuildingRequest )
- {
- Set dependencies = null;
- try
- {
-- DependencyNode node = graphBuilder.buildDependencyGraph( project, null );
-+ DependencyNode node = graphBuilder.buildDependencyGraph( projectBuildingRequest, null );
- if ( searchTransitive )
- {
- dependencies = getAllDescendants( node );
+ return "Found Banned Dependency: " + artifact.getId() + System.lineSeparator();
+ }
+
+- protected Set getDependenciesToCheck( MavenProject project )
++ protected Set getDependenciesToCheck( ProjectBuildingRequest projectBuildingRequest )
+ {
+ Set dependencies = null;
+ try
+ {
+- DependencyNode node = graphBuilder.buildDependencyGraph( project, null );
++ DependencyNode node = graphBuilder.buildDependencyGraph( projectBuildingRequest, null );
+ if ( searchTransitive )
+ {
+ dependencies = ArtifactUtils.getAllDescendants( node );
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanTransitiveDependencies.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanTransitiveDependencies.java
-index d6993c7..860969f 100644
+index 6e1dcd4..b84f421 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanTransitiveDependencies.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanTransitiveDependencies.java
@@ -27,7 +27,9 @@ import org.apache.maven.enforcer.rule.api.EnforcerRule;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
- import org.apache.maven.plugins.enforcer.utils.ArtifactMatcher;
-+import org.apache.maven.project.DefaultProjectBuildingRequest;
- import org.apache.maven.project.MavenProject;
-+import org.apache.maven.project.ProjectBuildingRequest;
- import org.apache.maven.shared.dependency.graph.DependencyGraphBuilder;
- import org.apache.maven.shared.dependency.graph.DependencyNode;
- import org.apache.maven.shared.dependency.graph.internal.DefaultDependencyGraphBuilder;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
+ import org.apache.maven.plugins.enforcer.utils.ArtifactMatcher;
++import org.apache.maven.project.DefaultProjectBuildingRequest;
+ import org.apache.maven.project.MavenProject;
++import org.apache.maven.project.ProjectBuildingRequest;
+ import org.apache.maven.shared.dependency.graph.DependencyGraphBuilder;
+ import org.apache.maven.shared.dependency.graph.DependencyNode;
+ import org.apache.maven.shared.dependency.graph.internal.DefaultDependencyGraphBuilder;
@@ -157,8 +159,9 @@ public class BanTransitiveDependencies
-
- try
- {
-- MavenProject project = (MavenProject) helper.evaluate( "${project}" );
-- rootNode = createDependencyGraphBuilder().buildDependencyGraph( project, null );
-+ ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
-+ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
-+ rootNode = createDependencyGraphBuilder().buildDependencyGraph( projectBuildingRequest, null );
- }
- catch ( Exception e )
- {
+
+ try
+ {
+- MavenProject project = (MavenProject) helper.evaluate( "${project}" );
+- rootNode = createDependencyGraphBuilder().buildDependencyGraph( project, null );
++ ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
++ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
++ rootNode = createDependencyGraphBuilder().buildDependencyGraph( projectBuildingRequest, null );
+ }
+ catch ( Exception e )
+ {
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BannedPlugins.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BannedPlugins.java
-index ddcfb26..6085f47 100644
+index 03201fd..35bcd57 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BannedPlugins.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BannedPlugins.java
@@ -23,6 +23,7 @@ import java.util.Set;
-
- import org.apache.maven.artifact.Artifact;
- import org.apache.maven.project.MavenProject;
-+import org.apache.maven.project.ProjectBuildingRequest;
-
- /**
- * This rule checks that lists of plugins are not included.
-@@ -32,10 +33,10 @@ import org.apache.maven.project.MavenProject;
- public class BannedPlugins
- extends BannedDependencies
- {
-- @Override
-- protected Set getDependenciesToCheck( MavenProject project )
-+ @Override
-+ protected Set getDependenciesToCheck( ProjectBuildingRequest projectBuildingRequest )
- {
-- return project.getPluginArtifacts();
-+ return projectBuildingRequest.getProject().getPluginArtifacts();
- }
-
- @Override
+
+ import org.apache.maven.artifact.Artifact;
+ import org.apache.maven.project.MavenProject;
++import org.apache.maven.project.ProjectBuildingRequest;
+
+ /**
+ * This rule checks that lists of plugins are not included.
+@@ -33,9 +34,9 @@ public class BannedPlugins
+ extends BannedDependencies
+ {
+ @Override
+- protected Set getDependenciesToCheck( MavenProject project )
++ protected Set getDependenciesToCheck( ProjectBuildingRequest projectBuildingRequest )
+ {
+- return project.getPluginArtifacts();
++ return projectBuildingRequest.getProject().getPluginArtifacts();
+ }
+
+ @Override
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/DependencyConvergence.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/DependencyConvergence.java
-index 0f12a2d..dbc85d4 100644
+index 684f984..4795634 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/DependencyConvergence.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/DependencyConvergence.java
@@ -24,20 +24,19 @@ import java.util.Collections;
- import java.util.List;
-
- import org.apache.maven.artifact.Artifact;
--import org.apache.maven.artifact.factory.ArtifactFactory;
--import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
- import org.apache.maven.artifact.repository.ArtifactRepository;
--import org.apache.maven.artifact.resolver.ArtifactCollector;
- import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
- import org.apache.maven.enforcer.rule.api.EnforcerRule;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
- import org.apache.maven.plugin.logging.Log;
- import org.apache.maven.plugins.enforcer.utils.DependencyVersionMap;
-+import org.apache.maven.project.DefaultProjectBuildingRequest;
- import org.apache.maven.project.MavenProject;
--import org.apache.maven.shared.dependency.tree.DependencyNode;
--import org.apache.maven.shared.dependency.tree.DependencyTreeBuilder;
--import org.apache.maven.shared.dependency.tree.DependencyTreeBuilderException;
-+import org.apache.maven.project.ProjectBuildingRequest;
-+import org.apache.maven.shared.dependency.graph.DependencyGraphBuilder;
-+import org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException;
-+import org.apache.maven.shared.dependency.graph.DependencyNode;
- import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
- import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
-
+ import java.util.List;
+
+ import org.apache.maven.artifact.Artifact;
+-import org.apache.maven.artifact.factory.ArtifactFactory;
+-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
+ import org.apache.maven.artifact.repository.ArtifactRepository;
+-import org.apache.maven.artifact.resolver.ArtifactCollector;
+ import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
+ import org.apache.maven.enforcer.rule.api.EnforcerRule;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
+ import org.apache.maven.plugin.logging.Log;
+ import org.apache.maven.plugins.enforcer.utils.DependencyVersionMap;
++import org.apache.maven.project.DefaultProjectBuildingRequest;
+ import org.apache.maven.project.MavenProject;
+-import org.apache.maven.shared.dependency.tree.DependencyNode;
+-import org.apache.maven.shared.dependency.tree.DependencyTreeBuilder;
+-import org.apache.maven.shared.dependency.tree.DependencyTreeBuilderException;
++import org.apache.maven.project.ProjectBuildingRequest;
++import org.apache.maven.shared.dependency.graph.DependencyGraphBuilder;
++import org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException;
++import org.apache.maven.shared.dependency.graph.DependencyNode;
+ import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
+ import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
+
@@ -74,17 +73,13 @@ public class DependencyConvergence
- {
- try
- {
-- MavenProject project = (MavenProject) helper.evaluate( "${project}" );
-- DependencyTreeBuilder dependencyTreeBuilder =
-- (DependencyTreeBuilder) helper.getComponent( DependencyTreeBuilder.class );
-+ ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
-+ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
-+ DependencyGraphBuilder dependencyGraphBuilder = (DependencyGraphBuilder) helper.getComponent( DependencyGraphBuilder.class );
- ArtifactRepository repository = (ArtifactRepository) helper.evaluate( "${localRepository}" );
-- ArtifactFactory factory = (ArtifactFactory) helper.getComponent( ArtifactFactory.class );
-- ArtifactMetadataSource metadataSource =
-- (ArtifactMetadataSource) helper.getComponent( ArtifactMetadataSource.class );
-- ArtifactCollector collector = (ArtifactCollector) helper.getComponent( ArtifactCollector.class );
- ArtifactFilter filter = null; // we need to evaluate all scopes
-- DependencyNode node = dependencyTreeBuilder.buildDependencyTree( project, repository, factory,
-- metadataSource, filter, collector );
-+ projectBuildingRequest.setLocalRepository( repository );
-+ DependencyNode node = dependencyGraphBuilder.buildDependencyGraph( projectBuildingRequest, filter );
- return node;
- }
- catch ( ExpressionEvaluationException e )
+ {
+ try
+ {
+- MavenProject project = (MavenProject) helper.evaluate( "${project}" );
+- DependencyTreeBuilder dependencyTreeBuilder =
+- (DependencyTreeBuilder) helper.getComponent( DependencyTreeBuilder.class );
++ ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
++ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
++ DependencyGraphBuilder dependencyGraphBuilder = (DependencyGraphBuilder) helper.getComponent( DependencyGraphBuilder.class );
+ ArtifactRepository repository = (ArtifactRepository) helper.evaluate( "${localRepository}" );
+- ArtifactFactory factory = (ArtifactFactory) helper.getComponent( ArtifactFactory.class );
+- ArtifactMetadataSource metadataSource =
+- (ArtifactMetadataSource) helper.getComponent( ArtifactMetadataSource.class );
+- ArtifactCollector collector = (ArtifactCollector) helper.getComponent( ArtifactCollector.class );
+ ArtifactFilter filter = null; // we need to evaluate all scopes
+- DependencyNode node = dependencyTreeBuilder.buildDependencyTree( project, repository, factory,
+- metadataSource, filter, collector );
++ projectBuildingRequest.setLocalRepository( repository );
++ DependencyNode node = dependencyGraphBuilder.buildDependencyGraph( projectBuildingRequest, filter );
+ return node;
+ }
+ catch ( ExpressionEvaluationException e )
@@ -95,9 +90,9 @@ public class DependencyConvergence
- {
- throw new EnforcerRuleException( "Unable to lookup a component " + e.getLocalizedMessage(), e );
- }
-- catch ( DependencyTreeBuilderException e )
-+ catch ( DependencyGraphBuilderException e )
- {
-- throw new EnforcerRuleException( "Could not build dependency tree " + e.getLocalizedMessage(), e );
-+ throw new EnforcerRuleException( "Could not build dependency graph " + e.getLocalizedMessage(), e );
- }
- }
-
+ {
+ throw new EnforcerRuleException( "Unable to lookup a component " + e.getLocalizedMessage(), e );
+ }
+- catch ( DependencyTreeBuilderException e )
++ catch ( DependencyGraphBuilderException e )
+ {
+- throw new EnforcerRuleException( "Could not build dependency tree " + e.getLocalizedMessage(), e );
++ throw new EnforcerRuleException( "Could not build dependency graph " + e.getLocalizedMessage(), e );
+ }
+ }
+
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java
-index b78c6cf..f564d36 100644
+index 34f0f20..1323b11 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java
-@@ -37,7 +37,6 @@ import org.apache.maven.artifact.factory.ArtifactFactory;
- import org.apache.maven.artifact.repository.ArtifactRepository;
- import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
- import org.apache.maven.artifact.resolver.ArtifactResolutionException;
--import org.apache.maven.artifact.resolver.ArtifactResolver;
- import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
- import org.apache.maven.artifact.versioning.VersionRange;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
-@@ -63,8 +62,12 @@ import org.apache.maven.plugin.version.PluginVersionNotFoundException;
- import org.apache.maven.plugin.version.PluginVersionResolutionException;
- import org.apache.maven.plugins.enforcer.utils.EnforcerRuleUtils;
- import org.apache.maven.plugins.enforcer.utils.PluginWrapper;
-+import org.apache.maven.project.DefaultProjectBuildingRequest;
- import org.apache.maven.project.MavenProject;
-+import org.apache.maven.project.ProjectBuildingRequest;
- import org.apache.maven.settings.Settings;
-+import org.apache.maven.shared.artifact.resolve.ArtifactResolver;
-+import org.apache.maven.shared.artifact.resolve.ArtifactResolverException;
- import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
- import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
- import org.codehaus.plexus.util.ReflectionUtils;
-@@ -168,12 +171,6 @@ public class RequirePluginVersions
- /** The resolver. */
- ArtifactResolver resolver;
-
-- /** The local. */
-- ArtifactRepository local;
--
-- /** The remote repositories. */
-- List remoteRepositories;
--
- /** The log. */
- Log log;
-
-@@ -219,8 +216,8 @@ public class RequirePluginVersions
- pluginManager = (PluginManager) helper.getComponent( PluginManager.class );
- factory = (ArtifactFactory) helper.getComponent( ArtifactFactory.class );
- resolver = (ArtifactResolver) helper.getComponent( ArtifactResolver.class );
-- local = (ArtifactRepository) helper.evaluate( "${localRepository}" );
-- remoteRepositories = project.getRemoteArtifactRepositories();
-+ ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
-+ projectBuildingRequest.setProject( project );
-
- utils = new EnforcerRuleUtils( helper );
-
-@@ -291,7 +288,7 @@ public class RequirePluginVersions
- {
- newMsg.append( ". \tThe version currently in use is " );
-
-- Plugin currentPlugin = findCurrentPlugin( plugin, project );
-+ Plugin currentPlugin = findCurrentPlugin( plugin, projectBuildingRequest );
-
- if ( currentPlugin != null )
- {
-@@ -340,11 +337,7 @@ public class RequirePluginVersions
- {
- throw new EnforcerRuleException( e.getLocalizedMessage() );
- }
-- catch ( ArtifactResolutionException e )
-- {
-- throw new EnforcerRuleException( e.getLocalizedMessage() );
-- }
-- catch ( ArtifactNotFoundException e )
-+ catch ( ArtifactResolverException e )
- {
- throw new EnforcerRuleException( e.getLocalizedMessage() );
- }
-@@ -513,12 +506,12 @@ public class RequirePluginVersions
- * @param project project to search
- * @return matching plugin, null if not found.
- */
-- protected Plugin findCurrentPlugin( Plugin plugin, MavenProject project )
-+ protected Plugin findCurrentPlugin( Plugin plugin, ProjectBuildingRequest projectBuildingRequest )
- {
- Plugin found = null;
- try
- {
-- Model model = project.getModel();
-+ Model model = projectBuildingRequest.getProject().getModel();
- Map plugins = model.getBuild().getPluginsAsMap();
- found = plugins.get( plugin.getKey() );
- }
-@@ -529,7 +522,7 @@ public class RequirePluginVersions
-
- if ( found == null )
- {
-- found = resolvePlugin( plugin, project );
-+ found = resolvePlugin( plugin, projectBuildingRequest );
- }
-
- return found;
-@@ -542,24 +535,18 @@ public class RequirePluginVersions
- * @param project the project
- * @return the plugin
- */
-- protected Plugin resolvePlugin( Plugin plugin, MavenProject project )
-+ protected Plugin resolvePlugin( Plugin plugin, ProjectBuildingRequest projectBuildingRequest )
- {
--
-- List pluginRepositories = project.getPluginArtifactRepositories();
- Artifact artifact =
- factory.createPluginArtifact( plugin.getGroupId(), plugin.getArtifactId(),
- VersionRange.createFromVersion( "LATEST" ) );
-
- try
- {
-- this.resolver.resolve( artifact, pluginRepositories, this.local );
-+ this.resolver.resolveArtifact( projectBuildingRequest, artifact );
- plugin.setVersion( artifact.getVersion() );
- }
-- catch ( ArtifactResolutionException e )
-- {
-- //What does this mean?
-- }
-- catch ( ArtifactNotFoundException e )
-+ catch ( ArtifactResolverException e )
- {
- //What does this mean?
- }
-@@ -1034,13 +1021,12 @@ public class RequirePluginVersions
- *
- * @param project the project
- * @return the all plugin entries wrapped in a PluginWrapper Object
-- * @throws ArtifactResolutionException the artifact resolution exception
-- * @throws ArtifactNotFoundException the artifact not found exception
-+ * @throws ArtifactResolverException the artifact resolution exception
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws XmlPullParserException the xml pull parser exception
- */
- protected List getAllPluginEntries( MavenProject project )
-- throws ArtifactResolutionException, ArtifactNotFoundException, IOException, XmlPullParserException
-+ throws ArtifactResolverException, IOException, XmlPullParserException
- {
- List plugins = new ArrayList();
- // get all the pom models
-@@ -1263,4 +1249,4 @@ public class RequirePluginVersions
- {
- return additionalPlugins;
- }
--}
-\ No newline at end of file
-+}
+@@ -36,7 +36,6 @@ import org.apache.maven.artifact.factory.ArtifactFactory;
+ import org.apache.maven.artifact.repository.ArtifactRepository;
+ import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
+ import org.apache.maven.artifact.resolver.ArtifactResolutionException;
+-import org.apache.maven.artifact.resolver.ArtifactResolver;
+ import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
+ import org.apache.maven.artifact.versioning.VersionRange;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
+@@ -62,8 +61,12 @@ import org.apache.maven.plugin.version.PluginVersionNotFoundException;
+ import org.apache.maven.plugin.version.PluginVersionResolutionException;
+ import org.apache.maven.plugins.enforcer.utils.EnforcerRuleUtils;
+ import org.apache.maven.plugins.enforcer.utils.PluginWrapper;
++import org.apache.maven.project.DefaultProjectBuildingRequest;
+ import org.apache.maven.project.MavenProject;
++import org.apache.maven.project.ProjectBuildingRequest;
+ import org.apache.maven.settings.Settings;
++import org.apache.maven.shared.artifact.resolve.ArtifactResolver;
++import org.apache.maven.shared.artifact.resolve.ArtifactResolverException;
+ import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
+ import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
+ import org.codehaus.plexus.util.ReflectionUtils;
+@@ -166,12 +169,6 @@ public class RequirePluginVersions
+ /** The resolver. */
+ private ArtifactResolver resolver;
+
+- /** The local. */
+- private ArtifactRepository local;
+-
+- /** The remote repositories. */
+- private List remoteRepositories;
+-
+ /** The log. */
+ private Log log;
+
+@@ -205,8 +202,8 @@ public class RequirePluginVersions
+ pluginManager = (PluginManager) helper.getComponent( PluginManager.class );
+ factory = (ArtifactFactory) helper.getComponent( ArtifactFactory.class );
+ resolver = (ArtifactResolver) helper.getComponent( ArtifactResolver.class );
+- local = (ArtifactRepository) helper.evaluate( "${localRepository}" );
+- remoteRepositories = project.getRemoteArtifactRepositories();
++ ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
++ projectBuildingRequest.setProject( project );
+
+ utils = new EnforcerRuleUtils( helper );
+
+@@ -254,7 +251,7 @@ public class RequirePluginVersions
+ // if anything was found, log it then append the optional message.
+ if ( !failures.isEmpty() )
+ {
+- handleMessagesToTheUser( project, failures );
++ handleMessagesToTheUser( projectBuildingRequest, failures );
+ }
+ }
+ catch ( ExpressionEvaluationException e )
+@@ -277,13 +274,9 @@ public class RequirePluginVersions
+ {
+ throw new EnforcerRuleException( e.getLocalizedMessage() );
+ }
+- catch ( ArtifactResolutionException e )
+- {
+- throw new EnforcerRuleException( e.getLocalizedMessage() );
+- }
+- catch ( ArtifactNotFoundException e )
++ catch ( ArtifactResolverException e )
+ {
+- throw new EnforcerRuleException( e.getLocalizedMessage() );
++ // What does this mean?
+ }
+ catch ( IOException e )
+ {
+@@ -299,7 +292,7 @@ public class RequirePluginVersions
+ }
+ }
+
+- private void handleMessagesToTheUser( MavenProject project, List failures )
++ private void handleMessagesToTheUser( ProjectBuildingRequest projectBuildingRequest, List failures )
+ throws EnforcerRuleException
+ {
+ StringBuilder newMsg = new StringBuilder();
+@@ -316,7 +309,7 @@ public class RequirePluginVersions
+ {
+ newMsg.append( ". \tThe version currently in use is " );
+
+- Plugin currentPlugin = findCurrentPlugin( plugin, project );
++ Plugin currentPlugin = findCurrentPlugin( plugin, projectBuildingRequest );
+
+ if ( currentPlugin != null )
+ {
+@@ -518,12 +511,12 @@ public class RequirePluginVersions
+ * @param project project to search
+ * @return matching plugin, null if not found.
+ */
+- protected Plugin findCurrentPlugin( Plugin plugin, MavenProject project )
++ protected Plugin findCurrentPlugin( Plugin plugin, ProjectBuildingRequest projectBuildingRequest )
+ {
+ Plugin found = null;
+ try
+ {
+- Model model = project.getModel();
++ Model model = projectBuildingRequest.getProject().getModel();
+ Map plugins = model.getBuild().getPluginsAsMap();
+ found = plugins.get( plugin.getKey() );
+ }
+@@ -534,7 +527,7 @@ public class RequirePluginVersions
+
+ if ( found == null )
+ {
+- found = resolvePlugin( plugin, project );
++ found = resolvePlugin( plugin, projectBuildingRequest );
+ }
+
+ return found;
+@@ -547,23 +540,18 @@ public class RequirePluginVersions
+ * @param project the project
+ * @return the plugin
+ */
+- protected Plugin resolvePlugin( Plugin plugin, MavenProject project )
++ protected Plugin resolvePlugin( Plugin plugin, ProjectBuildingRequest projectBuildingRequest )
+ {
+
+- List pluginRepositories = project.getPluginArtifactRepositories();
+ Artifact artifact = factory.createPluginArtifact( plugin.getGroupId(), plugin.getArtifactId(),
+ VersionRange.createFromVersion( "LATEST" ) );
+
+ try
+ {
+- this.resolver.resolve( artifact, pluginRepositories, this.local );
++ this.resolver.resolveArtifact( projectBuildingRequest, artifact );
+ plugin.setVersion( artifact.getVersion() );
+ }
+- catch ( ArtifactResolutionException e )
+- {
+- // What does this mean?
+- }
+- catch ( ArtifactNotFoundException e )
++ catch ( ArtifactResolverException e )
+ {
+ // What does this mean?
+ }
+@@ -1046,13 +1034,12 @@ public class RequirePluginVersions
+ *
+ * @param project the project
+ * @return the all plugin entries wrapped in a PluginWrapper Object
+- * @throws ArtifactResolutionException the artifact resolution exception
+- * @throws ArtifactNotFoundException the artifact not found exception
++ * @throws ArtifactResolverException the artifact resolution exception
+ * @throws IOException Signals that an I/O exception has occurred.
+ * @throws XmlPullParserException the xml pull parser exception
+ */
+ protected List getAllPluginEntries( MavenProject project )
+- throws ArtifactResolutionException, ArtifactNotFoundException, IOException, XmlPullParserException
++ throws ArtifactResolverException, IOException, XmlPullParserException
+ {
+ List models = new ArrayList();
+
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java
-index da8da08..7299d3b 100644
+index 458554a..c48205f 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireUpperBoundDeps.java
@@ -26,10 +26,7 @@ import java.util.List;
- import java.util.Map;
-
- import org.apache.maven.artifact.Artifact;
--import org.apache.maven.artifact.factory.ArtifactFactory;
--import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
- import org.apache.maven.artifact.repository.ArtifactRepository;
--import org.apache.maven.artifact.resolver.ArtifactCollector;
- import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
- import org.apache.maven.artifact.versioning.ArtifactVersion;
- import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
+ import java.util.Map;
+
+ import org.apache.maven.artifact.Artifact;
+-import org.apache.maven.artifact.factory.ArtifactFactory;
+-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
+ import org.apache.maven.artifact.repository.ArtifactRepository;
+-import org.apache.maven.artifact.resolver.ArtifactCollector;
+ import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
+ import org.apache.maven.artifact.versioning.ArtifactVersion;
+ import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
@@ -37,11 +34,13 @@ import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
- import org.apache.maven.plugin.logging.Log;
-+import org.apache.maven.project.DefaultProjectBuildingRequest;
- import org.apache.maven.project.MavenProject;
--import org.apache.maven.shared.dependency.tree.DependencyNode;
--import org.apache.maven.shared.dependency.tree.DependencyTreeBuilder;
--import org.apache.maven.shared.dependency.tree.DependencyTreeBuilderException;
--import org.apache.maven.shared.dependency.tree.traversal.DependencyNodeVisitor;
-+import org.apache.maven.project.ProjectBuildingRequest;
-+import org.apache.maven.shared.dependency.graph.DependencyGraphBuilder;
-+import org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException;
-+import org.apache.maven.shared.dependency.graph.DependencyNode;
-+import org.apache.maven.shared.dependency.graph.traversal.DependencyNodeVisitor;
- import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
- import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
-
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
+ import org.apache.maven.plugin.logging.Log;
++import org.apache.maven.project.DefaultProjectBuildingRequest;
+ import org.apache.maven.project.MavenProject;
+-import org.apache.maven.shared.dependency.tree.DependencyNode;
+-import org.apache.maven.shared.dependency.tree.DependencyTreeBuilder;
+-import org.apache.maven.shared.dependency.tree.DependencyTreeBuilderException;
+-import org.apache.maven.shared.dependency.tree.traversal.DependencyNodeVisitor;
++import org.apache.maven.project.ProjectBuildingRequest;
++import org.apache.maven.shared.dependency.graph.DependencyGraphBuilder;
++import org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException;
++import org.apache.maven.shared.dependency.graph.DependencyNode;
++import org.apache.maven.shared.dependency.graph.traversal.DependencyNodeVisitor;
+ import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
+ import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
+
@@ -105,18 +104,10 @@ public class RequireUpperBoundDeps
- {
- try
- {
-- MavenProject project = (MavenProject) helper.evaluate( "${project}" );
-- DependencyTreeBuilder dependencyTreeBuilder =
-- (DependencyTreeBuilder) helper.getComponent( DependencyTreeBuilder.class );
-- ArtifactRepository repository = (ArtifactRepository) helper.evaluate( "${localRepository}" );
-- ArtifactFactory factory = (ArtifactFactory) helper.getComponent( ArtifactFactory.class );
-- ArtifactMetadataSource metadataSource =
-- (ArtifactMetadataSource) helper.getComponent( ArtifactMetadataSource.class );
-- ArtifactCollector collector = (ArtifactCollector) helper.getComponent( ArtifactCollector.class );
-- ArtifactFilter filter = null; // we need to evaluate all scopes
-- DependencyNode node =
-- dependencyTreeBuilder.buildDependencyTree( project, repository, factory, metadataSource, filter,
-- collector );
-+ ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
-+ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
-+ DependencyGraphBuilder dependencyGraphBuilder = (DependencyGraphBuilder) helper.getComponent( DependencyGraphBuilder.class );
-+ DependencyNode node = dependencyGraphBuilder.buildDependencyGraph( projectBuildingRequest, null );
- return node;
- }
- catch ( ExpressionEvaluationException e )
+ {
+ try
+ {
+- MavenProject project = (MavenProject) helper.evaluate( "${project}" );
+- DependencyTreeBuilder dependencyTreeBuilder =
+- (DependencyTreeBuilder) helper.getComponent( DependencyTreeBuilder.class );
+- ArtifactRepository repository = (ArtifactRepository) helper.evaluate( "${localRepository}" );
+- ArtifactFactory factory = (ArtifactFactory) helper.getComponent( ArtifactFactory.class );
+- ArtifactMetadataSource metadataSource =
+- (ArtifactMetadataSource) helper.getComponent( ArtifactMetadataSource.class );
+- ArtifactCollector collector = (ArtifactCollector) helper.getComponent( ArtifactCollector.class );
+- ArtifactFilter filter = null; // we need to evaluate all scopes
+- DependencyNode node =
+- dependencyTreeBuilder.buildDependencyTree( project, repository, factory, metadataSource, filter,
+- collector );
++ ProjectBuildingRequest projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
++ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
++ DependencyGraphBuilder dependencyGraphBuilder = (DependencyGraphBuilder) helper.getComponent( DependencyGraphBuilder.class );
++ DependencyNode node = dependencyGraphBuilder.buildDependencyGraph( projectBuildingRequest, null );
+ return node;
+ }
+ catch ( ExpressionEvaluationException e )
@@ -127,7 +118,7 @@ public class RequireUpperBoundDeps
- {
- throw new EnforcerRuleException( "Unable to lookup a component " + e.getLocalizedMessage(), e );
- }
-- catch ( DependencyTreeBuilderException e )
-+ catch ( DependencyGraphBuilderException e )
- {
- throw new EnforcerRuleException( "Could not build dependency tree " + e.getLocalizedMessage(), e );
- }
+ {
+ throw new EnforcerRuleException( "Unable to lookup a component " + e.getLocalizedMessage(), e );
+ }
+- catch ( DependencyTreeBuilderException e )
++ catch ( DependencyGraphBuilderException e )
+ {
+ throw new EnforcerRuleException( "Could not build dependency tree " + e.getLocalizedMessage(), e );
+ }
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/DependencyVersionMap.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/DependencyVersionMap.java
-index 64f6742..4d95ed9 100644
+index b6213fa..2c2a645 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/DependencyVersionMap.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/DependencyVersionMap.java
@@ -26,8 +26,8 @@ import java.util.Map;
-
- import org.apache.maven.artifact.Artifact;
- import org.apache.maven.plugin.logging.Log;
--import org.apache.maven.shared.dependency.tree.DependencyNode;
--import org.apache.maven.shared.dependency.tree.traversal.DependencyNodeVisitor;
-+import org.apache.maven.shared.dependency.graph.DependencyNode;
-+import org.apache.maven.shared.dependency.graph.traversal.DependencyNodeVisitor;
-
- /**
- * @author Brian Fox
+
+ import org.apache.maven.artifact.Artifact;
+ import org.apache.maven.plugin.logging.Log;
+-import org.apache.maven.shared.dependency.tree.DependencyNode;
+-import org.apache.maven.shared.dependency.tree.traversal.DependencyNodeVisitor;
++import org.apache.maven.shared.dependency.graph.DependencyNode;
++import org.apache.maven.shared.dependency.graph.traversal.DependencyNodeVisitor;
+
+ /**
+ * @author Brian Fox
@@ -132,4 +132,4 @@ public class DependencyVersionMap
- }
- return output;
- }
+ }
+ return output;
+ }
-}
\ No newline at end of file
-+}
++}
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/EnforcerRuleUtils.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/EnforcerRuleUtils.java
-index ef72a27..31c7885 100644
+index c122e10..a9208f7 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/EnforcerRuleUtils.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/EnforcerRuleUtils.java
@@ -23,12 +23,15 @@ import java.util.List;
-
- import org.apache.maven.artifact.factory.ArtifactFactory;
- import org.apache.maven.artifact.repository.ArtifactRepository;
--import org.apache.maven.artifact.resolver.ArtifactResolver;
- import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
- import org.apache.maven.model.Plugin;
- import org.apache.maven.model.ReportPlugin;
- import org.apache.maven.plugin.logging.Log;
-+import org.apache.maven.project.DefaultProjectBuildingRequest;
- import org.apache.maven.project.MavenProject;
-+import org.apache.maven.project.ProjectBuildingRequest;
-+import org.apache.maven.shared.artifact.resolve.ArtifactResolver;
-+import org.apache.maven.shared.artifact.resolve.ArtifactResolverException;
- import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
- import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
-
+
+ import org.apache.maven.artifact.factory.ArtifactFactory;
+ import org.apache.maven.artifact.repository.ArtifactRepository;
+-import org.apache.maven.artifact.resolver.ArtifactResolver;
+ import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
+ import org.apache.maven.model.Plugin;
+ import org.apache.maven.model.ReportPlugin;
+ import org.apache.maven.plugin.logging.Log;
++import org.apache.maven.project.DefaultProjectBuildingRequest;
+ import org.apache.maven.project.MavenProject;
++import org.apache.maven.project.ProjectBuildingRequest;
++import org.apache.maven.shared.artifact.resolve.ArtifactResolver;
++import org.apache.maven.shared.artifact.resolve.ArtifactResolverException;
+ import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
+ import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
+
@@ -46,42 +49,14 @@ public class EnforcerRuleUtils
- /** The resolver. */
- ArtifactResolver resolver;
-
-- /** The local. */
-- ArtifactRepository local;
--
-- /** The remote repositories. */
-- List remoteRepositories;
--
- /** The log. */
- Log log;
-
- /** The project. */
-- MavenProject project;
-+ ProjectBuildingRequest projectBuildingRequest;
-
- private EnforcerRuleHelper helper;
-
-- /**
-- * Instantiates a new enforcer rule utils.
-- *
-- * @param theFactory the the factory
-- * @param theResolver the the resolver
-- * @param theLocal the the local
-- * @param theRemoteRepositories the the remote repositories
-- * @param project the project
-- * @param theLog the the log
-- */
-- public EnforcerRuleUtils( ArtifactFactory theFactory, ArtifactResolver theResolver, ArtifactRepository theLocal,
-- List theRemoteRepositories, MavenProject project, Log theLog )
-- {
-- super();
-- this.factory = theFactory;
-- this.resolver = theResolver;
-- this.local = theLocal;
-- this.remoteRepositories = theRemoteRepositories;
-- this.log = theLog;
-- this.project = project;
-- }
--
- /**
- * Instantiates a new enforcer rule utils.
- *
+ /** The resolver. */
+ ArtifactResolver resolver;
+
+- /** The local. */
+- ArtifactRepository local;
+-
+- /** The remote repositories. */
+- List remoteRepositories;
+-
+ /** The log. */
+ Log log;
+
+ /** The project. */
+- MavenProject project;
++ ProjectBuildingRequest projectBuildingRequest;
+
+ private EnforcerRuleHelper helper;
+
+- /**
+- * Instantiates a new enforcer rule utils.
+- *
+- * @param theFactory the the factory
+- * @param theResolver the the resolver
+- * @param theLocal the the local
+- * @param theRemoteRepositories the the remote repositories
+- * @param project the project
+- * @param theLog the the log
+- */
+- public EnforcerRuleUtils( ArtifactFactory theFactory, ArtifactResolver theResolver, ArtifactRepository theLocal,
+- List theRemoteRepositories, MavenProject project, Log theLog )
+- {
+- super();
+- this.factory = theFactory;
+- this.resolver = theResolver;
+- this.local = theLocal;
+- this.remoteRepositories = theRemoteRepositories;
+- this.log = theLog;
+- this.project = project;
+- }
+-
+ /**
+ * Instantiates a new enforcer rule utils.
+ *
@@ -97,9 +72,8 @@ public class EnforcerRuleUtils
- {
- factory = (ArtifactFactory) helper.getComponent( ArtifactFactory.class );
- resolver = (ArtifactResolver) helper.getComponent( ArtifactResolver.class );
-- local = (ArtifactRepository) helper.evaluate( "${localRepository}" );
-- project = (MavenProject) helper.evaluate( "${project}" );
-- remoteRepositories = project.getRemoteArtifactRepositories();
-+ projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
-+ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
- }
- catch ( ComponentLookupException e )
- {
+ {
+ factory = (ArtifactFactory) helper.getComponent( ArtifactFactory.class );
+ resolver = (ArtifactResolver) helper.getComponent( ArtifactResolver.class );
+- local = (ArtifactRepository) helper.evaluate( "${localRepository}" );
+- project = (MavenProject) helper.evaluate( "${project}" );
+- remoteRepositories = project.getRemoteArtifactRepositories();
++ projectBuildingRequest = new DefaultProjectBuildingRequest( (ProjectBuildingRequest) helper.evaluate( "${session.projectBuildingRequest}" ) );
++ projectBuildingRequest.setProject( (MavenProject) helper.evaluate( "${project}" ) );
+ }
+ catch ( ComponentLookupException e )
+ {
diff --git a/pom.xml b/pom.xml
-index 4343304..1f5e962 100644
+index 83306f1..79dd17f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -63,7 +63,7 @@
-
-
-
-- 3.0
-+ 3.3.1
- enforcer-archives/enforcer-LATEST
- 2.21.0
-
+
+
+
+- 3.0
++ 3.3.1
+ enforcer-archives/enforcer-LATEST
+ 7
+
@@ -139,16 +139,21 @@
- commons-codec
- 1.6
-
-+
-+ org.apache.maven.shared
-+ maven-artifact-transfer
-+ 3.0-SNAPSHOT
-+
-
- org.apache.maven.plugin-testing
- maven-plugin-testing-harness
-- 2.1
-+ 3.3.0
- test
-
-
- org.apache.maven.shared
- maven-dependency-tree
-- 2.2
-+ 3.0
-
-
- org.assertj
---
-2.20.1
-
+ commons-codec
+ 1.12
+
++
++ org.apache.maven.shared
++ maven-artifact-transfer
++ 3.0-SNAPSHOT
++
+
+ org.apache.maven.plugin-testing
+ maven-plugin-testing-harness
+- 2.1
++ 3.3.0
+ test
+
+
+ org.apache.maven.shared
+ maven-dependency-tree
+- 2.2
++ 3.0
+
+
+ org.apache.maven.resolver
diff --git a/maven-enforcer.spec b/maven-enforcer.spec
index 5f04d74..5e69ed0 100644
--- a/maven-enforcer.spec
+++ b/maven-enforcer.spec
@@ -1,14 +1,16 @@
%bcond_with bootstrap
Name: maven-enforcer
-Version: 3.0.0~M2
-Release: 2%{?dist}
+Version: 3.0.0~M3
+Release: 1%{?dist}
Summary: Maven Enforcer
License: ASL 2.0
URL: http://maven.apache.org/enforcer
BuildArch: noarch
-Source0: http://repo1.maven.org/maven2/org/apache/maven/enforcer/enforcer/3.0.0-M2/enforcer-3.0.0-M2-source-release.zip
+%global upstream_version %(echo '%{version}' | tr '~' '-')
+
+Source0: https://repo1.maven.org/maven2/org/apache/maven/enforcer/enforcer/%{upstream_version}/enforcer-%{upstream_version}-source-release.zip
Patch0: 0001-Port-to-Maven-3-API.patch
@@ -65,7 +67,7 @@ This component contains the standard Enforcer Rules.
%prep
-%setup -q -n enforcer-3.0.0-M2
+%setup -q -n enforcer-%{upstream_version}
%patch0 -p1
# Port to maven-artifact-transfer 0.11.0
@@ -109,6 +111,9 @@ sed -e "s|plexus-maven-plugin|plexus-compon
%doc LICENSE NOTICE
%changelog
+* Fri May 14 2021 Marian Koncek - 3.0.0~M3-1
+- Update to upstream version 3.0.0~M3
+
* Tue Nov 05 2019 Mikolaj Izdebski - 3.0.0~M2-2
- Mass rebuild for javapackages-tools 201902
diff --git a/sources b/sources
index 9538a76..950df4a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (enforcer-3.0.0-M2-source-release.zip) = d75273c1c4a534ed8e9e68581107160ffce15cb79de1b9e11d481d5c89e2c8f1f42324e5245d4bf6922972a5957f9aa6ea4db3f83a16afde8e52cd957e2698ec
+SHA512 (enforcer-3.0.0-M3-source-release.zip) = ab3fe7f71bce102e2a5f4539c61f4a3476748829a77ec52495adf833b424ab81830b59058df37ad4175cf9e368d38d1932bc6bff26ece3c64163a2fdbea83134