-
Notifications
You must be signed in to change notification settings - Fork 145
8339637: (tz) Update Timezone Data to 2024b #1143
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
Conversation
|
👋 Welcome back goetz! A progress list of the required criteria for merging this PR into |
|
@GoeLin This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be: You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 33 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. ➡️ To integrate this PR with the above commit message to the |
|
This backport pull request has now been updated with issue from the original commit. |
6df4177 to
812a6bc
Compare
|
Looking at this, but it will take a bit of time to work out what is going on with the tests. The The tz2024b_overridden_zones file brings back these fixed offsets. It does make me wonder if the 23u version of the tests were run against a tzdata with these fixed timezones back in play, as, for 21u, you seem to have ended up reverting the change which converts them from names to aliases. I'll try and dig into them further next week. |
|
Hi @gnu-andrew, I just missed adding tz2024b_overridden_zones to the PR, but it was there when I ran all the tests in my local dir. |
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.
I ran the java/text/Format, java/util/TimeZone, sun/util/calendar and sun/util/resources tests in four different scenarios:
- Build of 23u with its own tests -- all passed
- Build of 23u with the patches from this PR - failures from many tests, some untouched by this PR, due to changes post-21u
- Build of 21u with the patches from this PR - passed
- Build of 21u with the patches before the test reversion - three failures in
java/text/Format/DateFormat/TimeZoneNameTest.java,java/util/TimeZone/Bug6329116.javaandsun/util/resources/TimeZone/Bug4848242.java
In summary, this area has changed considerably due to changes in 22 & 23, notably JDK-8174269 and JDK-8317979. TimeZoneNameTest.java and Bug6329116.java are run with the COMPAT provider in 21u, which is removed by 8174269. The CLDR provider is using zone names from tzdata (JDK-8317979) while, I believe, COMPAT has its own set of names which are unaffected by the tzdata change.
I thus think most of the reversion is correct. There is one exception:
Link Asia/Ulaanbaatar Asia/Choibalsan
This is a change in the timezone data for 2024b; see "Asia/Choibalsan is now an alias for Asia/Ulaanbaatar rather than being a separate Zone with differing behavior before April 2008. This seems better given our wildly conflicting information about Mongolia's time zone history. (Thanks to Heitor David Pinto.)" from the tzdata release notes. So this change should be reinstated, but the ones related to the three-letter zone names are correct.
|
Hi @gnu-andrew |
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.
Yes, that one is an actual data change in this update, whereas the others are due to the three-letter zones being removed and don't seem to affect the COMPAT provider.
Change looks good to me now. Thanks for restoring that line.
|
|
|
/integrate |
|
Going to push as commit add7934.
Your commit was automatically rebased without conflicts. |
I backport this for parity with 21.0.6-oracle.
The documentation of the tz update says that it is not needed
necessarily, but a cleanup of various information. I think
we should go along here. It seems to bring a row of visible changes,
and it's good if this can be mapped to the same update everywhere.
Also, this will simplify later tz updates, which happen regularly.
CSR for update versions available.
This is a Backport of the jdk23u version, as the jdk24 version contains
changes breaking the Java standard. As I understand this only
affects Java 8. But Oracle avoided to bring these changes to 23,
so we should not do that in 21, either.
In detail, the 23u version omits backport of changes to
src/java.base/share/classes/java/time/ZoneId.java
and src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java.
In the tests changes to test/jdk/java/time/tck/java/time/TCKZoneId.java and
test/jdk/java/util/TimeZone/OldIDMappingTest.java are omited, and
test/jdk/sun/util/calendar/zi/TestZoneInfo310.java is modified differently. File
test/jdk/sun/util/calendar/zi/tzdata_jdk/tz2024b_overridden_zones
is added in 23. The change to test/jdk/sun/util/resources/TimeZone/Bug4848242.java differs, too.
Needed adaptions:
I had to resolve java/text/Format/DateFormat/TimeZoneNameTest.java.
But the new version breaks the test. I assume this is because 21 does
not have "8174269: Remove COMPAT
locale data provider from JDK".
The original version of the test passes.
test/jdk/sun/util/resources/TimeZone/Bug4848242.java is failing, too.
The original version works, reverted.
Further I reverted test/jdk/java/util/TimeZone/TimeZoneData/aliases.txt and .../displaynames.txt
as else java/util/TimeZone/Bug6329116.java (unmodified) starts failing.
See extra commits seperating out these edits.
Progress
Issues
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk21u-dev.git pull/1143/head:pull/1143$ git checkout pull/1143Update a local copy of the PR:
$ git checkout pull/1143$ git pull https://git.openjdk.org/jdk21u-dev.git pull/1143/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 1143View PR using the GUI difftool:
$ git pr show -t 1143Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk21u-dev/pull/1143.diff
Using Webrev
Link to Webrev Comment