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

Improve classpath index documentation for reproducible builds #41265

Closed
schosin opened this issue Jun 28, 2024 · 3 comments
Closed

Improve classpath index documentation for reproducible builds #41265

schosin opened this issue Jun 28, 2024 · 3 comments
Assignees
Labels
type: documentation A documentation update
Milestone

Comments

@schosin
Copy link

schosin commented Jun 28, 2024

The documentation for the classpath index section of nested jars should mention the different behaviour if reproducible builds are enabled. [1]

I ran into issues with classpath order after enabling reproducible maven builds (different, outdated JAXB implementation picked up) and came across that page. Since there was no mention of reproducible builds, I suspected a bug and looked at the source code responsible for classpath.idx.

[1]

When generated by the build plugins, this classpath ordering matches that used by the build system for running and testing the application.

@spring-projects-issues spring-projects-issues added the status: waiting-for-triage An issue we've not yet triaged label Jun 28, 2024
@wilkinsona
Copy link
Member

Sorry, I'm not sure what you're suggesting. We already document the fact that the order in the index file matches the order that's used by the build system. What more did you want to see? I'm a little reluctant to mention specifics as there are lots of ways in which a build system's classpath ordering can be changed and we don't want to try to document them all.

@wilkinsona wilkinsona added the status: waiting-for-feedback We need additional information before we can continue label Jun 28, 2024
@schosin
Copy link
Author

schosin commented Jun 28, 2024

My bad, I am talking about the changes made by this commit: 40a9c4d

It changes the order of the classpath.idx for reproducible builds to alphabetical. I'm suggesting that this should be mentioned in the documentation.

@spring-projects-issues spring-projects-issues added status: feedback-provided Feedback has been provided and removed status: waiting-for-feedback We need additional information before we can continue labels Jun 28, 2024
@wilkinsona
Copy link
Member

wilkinsona commented Jun 28, 2024

Thanks. I'd forgotten that Maven doesn't apply reproducible ordering consistently and that there's some logic in its war plugin that we had to replicate. I agree that this is worth documenting if it only applies when packaging and not to when running (spring-boot:run) or testing the application.

@wilkinsona wilkinsona added type: documentation A documentation update and removed status: waiting-for-triage An issue we've not yet triaged status: feedback-provided Feedback has been provided labels Jun 28, 2024
@wilkinsona wilkinsona added this to the 3.2.x milestone Jun 28, 2024
@mhalbritter mhalbritter self-assigned this Oct 14, 2024
@mhalbritter mhalbritter modified the milestones: 3.2.x, 3.2.11 Oct 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: documentation A documentation update
Projects
None yet
Development

No branches or pull requests

4 participants