On Fri, 4 Jun 2021 14:31:49 GMT, Weijun Wang <[email protected]> wrote:
>> This PR adds the necessary `@SuppressWarnings("removal")` annotations for
>> the recently-integrated security manager deprecation, [JEP
>> 411](https://openjdk.java.net/jeps/411). See openjdk/jdk#4073.
>>
>> There are four commits:
>>
>> 1. 678b026 : A patch generated by @wangweij to add annotations to the
>> runtime (`modules/*/src/main/java`) using the same automated tooling that he
>> used as part of the implementation of JEP 411.
>> 2. 9698e87 : Same as above for the tests.
>> 3. 1c42cf8 : Manually removes a pair of unused imports, one of which (a
>> static import) was causing a removal warning.
>> 4. 4f87d18 : Manually reduced the scope of the annotation where it was added
>> to an entire class, or to a large method where only a small part of the
>> method uses a deprecated method. This was done using similar techniques to
>> the following fixes that Weijun did in openjdk/jdk#4172.
>>
>> The first two commits represent the bulk of the changes. Other than scanning
>> to ensure that there are no obvious errors, and testing, they probably don't
>> need the same level of scrutiny as the manual changes do.
>>
>> I tested this on all three platforms by doing a build / test with `JDK_HOME`
>> set to a local JDK 17 ea build that includes the fix for JEP 411. I ran the
>> build with `gradle -PLINT=removal` and verified that there were removal
>> warnings for the security manager APIs without this fix and none with this
>> fix.
>>
>> NOTE: The following files under `modules/javafx.web/src/android` and
>> `modules/javafx.web/src/ios` were not processed by the automated tool. As I
>> have no way to compile them, I chose not to manually fix them either, but
>> doing so would be trivial as a follow-up fix if desired.
>>
>>
>> modules/javafx.web/src/android/java/com/sun/webkit/Timer.java
>> modules/javafx.web/src/android/java/com/sun/webkit/WebPage.java
>> modules/javafx.web/src/android/java/javafx/scene/web/WebEngine.java
>> modules/javafx.web/src/ios/java/javafx/scene/web/ExportedJavaObject.java
>> modules/javafx.web/src/ios/java/javafx/scene/web/HTMLEditorSkin.java
>> modules/javafx.web/src/ios/java/javafx/scene/web/JS2JavaBridge.java
>> modules/javafx.web/src/ios/java/javafx/scene/web/WebEngine.java
>
> modules/javafx.graphics/src/main/java/javafx/scene/Node.java line 9969:
>
>> 9967: accessible =
>> Application.GetApplication().createAccessible();
>> 9968: accessible.setEventHandler(new Accessible.EventHandler() {
>> 9969: @SuppressWarnings("removal")
>
> Was this "deprecation" already useless before this change?
Yes. The code to which it applied was removed back in JDK 9, but we forgot to
remove the annotation.
-------------
PR: https://git.openjdk.java.net/jfx/pull/528