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

8257845: Integrate JEP 390 #1636

Closed
wants to merge 12 commits into from
Closed

Conversation

dansmithcode
Copy link

@dansmithcode dansmithcode commented Dec 5, 2020

Integration of JEP 390.

Development has been broken into 5 tasks, each with its own JBS issue:

All changes have been previously reviewed and integrated into the jep390 branch of the valhalla repository. See the subtasks of the 5 JBS issues for these changes, including discussion and links to reviews. (Reviewers: mchung, dlsmith, jlaskey, rriggs, lfoltan, fparain, hseigel.)

CSRs have also been completed or are nearly complete:

Here's an overview of the files changed:

  • src/hotspot: implementing diagnostics when monitorenter is applied to an instance of a class tagged with jdk.internal.ValueBased. This enhances previous work that produced such diagnostics for the primitive wrapper classes.

  • src/java.base/share/classes/java/lang: deprecating for removal the wrapper class constructors; revising the definition of "value-based class" in ValueBased.html and the description used by linking classes; applying "value-based class" to the primitive wrapper classes; marking value-based classes with @jdk.internal.ValueBased.

  • src/java.base/share/classes/java/lang/constant: no longer designating these classes as "value-based", since they rely heavily on field inheritance.

  • src/java.base/share/classes/java/time: revising the description used to link to ValueBased.html; marking value-based classes with @jdk.internal.ValueBased.

  • src/java.base/share/classes/java/util: revising the description used to link to ValueBased.html; marking value-based classes with @jdk.internal.ValueBased.

  • src/java.base/share/classes/jdk/internal: define the @jdk.internal.ValueBased annotation.

  • src/java.management.rmi: removing uses of wrapper class constructors.

  • src/java.xml: removing uses of wrapper class constructors.

  • src/jdk.compiler: implementing the synchronization lint category, which reports attempts to synchronize on classes and interfaces annotated with @jdk.internal.ValueBased.

  • src/jdk.incubator.foreign: revising the description used to link to ValueBased.html. (Applying @jdk.internal.ValueBased would require a special module export, which was not deemed necessary for an incubating API.)

  • src/jdk.internal.vm.compiler: suppressing javac deprecation and synchronization warnings in tests

  • src/jdk.jfr: supplementary changes for HotSpot diagnostics

  • test: testing new javac and HotSpot behavior; removing usages of deprecated wrapper class constructors from tests, or suppressing deprecation warnings; revising the description used to link to ValueBased.html.


Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed

Issues

Reviewers

Contributors

  • Roger Riggs <rriggs@openjdk.org>
  • Srikanth Adayapalam <sadayapalam@openjdk.org>
  • Lois Foltan <lfoltan@openjdk.org>

Download

$ git fetch https://git.openjdk.java.net/jdk pull/1636/head:pull/1636
$ git checkout pull/1636

Roger Riggs and others added 12 commits Oct 21, 2020
Reviewed-by: rriggs
8256667: [test] Unexpected warnings in javac test T8074381a

Reviewed-by: lfoltan, mchung
From jdk tag 'jdk-16+25'
…ue-based classes

Reviewed-by: mchung, rriggs
Merge jdk tag 'jdk-16+27'
@bridgekeeper
Copy link

bridgekeeper bot commented Dec 5, 2020

👋 Welcome back dlsmith! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk openjdk bot added the rfr label Dec 5, 2020
@openjdk
Copy link

openjdk bot commented Dec 5, 2020

@dansmithcode The following labels will be automatically applied to this pull request:

  • build
  • compiler
  • core-libs
  • hotspot
  • i18n
  • javadoc
  • jmx
  • kulla
  • serviceability

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.

@openjdk openjdk bot added serviceability hotspot kulla i18n javadoc jmx build core-libs compiler labels Dec 5, 2020
@mlbridge
Copy link

mlbridge bot commented Dec 5, 2020

Webrevs

@dansmithcode
Copy link
Author

dansmithcode commented Dec 5, 2020

/help

@openjdk
Copy link

openjdk bot commented Dec 5, 2020

@dansmithcode Available commands:

  • cc - add or remove an additional classification label
  • contributor - adds or removes additional contributors for a PR
  • covered - used when employer has signed the OCA
  • csr - require a compatibility and specification request (CSR) for this pull request
  • help - shows this text
  • integrate - performs integration of the changes in the PR
  • issue - edit the list of issues that this PR solves
  • label - add or remove an additional classification label
  • reviewer - manage additional reviewers for a PR
  • reviewers - set the number of additional required reviewers for this PR
  • signed - used after signing the OCA
  • solves - edit the list of issues that this PR solves
  • sponsor - performs integration of a PR that is authored by a non-committer
  • summary - updates the summary in the commit message
  • test - used to run tests

@dansmithcode
Copy link
Author

dansmithcode commented Dec 5, 2020

/issue 8254047

@openjdk
Copy link

openjdk bot commented Dec 5, 2020

@dansmithcode
Adding additional issue to issue list: 8254047: [JEP 390] Revise "value-based class" & apply to wrappers.

@dansmithcode
Copy link
Author

dansmithcode commented Dec 5, 2020

/issue 8252181

@dansmithcode
Copy link
Author

dansmithcode commented Dec 7, 2020

/label remove javadoc

@openjdk openjdk bot removed the i18n label Dec 7, 2020
@dansmithcode
Copy link
Author

dansmithcode commented Dec 7, 2020

/label remove javadoc

@openjdk
Copy link

openjdk bot commented Dec 7, 2020

@dansmithcode
The i18n label was successfully removed.

@dansmithcode
Copy link
Author

dansmithcode commented Dec 7, 2020

/label remove kulla

@openjdk openjdk bot removed the javadoc label Dec 7, 2020
@openjdk
Copy link

openjdk bot commented Dec 7, 2020

@dansmithcode
The javadoc label was successfully removed.

@openjdk
Copy link

openjdk bot commented Dec 7, 2020

@dansmithcode The javadoc label was not set.

@openjdk openjdk bot removed the kulla label Dec 7, 2020
@openjdk
Copy link

openjdk bot commented Dec 7, 2020

@dansmithcode
The kulla label was successfully removed.

@dansmithcode
Copy link
Author

dansmithcode commented Dec 7, 2020

/label remove serviceability

@openjdk openjdk bot removed the serviceability label Dec 7, 2020
@openjdk
Copy link

openjdk bot commented Dec 7, 2020

@dansmithcode
The serviceability label was successfully removed.

@dansmithcode
Copy link
Author

dansmithcode commented Dec 7, 2020

/label remove jmx

@openjdk openjdk bot removed the jmx label Dec 7, 2020
@openjdk
Copy link

openjdk bot commented Dec 7, 2020

@dansmithcode
The jmx label was successfully removed.

@dansmithcode
Copy link
Author

dansmithcode commented Dec 7, 2020

/label remove build

@openjdk openjdk bot removed the build label Dec 7, 2020
@openjdk
Copy link

openjdk bot commented Dec 7, 2020

@dansmithcode
The build label was successfully removed.

@dansmithcode dansmithcode changed the title 8252180: [JEP 390] Deprecate wrapper class constructors for removal 8257845: Integrate JEP 390 Dec 7, 2020
@dansmithcode
Copy link
Author

dansmithcode commented Dec 7, 2020

/issue 8252180

@openjdk
Copy link

openjdk bot commented Dec 7, 2020

@dansmithcode
Adding additional issue to issue list: 8252180: [JEP 390] Deprecate wrapper class constructors for removal.

mlchung
mlchung approved these changes Dec 7, 2020
Copy link
Member

@mlchung mlchung left a comment

core-libs and hotspot change look okay.

jddarcy
jddarcy approved these changes Dec 8, 2020
@dansmithcode
Copy link
Author

dansmithcode commented Dec 8, 2020

/integrate

@openjdk openjdk bot closed this Dec 8, 2020
@openjdk openjdk bot added integrated and removed ready rfr labels Dec 8, 2020
@openjdk
Copy link

openjdk bot commented Dec 8, 2020

@dansmithcode Since your change was applied there have been 114 commits pushed to the master branch:

  • ed4c4ee: 8256299: Implement JEP 396: Strongly Encapsulate JDK Internals by Default
  • c47ab5f: 8256515: javax.xml.XMLEventReader produces incorrect START_DOCUMENT event
  • 291ba97: 8251267: CDS tests should use CDSTestUtils.getOutputDir instead of System.getProperty("user.dir")
  • f48d5d1: 8257789: Fix incremental build of test-image and bundles
  • 1a9ed92: 8200102: NativeLibraryTest.java fails intermittently, unloaded count is not same as expected
  • 264feb3: 8257905: Make fixpath.sh more liberal in accepting paths embedded in arguments
  • 044616b: 8252049: Native memory leak in ciMethodData ctor
  • fab6158: 8236413: AbstractConnectTimeout should tolerate both NoRouteToHostException and UnresolvedAddressException
  • 936a7ac: 8252797: Non-PCH build fails on Ubuntu 16.4 when building with gtests
  • d0c5265: 8256149: Weird AST structure for incomplete member select
  • ... and 104 more: https://git.openjdk.java.net/jdk/compare/93b6ab56ae1499616d38c0b62f4256f1d7c17ce5...master

Your commit was automatically rebased without conflicts.

Pushed as commit 48d8650.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler core-libs hotspot integrated
6 participants