-
Notifications
You must be signed in to change notification settings - Fork 549
8371855: Time stamps are missing on zip bundles with gradle 9 #1993
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
base: master
Are you sure you want to change the base?
Conversation
|
👋 Welcome back arapte! A progress list of the required criteria for merging this PR into |
|
❗ This change is not yet ready to be integrated. |
|
Why don't we instead start building JavaFX in a reproducible manner? I've been creating reproducible builds of JavaFX for years now (with the caveat of this bug). Those builds have over 2,000 active users without any reported problems. I set the following environment variable before calling # Sets the environment variable for reproducible builds
SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct)
export SOURCE_DATE_EPOCHDoing so now can only help Johan's efforts to replace the Gradle build with its JDK-based alternative. |
|
It isn't an either-or. Since we aren't going to require the setting of SOURCE_DATE_EPOCH, we need to fix the timestamps when it isn't set. Separately, it would be a good idea to start using it for our builds. I'll file an RFE to do that. Perhaps it's worth considering for JavaFX 27 (so that we start using it early in the release cycle).
We wouldn't do it exactly as you suggest for a number of reasons, but as part of using it for our build, we would publish the @arapte Have you tested this with Reviewers: @kevinrushforth @tiainen /reviewers 2 |
|
@kevinrushforth |
kevinrushforth
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All testing looks good, including with / without SOURCE_DATE_EPOCH.
Please confirm that you have done a CI build.
Thanks for testing with
Yes Kevin, CI build completed successfully. |
Gradle 9 onwards, the Archive tasks (Jar, Ear, War, Zip, AbstractArchiveTask) produce reproducible archives by default
Under this change, there are two factors that affect our zip files.
Especially the timestamp is a concern, the files now have a fixed timestamp i.e. 1 Feb 1980 instead of the creation date.
the gradle upgrading guide provides the solution on how to restore previous behavior. The fix picks 2 necessary flags.
Verified that for all files extracted from generated zip files:
Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jfx.git pull/1993/head:pull/1993$ git checkout pull/1993Update a local copy of the PR:
$ git checkout pull/1993$ git pull https://git.openjdk.org/jfx.git pull/1993/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 1993View PR using the GUI difftool:
$ git pr show -t 1993Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jfx/pull/1993.diff
Using Webrev
Link to Webrev Comment