You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2020/11/27 17:19:42 UTC
[maven] 02/02: [MNG-5728] Switch the default checksum policy from
"warn" to "fail"
This is an automated email from the ASF dual-hosted git repository.
rfscholte pushed a commit to branch MNG-5728
in repository https://gitbox.apache.org/repos/asf/maven.git
commit 26cd15bb6a9a27f2a50e12909da237e1b98e1570
Author: rfscholte <rf...@apache.org>
AuthorDate: Fri Nov 27 18:19:29 2020 +0100
[MNG-5728] Switch the default checksum policy from "warn" to "fail"
---
.../artifact/repository/ArtifactRepositoryPolicy.java | 2 +-
.../maven/artifact/AbstractArtifactComponentTestCase.java | 15 +++++++++++++++
.../maven/repository/legacy/DefaultWagonManagerTest.java | 5 +++++
maven-model/src/main/mdo/maven.mdo | 5 ++---
4 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryPolicy.java b/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryPolicy.java
index 5ce317f..24525b4 100644
--- a/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryPolicy.java
+++ b/maven-artifact/src/main/java/org/apache/maven/artifact/repository/ArtifactRepositoryPolicy.java
@@ -71,7 +71,7 @@ public class ArtifactRepositoryPolicy
if ( checksumPolicy == null )
{
- checksumPolicy = CHECKSUM_POLICY_WARN;
+ checksumPolicy = CHECKSUM_POLICY_FAIL;
}
this.checksumPolicy = checksumPolicy;
}
diff --git a/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java b/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java
index dbd6e8f..c790a93 100644
--- a/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java
+++ b/maven-compat/src/test/java/org/apache/maven/artifact/AbstractArtifactComponentTestCase.java
@@ -39,6 +39,7 @@ import org.eclipse.aether.collection.DependencySelector;
import org.eclipse.aether.collection.DependencyTraverser;
import org.eclipse.aether.internal.impl.SimpleLocalRepositoryManagerFactory;
import org.eclipse.aether.repository.LocalRepository;
+import org.eclipse.aether.spi.connector.layout.RepositoryLayout;
import org.eclipse.aether.util.graph.manager.ClassicDependencyManager;
import org.eclipse.aether.util.graph.selector.AndDependencySelector;
import org.eclipse.aether.util.graph.selector.ExclusionDependencySelector;
@@ -60,9 +61,12 @@ import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.nio.charset.StandardCharsets;
+import java.security.MessageDigest;
import java.util.ArrayList;
import java.util.List;
+import javax.xml.bind.DatatypeConverter;
+
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl </a>
*/
@@ -298,6 +302,17 @@ public abstract class AbstractArtifactComponentTestCase
{
writer.write( artifact.getId() );
}
+
+ MessageDigest md = MessageDigest.getInstance( "MD5" );
+ md.update( artifact.getId().getBytes() );
+ byte[] digest = md.digest();
+
+ String md5path = repository.pathOf( artifact ) + ".md5";
+ File md5artifactFile = new File( repository.getBasedir(), md5path );
+ try ( Writer writer = new OutputStreamWriter( new FileOutputStream( md5artifactFile ), StandardCharsets.ISO_8859_1) )
+ {
+ writer.append( DatatypeConverter.printHexBinary( digest ) );
+ }
}
protected Artifact createArtifact( String artifactId, String version )
diff --git a/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java b/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
index 1b3cb79..3424ac1 100644
--- a/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/repository/legacy/DefaultWagonManagerTest.java
@@ -101,7 +101,10 @@ public class DefaultWagonManagerTest
StringWagon wagon = (StringWagon) wagonManager.getWagon( "string" );
wagon.addExpectedContent( repos.get( 0 ).getLayout().pathOf( artifact ), "expected" );
+ wagon.addExpectedContent( repos.get( 0 ).getLayout().pathOf( artifact ) + ".md5", "cd26d9e10ce691cc69aa2b90dcebbdac" );
wagon.addExpectedContent( repos.get( 1 ).getLayout().pathOf( artifact ), "expected" );
+ wagon.addExpectedContent( repos.get( 1 ).getLayout().pathOf( artifact ) + ".md5", "cd26d9e10ce691cc69aa2b90dcebbdac" );
+
class TransferListener
extends AbstractTransferListener
@@ -170,6 +173,7 @@ public class DefaultWagonManagerTest
StringWagon wagon = (StringWagon) wagonManager.getWagon( "string" );
wagon.addExpectedContent( repo.getLayout().pathOf( artifact ), "expected" );
+ wagon.addExpectedContent( repo.getLayout().pathOf( artifact ) + ".md5", "cd26d9e10ce691cc69aa2b90dcebbdac" );
wagonManager.getArtifact( artifact, repo, null, false );
@@ -271,6 +275,7 @@ public class DefaultWagonManagerTest
ArtifactRepository repo = createStringRepo();
StringWagon wagon = (StringWagon) wagonManager.getWagon( "string" );
wagon.addExpectedContent( repo.getLayout().pathOf( artifact ), "expected" );
+ wagon.addExpectedContent( repo.getLayout().pathOf( artifact ) + ".md5", "cd26d9e10ce691cc69aa2b90dcebbdac" );
/* getArtifact */
assertFalse( "Transfer listener is registered before test",
diff --git a/maven-model/src/main/mdo/maven.mdo b/maven-model/src/main/mdo/maven.mdo
index 61d9ceb..dbf0537 100644
--- a/maven-model/src/main/mdo/maven.mdo
+++ b/maven-model/src/main/mdo/maven.mdo
@@ -1997,10 +1997,9 @@
What to do when verification of an artifact checksum fails. Valid values are
<code>ignore</code>
,
- <code>fail</code>
+ <code>fail</code> (default for Maven 4 and above)
or
- <code>warn</code>
- (the default).
+ <code>warn</code> (default for Maven 2 and 3)
]]>
</description>
<type>String</type>