On Thu, 9 Apr 2026 19:47:06 GMT, Eirik Bjørsnøs <[email protected]> wrote:

>> This PR reorganizes `java.util.zip.ZipCoder` class hierarchies to handle 
>> UTF-8 in the base class and move support for general charsets down to a 
>> subclass. This better reflects reality where most ZIP files are encoded 
>> using UTF-8. 
>> 
>> The motivation can be summarized as:
>> 
>> * Supporting the common case in the base class and the exceptional case in a 
>> subclass seems more natural and intuitive for maintainers
>> * We avoid loading both classes for most JVM instances
>> * A small performance improvement is observed, probably caused by unlocking 
>> effecively-monomorphic JVM optimizations
>> 
>> See core-libs-dev discussion for details: 
>> https://mail.openjdk.org/pipermail/core-libs-dev/2026-January/158281.html
>> 
>> I have tried to not move methods around too much,  making the side-by-side 
>> diff when ignoring whitespace easier to review. We can discuss further 
>> cleanups and reorganizaton if so desired. 
>> 
>> It may be useful to review commits individually. The first commit fe4a627 
>> moves some methods out the way for the second commit 2926398. 
>> 
>> This PR also includes the similar change to the `ZipFileSystem` 
>> implementation of ZipCoder to keep these aligned. Could be pulled out to a 
>> separate PR if reviewers want to focus on a single area per PR.
>> 
>> - [x] I confirm that I make this contribution in accordance with the 
>> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai).
>
> Eirik Bjørsnøs has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Remove comment referring to decoder() which is now inaccessible in the 
> subclass

src/jdk.zipfs/share/classes/jdk/nio/zipfs/ZipCoder.java line 124:

> 122:         }
> 123: 
> 124:         private Charset cs;

make it final
Suggestion:

        private final Charset cs;

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

PR Review Comment: https://git.openjdk.org/jdk/pull/30640#discussion_r3064171659

Reply via email to