RFR: 8353641: Deprecate core library permission classes for removal [v8]
Alan Bateman
alanb at openjdk.org
Tue Apr 8 06:44:15 UTC 2025
On Mon, 7 Apr 2025 18:40:35 GMT, Roger Riggs <rriggs at openjdk.org> wrote:
>> Now that the Security Manager is permanently disabled, the following permission classes in the core libraries area can be deprecated for removal as they are no longer useful: FilePermission, LinkPermission, LoggingPermission, PropertyPermission, ReflectPermission, RuntimePermission, and SerializablePermission
>>
>> @Deprecated(forRemoval = true, since="25")
>> Is added to each class and the existing @apiNote is converted to @deprected
>
> Roger Riggs 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 10 additional commits since the last revision:
>
> - Revert "Mark as deprecated for removal as of jdk 25: SecureClassLoader.getPermissions, URLClassLoader.getPermissions."
> SecureClassLoader.getPermissions and URLClassLoader.getPermissions are not marked as Deprecated.
> - Merge branch 'master' into 8353641-deprecate-premission-classes
> - Missing suppresswarnings
> - Mark as deprecated for removal as of jdk 25: SecureClassLoader.getPermissions, URLClassLoader.getPermissions.
> Remove dead code from ForkJoinPool.
> Add @SuppressWarnings("remove")
> - Remove unnecessary SuppressWarnings and correct Deprecated annotation style
> - Update copyright in WindowsFileCopy
> - Remove unused import of LinkPermission
> - Updated style of @Deprecated to match most existing @Deprecated annotations
> `since` comes before `forRemoval`
> No spaces around `=`
> - Add SuppressWarnings to a Windows source missed earlier.
> - 8353641: Deprecate core library permission classes for removal
>
> Now that the Security Manager is permanently disabled, the following permission classes
> in the core libraries area can be deprecated for removal as they are no longer useful:
> FilePermission, LinkPermission, LoggingPermission, PropertyPermission, ReflectPermission,
> RuntimePermission, and SerializablePermission
>
> @Deprecated(forRemoval = true, since="25")
> Is added to each class and the existing @apiNote is converted to @deprected
src/java.base/share/classes/jdk/internal/access/JavaIOFilePermissionAccess.java line 49:
> 47: */
> 48: @SuppressWarnings("removal")
> 49: FilePermission newPermUsingAltPath(FilePermission input);
I assume JavaIOFilePermissionAccess can be removed, nothing should be using this now.
src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java line 443:
> 441: @SuppressWarnings("removal")
> 442: private void defineTransletClasses()
> 443: throws TransformerConfigurationException {
In passing, the PermissionCollection used to construct the PD here is no longer needed. If this is cleaned up then the SW wouldn't be needed.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/24444#discussion_r2032494012
PR Review Comment: https://git.openjdk.org/jdk/pull/24444#discussion_r2032493150
More information about the net-dev
mailing list