-
Notifications
You must be signed in to change notification settings - Fork 6.2k
JDK-8275249: Suppress warnings on non-serializable array component types in jdk.jlink #5936
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 darcy! A progress list of the required criteria for merging this PR into |
|
@jddarcy 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 no new commits pushed to the ➡️ To integrate this PR with the above commit message to the |
|
/integrate |
|
Going to push as commit f178185.
Your commit was automatically rebased without conflicts. |
After a refinement to the checks under development in #5709, the new checks examine array types of serial fields and warn if the underlying component type is not serializable. Per the JLS, all array types are serializable, but if the base component is not serializable, the serialization process can throw an exception.
From "Java Object Serialization Specification: 2 - Object Output Classes":
"If the object is an array, writeObject is called recursively to write the ObjectStreamClass of the array. The handle for the array is assigned. It is followed by the length of the array. Each element of the array is then written to the stream, after which writeObject returns."
The jdk.jlink module has one instance of this coding pattern that needs suppression to compile successfully under the future warning.
Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/5936/head:pull/5936$ git checkout pull/5936Update a local copy of the PR:
$ git checkout pull/5936$ git pull https://git.openjdk.java.net/jdk pull/5936/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 5936View PR using the GUI difftool:
$ git pr show -t 5936Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/5936.diff