apache / apache/maven-surefire
[SUREFIRE-1804] fix surefire-shadefire-3.0.0-M5.jar reproducibility issue on other envs
- 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
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