<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">
Hi Eirik,
<div><br>
</div>
<div>Yes one of the goals should  be to share as much code as possible, regardless of where the initial changes are to ZipFile.   initCEN is similar in both instances WRT flow and would best to keep changes in mind so that they can easily be retrofitted to
 ZipFS with the hopes of having shared code making it easier to address issues that often apply to both due to CEN processing</div>
<div><br>
</div>
<div>Another area which you had indicated looking at is ZipCoder which there are 2 similar implementations between ZipFS and ZipFile et al.  I believe part of that is due to ZipFS starting as a demo but would be good to streamline and ideally get to 1 implementation
 if possible.  I have asked Sherman, who is the original author of ZipFS and worked extensively on Zip to chime in on your  ZipCoder suggestion.</div>
<div><br>
</div>
<div>This has been on the todo list to look at but has not risen to the top of the list so appreciate your time in giving some thought to it.</div>
<div><br>
</div>
<div>Hope that answers your question.</div>
<div><br>
</div>
<div>Best,</div>
<div>Lance<br id="lineBreakAtBeginningOfMessage">
<div><br>
<blockquote type="cite">
<div>On Feb 13, 2026, at 9:58 AM, Eirik Bjørsnøs <eirbjo@gmail.com> wrote:</div>
<br class="Apple-interchange-newline">
<div>
<div dir="ltr">
<div dir="ltr">On Tue, Feb 10, 2026 at 7:24 PM Lance Andersen <<a href="mailto:lance.andersen@oracle.com">lance.andersen@oracle.com</a>> wrote:</div>
<div class="gmail_quote gmail_quote_container">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<div>While I think there may be some merit/benefit to what your suggesting, I think we should take a step back and also look at ZipFS to see what we might be able to share as part of a refactoring as there is a somewhat similar flow to ZipFS initCEN</div>
<div><br>
</div>
<div>The benefit would be reducing the need to have to maintain somewhat duplicate code across both APIs.</div>
</div>
</blockquote>
<div><br>
</div>
<div>Lance,</div>
<div><br>
</div>
<div>I think discussing a reusable CEN parsing library at this point may be a bit premature. But we certainly don't want refactorings discussed here to make such a future harder to get to.</div>
<div><br>
</div>
<div>If your concern is that the refactorings suggested here may make ZipFile/ZipFS initCENs diverge further, then perhaps we can add as a goal that these two should be refactored together?</div>
<div><br>
</div>
<div>We could certainly do that. Either in lockstep with each refactoring being applied across APIs in the same PRs (where applicable), or we could clean up the ZipFile first, then have a follow up where we realign ZipFS at the end. Whatever we think makes
 most sense.</div>
<div><br>
</div>
<div>Wdyt?</div>
<div><br>
</div>
<div>Eirik.</div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
<div><span><img alt="oracle_sig_logo.gif" src="cid:E1C4E2F0-ECD0-4C9D-ADB4-B16CA7BCB7FC@home"></span>
<div dir="auto" style="font-family: Helvetica; font-size: 18px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">
<div><br class="Apple-interchange-newline">
Lance Andersen | Principal Member of Technical Staff | +1.781.442.2037</div>
<div>Oracle Java Engineering <br>
1 Network Drive <br>
Burlington, MA 01803<br>
Lance.Andersen@oracle.com</div>
</div>
<br class="Apple-interchange-newline" style="font-family: Helvetica; font-size: 18px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">
<br class="Apple-interchange-newline" style="font-family: Helvetica; font-size: 18px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">
</div>
<br>
</div>
</body>
</html>