apache / apache/maven-surefire

[SUREFIRE-1804] fix surefire-shadefire-3.0.0-M5.jar reproducibility issue on other envs

Open
#3,051 0 comments 0 reactions 0 assignees View on GitHub
priority:major
Dominant language
Java
Stars
461
Forks
588
Avg merge
1d 8h
Merged PRs (30d)
19

Description

**[Hervé Boutemy](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=hboutemy)** opened **[SUREFIRE-1804](https://issues.apache.org/jira/browse/SUREFIRE-1804?redirect=false)** and commented

```
$ diffoscope target/reference/surefire-shadefire-3.0.0-M5.jar surefire-shadefire/target/surefire-shadefire-3.0.0-M5.jar
--- target/reference/surefire-shadefire-3.0.0-M5.jar
+++ surefire-shadefire/target/surefire-shadefire-3.0.0-M5.jar
├── zipinfo /dev/stdin
│ @@ -183,943 +183,943 @@
│ -rw---- 2.0 fat 1553 bl defN 20-Jun-10 18:11 org/apache/maven/shadefire/plugin/surefire/log/api/ConsoleLoggerUtils.class
│ -rw---- 2.0 fat 1650 bl defN 20-Jun-10 18:11 org/apache/maven/shadefire/plugin/surefire/log/api/Level.class
│ -rw---- 2.0 fat 1354 bl defN 20-Jun-10 18:11 org/apache/maven/shadefire/plugin/surefire/log/api/NullConsoleLogger.class
│ -rw---- 2.0 fat 1749 bl defN 20-Jun-10 18:11 org/apache/maven/shadefire/plugin/surefire/log/api/PrintStreamLogger.class
│ -rw---- 2.0 fat 0 bl defN 20-Jun-10 18:11 META-INF/maven/org.apache.maven.surefire/surefire-logger-api/
│ -rw---- 2.0 fat 3695 bl defN 20-Jun-10 18:11 META-INF/maven/org.apache.maven.surefire/surefire-logger-api/pom.xml
│ -rw---- 2.0 fat 85 bl defN 20-Jun-10 18:11 META-INF/maven/org.apache.maven.surefire/surefire-logger-api/pom.properties
│ --rw---- 2.0 fat 0 bl defN 19-Nov-13 08:08 META-INF/maven/org.apache.maven.surefire/surefire-shared-utils/
│ --rw---- 2.0 fat 119 bl defN 19-Nov-13 08:08 META-INF/maven/org.apache.maven.surefire/surefire-shared-utils/pom.properties
│ +-rw---- 2.0 fat 0 bl defN 19-Nov-13 04:02 META-INF/maven/org.apache.maven.surefire/surefire-shared-utils/
│ +-rw---- 2.0 fat 119 bl defN 19-Nov-13 04:02 META-INF/maven/org.apache.maven.surefire/surefire-shared-utils/pom.properties
│ -rw---- 2.0 fat 5041 bl defN 19-Nov-13 03:50 META-INF/maven/org.apache.maven.surefire/surefire-shared-utils/pom.xml
│ --rw---- 2.0 fat 0 bl defN 19-Nov-13 08:08 org/apache/maven/shadefire/surefire/shared/
│ --rw---- 2.0 fat 0 bl defN 19-Nov-13 08:08 org/apache/maven/shadefire/surefire/shared/utils/
│ --rw---- 2.0 fat 24122 bl defN 19-Nov-13 08:08 org/apache/maven/shadefire/surefire/shared/utils/StringUtils.class
[...]
│ +-rw---- 2.0 fat 0 bl defN 19-Nov-13 04:02 org/apache/maven/shadefire/surefire/shared/
│ +-rw---- 2.0 fat 0 bl defN 19-Nov-13 04:02 org/apache/maven/shadefire/surefire/shared/utils/
│ +-rw---- 2.0 fat 24122 bl defN 19-Nov-13 04:02 org/apache/maven/shadefire/surefire/shared/utils/StringUtils.class

[...]
```

Surprisingly, some files don't have the same timestamp in reference build and in local build, but not all
These files are files that are shaded by maven-shade-plugin: for sure, a maven-shade-plugin fragility, no idea yet why only some shaded files suffer from this timestamp calculation difference (???)

---

**Affects:** 3.0.0-M5

This issue is a sub-task of [SUREFIRE-1802](https://issues.apache.org/jira/browse/SUREFIRE-1802)

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the diffoscope comparison between target/reference/surefire-shadefire-3.0.0-M5.jar and surefire-shadefire/target/surefire-shadefire-3.0.0-M5.jar. Investigate the maven-shade-plugin handling of shaded files and their timestamps across environments; done means the shaded JAR has reproducible timestamps and matches the reference build.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.