diabonas opened a new pull request #9:
URL: https://github.com/apache/commons-parent/pull/9


   
[Bnd](https://github.com/bndtools/bnd)/[maven-bundle-plugin](https://felix.apache.org/documentation/subprojects/apache-felix-maven-bundle-plugin-bnd.html)
 adds a couple of extra manifest headers like `Bnd-LastModified` recording 
information about the build. This makes it harder to reproduce the JAR bit for 
bit on a different machine. The [documented 
way](https://github.com/bndtools/bnd/blob/cc61fa32da6b779a9607d02b78c2052015493eb6/maven/bnd-maven-plugin/README.md#reproducible-builds)
 to remove these is the `-noextraheaders: true` instruction.
   
   Even after applying this instruction, JARs still include a 
`Include-Resource` header, whose ordering appears to be file system dependent. 
It is removed in `maven-bundle-plugin` by default, but the [existing 
`<_removeheaders>` 
tag](https://github.com/apache/commons-parent/blob/b39108aba84b93b5b57b8bdc6c934fbadd98521f/pom.xml#L902)
 overrides
   this. Use merged properties to add headers to be removed instead of 
replacing the list, as suggested upstream by @rotty3000 in 
https://github.com/bndtools/bnd/issues/4221#issuecomment-656258021.
   
   This was originally proposed for commons-lang in 
https://github.com/apache/commons-lang/pull/578, also see the discussion there 
as well as upstream in https://github.com/bndtools/bnd/issues/4221. Since the 
problematic `<_removeheaders>` is in commons-parent and other commons-* 
projects may profit from reproducible builds as well, this seems to be the 
appropriate place to fix the issue.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to