-
Notifications
You must be signed in to change notification settings - Fork 6.2k
8371732: [redo] Change java.time month/day field types to 'byte' #28274
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?
8371732: [redo] Change java.time month/day field types to 'byte' #28274
Conversation
…p size. Explicitly declare SerialPersistentFields with the original field types to ensure compatibility of the class objects. Also make fields transient to reinforce the point. Affect classes are java.time.LocalDate, MonthDay, YearMonth, and HijrahDate.
|
👋 Welcome back rriggs! A progress list of the required criteria for merging this PR into |
|
@RogerRiggs This change is no longer ready for integration - check the PR body for details. |
|
@RogerRiggs The following labels will be automatically applied to this pull request:
When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing lists. If you would like to change these labels, use the /label pull request command. |
|
/label remove i18n |
|
@RogerRiggs |
AlanBateman
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.
Good
|
/csr needed |
|
@jddarcy has indicated that a compatibility and specification (CSR) request is needed for this pull request. @RogerRiggs please create a CSR request for issue JDK-8371732 with the correct fix version. This pull request cannot be integrated until the CSR request is approved. |
Redo change (8371732) that failed when the updated class objects were incompatible.
The fields of classes are changed to allow a more compact form of storage.
To ensure compatibility of the class objects, the fields are explicitly declared in SerialPersistentFields with the original field types.
The fields are marked
transientto indicate the field declarations are not used for serialization.The affected classes are java.time.LocalDate, MonthDay, and YearMonth.
Tests are added to verify the types and names of serialized fields of each class.
HijrahDate only changes the field types, the fields are transient and there is no change to the serialized from of the HijrahDate.class object.
Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/28274/head:pull/28274$ git checkout pull/28274Update a local copy of the PR:
$ git checkout pull/28274$ git pull https://git.openjdk.org/jdk.git pull/28274/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 28274View PR using the GUI difftool:
$ git pr show -t 28274Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/28274.diff
Using Webrev
Link to Webrev Comment