> This PR updates `build.gradle` to define javac lint options for three 
> different types of java compilation tasks: sdk classes, test classes 
> (including shims), and tool classes (including JSLC). The defaults for these 
> three groups of lint options are specified in `build.gradle`.
> 
> We also define three gradle properties that can be used at build time to 
> override the global lint options for each of the three categories of tasks as 
> follows:
> 
> * `LINT` - used when compiling sdk tasks : default = 
> "removal,missing-explicit-ctor"
> * `TOOL_LINT` - used when compiling tool tasks : default = ""
> * `TEST_LINT` - used when compiling test tasks : default = ""
> 
> Each property takes a string with a comma-separated list of lint options. For 
> example:
> 
> 
> gradle -PLINT="deprecation,removal" sdk
> 
> 
> I provided a build mechanism to add extra per-module lint options in 
> `build.gradle`. None are currently defined, but I tested the logic to show 
> that it can be. I did not provide a way to override the per-module lint 
> options via the command line. Once we start using them, we might consider 
> adding that.
> 
> While testing this PR, I ran into a few places where we need to suppress 
> removal warnings for use of our own internal classes that are terminally 
> deprecated, so I filed 
> [JDK-8334143](https://bugs.openjdk.org/browse/JDK-8334143) to track this, and 
> added the missing annotations in this PR.
> 
> I also tested with JDK 23 to verify that we are now getting the expected 
> warnings for the use of sun.misc.Unsafe, and filed two bugs 
> --[JDK-8334138](https://bugs.openjdk.org/browse/JDK-8334138) to (temporarily) 
> suppress those warnings in this PR and 
> [JDK-8334137](https://bugs.openjdk.org/browse/JDK-8334137) to eventually fix 
> them by replacing our use of sun.misc.Unsafe.

Kevin Rushforth has updated the pull request with a new target base due to a 
merge or a rebase. The incremental webrev excludes the unrelated changes 
brought in by the merge/rebase. The pull request contains five additional 
commits since the last revision:

 - Merge remote-tracking branch 'upstream/master' into 
8327255-lint-removal,missing-explicit-ctor
 - fix typo and add missing tool tasks
 - 8334138: Suppress removal warnings for sun.misc.Unsafe memory access methods
 - 8334143: Suppress remaining removal warnings for internal methods and classes
 - 8327255: javac lint warnings: removal, missing-explicit-ctor

-------------

Changes:
  - all: https://git.openjdk.org/jfx/pull/1474/files
  - new: https://git.openjdk.org/jfx/pull/1474/files/1d90c796..753d5377

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jfx&pr=1474&range=01
 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1474&range=00-01

  Stats: 5235 lines in 61 files changed: 5136 ins; 36 del; 63 mod
  Patch: https://git.openjdk.org/jfx/pull/1474.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1474/head:pull/1474

PR: https://git.openjdk.org/jfx/pull/1474

Reply via email to