Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GROOVY-11571: remove excess manifest attributes #2154

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

eric-milles
Copy link
Member

@eric-milles eric-milles commented Feb 25, 2025

I suspect not all of these are still required. This is a draft to explore removing all or some. And for any kept, adding some docs and tests.

  • Bundle-ClassPath
  • DynamicImport-Package
  • Eclipse-BuddyPolicy
  • Eclipse-ExtensibleAPI
  • Extension-Name
  • Tool

https://issues.apache.org/jira/browse/GROOVY-11571

* Bundle-ClassPath
* DynamicImport-Package
* Eclipse-BuddyPolicy
* Eclipse-ExtensibleAPI
* Extension-Name
@eric-milles
Copy link
Member Author

eric-milles commented Feb 25, 2025

This is also a work-in-progress for dropping Ant-Version and Created-By from the jarjar output, which retains those attributes due to use of the Ant jar task to repackage the jarjar archive.

@eric-milles eric-milles changed the title remove excess manifest attributes GROOVY-11571: remove excess manifest attributes Feb 25, 2025
@codecov-commenter
Copy link

codecov-commenter commented Feb 25, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 68.8274%. Comparing base (c471e5d) to head (518f7ab).
Report is 3 commits behind head on master.

Additional details and impacted files

Impacted file tree graph

@@                Coverage Diff                 @@
##               master      #2154        +/-   ##
==================================================
+ Coverage     68.8238%   68.8274%   +0.0035%     
+ Complexity      29442      29441         -1     
==================================================
  Files            1420       1420                
  Lines          113173     113173                
  Branches        19558      19558                
==================================================
+ Hits            77890      77894         +4     
+ Misses          28740      28737         -3     
+ Partials         6543       6542         -1     

see 3 files with indirect coverage changes

manifest {
// because we don't want to use JDK 1.8.0_91, we don't care and it will
// introduce cache misses
attribute(name: 'Created-By', value: 'Gradle')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 on deleting this
MANIFEST.MF now contains something like:

Created-By: 17.0.13+11-LTS (Azul Systems, Inc.)

Instead of:

Created-By: Gradle

Which, as well as impacting Gradle cache, breaks our reproducible build goal. "Created-By" is already in the excludedFromManifest list, so I guess can't really be excluded, hence its forced value.

@paulk-asert
Copy link
Contributor

This is also a work-in-progress for dropping Ant-Version and Created-By from the jarjar output, which retains those attributes due to use of the Ant jar task to repackage the jarjar archive.

Saw this after my previous comment. Yes, if we can really remove Created-By and Ant-Version, that would be great and remove the need for the hard-coded value for Created-By.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants