From abe3dc32592c76b028d6ff466aba1274f82097d0 Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Mon, 25 Apr 2022 00:47:17 +0200 Subject: [PATCH] Update to upstream version 3.0.0 --- .gitignore | 1 + 0001-Port-to-Maven-3-API.patch | 567 --------------------------------- maven-enforcer.spec | 55 ++-- sources | 2 +- 4 files changed, 34 insertions(+), 591 deletions(-) delete mode 100644 0001-Port-to-Maven-3-API.patch diff --git a/.gitignore b/.gitignore index 8315d67..fd8d643 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ /enforcer-1.4.1-source-release.zip /enforcer-3.0.0-M2-source-release.zip /enforcer-3.0.0-M3-source-release.zip +/enforcer-3.0.0-source-release.zip diff --git a/0001-Port-to-Maven-3-API.patch b/0001-Port-to-Maven-3-API.patch deleted file mode 100644 index fa1ef5d..0000000 --- a/0001-Port-to-Maven-3-API.patch +++ /dev/null @@ -1,567 +0,0 @@ -From 6a4c8a3177ad95989baa4df28d8a3479faf8be8c Mon Sep 17 00:00:00 2001 -From: Mikolaj Izdebski -Date: Mon, 12 Oct 2015 15:48:16 +0200 -Subject: [PATCH] Port to Maven 3 API - ---- - enforcer-rules/pom.xml | 6 ++- - .../enforcer/AbstractBanDependencies.java | 13 +++-- - .../enforcer/BanTransitiveDependencies.java | 7 ++- - .../enforcer/DependencyConvergence.java | 29 +++++------ - .../enforcer/RequirePluginVersions.java | 51 +++++++------------ - .../enforcer/RequireUpperBoundDeps.java | 31 ++++------- - .../enforcer/utils/DependencyVersionMap.java | 6 +-- - .../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 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 -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 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,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 ) - { -@@ -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() ); -@@ -114,12 +117,12 @@ public abstract class AbstractBanDependencies - 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 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; -@@ -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 ) - { -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 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. -@@ -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 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; - -@@ -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 ) -@@ -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 ); - } - } - -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 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 -@@ -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 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; -@@ -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; - -@@ -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 ) -@@ -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 ); - } -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 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 -@@ -132,4 +132,4 @@ public class DependencyVersionMap - } - 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 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; - -@@ -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. - * -@@ -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 ) - { -diff --git a/pom.xml b/pom.xml -index 83306f1..79dd17f 100644 ---- a/pom.xml -+++ b/pom.xml -@@ -63,7 +63,7 @@ - - - -- 3.0 -+ 3.3.1 - enforcer-archives/enforcer-LATEST - 7 - -@@ -139,16 +139,21 @@ - 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 18a8d22..ff2e2d7 100644 --- a/maven-enforcer.spec +++ b/maven-enforcer.spec @@ -1,20 +1,14 @@ %bcond_with bootstrap Name: maven-enforcer -Version: 3.0.0~M3 -Release: 8%{?dist} +Version: 3.0.0 +Release: 1%{?dist} Summary: Maven Enforcer License: ASL 2.0 URL: https://maven.apache.org/enforcer BuildArch: noarch -%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 - -# TODO forward upstream -# https://issues.apache.org/jira/browse/MENFORCER-267 -Patch0: 0001-Port-to-Maven-3-API.patch +Source0: https://repo1.maven.org/maven2/org/apache/maven/enforcer/enforcer/%{version}/enforcer-%{version}-source-release.zip BuildRequires: maven-local %if %{with bootstrap} @@ -22,21 +16,21 @@ BuildRequires: javapackages-bootstrap %else BuildRequires: mvn(com.google.code.findbugs:jsr305) BuildRequires: mvn(commons-codec:commons-codec) +BuildRequires: mvn(commons-io:commons-io) BuildRequires: mvn(org.apache.commons:commons-lang3) -BuildRequires: mvn(org.apache.maven.enforcer:enforcer-api) -BuildRequires: mvn(org.apache.maven.enforcer:enforcer-rules) +BuildRequires: mvn(org.apache.maven.plugin-tools:maven-plugin-annotations) +BuildRequires: mvn(org.apache.maven.plugins:maven-enforcer-plugin) +BuildRequires: mvn(org.apache.maven.plugins:maven-plugin-plugin) +BuildRequires: mvn(org.apache.maven.resolver:maven-resolver-util) +BuildRequires: mvn(org.apache.maven.shared:maven-common-artifact-filters) +BuildRequires: mvn(org.apache.maven.shared:maven-dependency-tree) BuildRequires: mvn(org.apache.maven:maven-artifact) BuildRequires: mvn(org.apache.maven:maven-compat) BuildRequires: mvn(org.apache.maven:maven-core) BuildRequires: mvn(org.apache.maven:maven-parent:pom:) BuildRequires: mvn(org.apache.maven:maven-plugin-api) -BuildRequires: mvn(org.apache.maven.plugins:maven-plugin-plugin) -BuildRequires: mvn(org.apache.maven.plugin-tools:maven-plugin-annotations) -BuildRequires: mvn(org.apache.maven.shared:maven-artifact-transfer) -BuildRequires: mvn(org.apache.maven.shared:maven-common-artifact-filters) -BuildRequires: mvn(org.apache.maven.shared:maven-dependency-tree) -BuildRequires: mvn(org.codehaus.plexus:plexus-container-default) BuildRequires: mvn(org.codehaus.plexus:plexus-utils) +BuildRequires: mvn(org.eclipse.sisu:sisu-maven-plugin) %endif %description @@ -62,26 +56,36 @@ Summary: Enforcer Rules This component contains the standard Enforcer Rules. %package plugin -Summary: Enforcer Rules +Summary: Enforcer Plugin %description plugin -This component contains the standard Enforcer Rules. +The Enforcer plugin provides goals to control certain environmental +constraints such as Maven version, JDK version and OS family along +with many more built-in rules and user created rules. + +%package extension +Summary: Maven Enforcer Extension + +%description extension +The Enforcer Extension provides a way to globally define rules without +making use of pom inheritence. This way you don't have to adjust the +pom.xml, but you can enforce a set of rules. %prep -%setup -q -n enforcer-%{upstream_version} +%setup -q -n enforcer-%{version} find -name '*.java' -exec sed -i 's/\r//' {} + -%patch0 -p1 # Port to maven-artifact-transfer 0.11.0 sed -i 's/shared\.artifact\.resolve/shared.transfer.artifact.resolve/' enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/EnforcerRuleUtils.java sed -i 's/shared\.artifact\.resolve/shared.transfer.artifact.resolve/' enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java -%pom_remove_plugin :maven-enforcer-plugin - find -name EvaluateBeanshell.java -delete %pom_remove_dep :bsh enforcer-rules +# XXX extra-enforcer-rules are not packaged yet +%pom_remove_dep :extra-enforcer-rules + # Avoid dependency cycle %pom_xpath_inject pom:build/pom:pluginManagement/pom:plugins " @@ -110,10 +114,15 @@ sed -e "s|plexus-maven-plugin|plexus-compon %files plugin -f .mfiles-maven-enforcer-plugin +%files extension -f .mfiles-maven-enforcer-extension + %files javadoc -f .mfiles-javadoc %doc LICENSE NOTICE %changelog +* Sun Apr 24 2022 Mikolaj Izdebski - 3.0.0-1 +- Update to upstream version 3.0.0 + * Sat Feb 05 2022 Jiri Vanek - 3.0.0~M3-8 - Rebuilt for java-17-openjdk as system jdk diff --git a/sources b/sources index 950df4a..aba2bbd 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (enforcer-3.0.0-M3-source-release.zip) = ab3fe7f71bce102e2a5f4539c61f4a3476748829a77ec52495adf833b424ab81830b59058df37ad4175cf9e368d38d1932bc6bff26ece3c64163a2fdbea83134 +SHA512 (enforcer-3.0.0-source-release.zip) = 2916475006ee76223de1d2fc58129b42864275edcfcf14945bef7699fa29fb26e23f35532d54a83413f3ab1bfb84a05885418ce5aa3d6b25dad29299c5957523