Git Product home page Git Product logo

Comments (3)

javagl avatar javagl commented on June 9, 2024

Oh... that's subtle ...

Cesium Deflate64

😕

If you have any recommendations for alternative ZIP libraries, I'll have a look. Otherwise, I'll have a look at one of these 6302 libraries...

from 3d-tiles-tools.

mramato avatar mramato commented on June 9, 2024

@javagl Unfortunately I don't think one exists. This doesn't affect my project directly, but I wanted to write it up since we noticed it.

from 3d-tiles-tools.

javagl avatar javagl commented on June 9, 2024

I could reproduce this by creating a ZIP that uses Defalte64.


An aside: The Windows Explorer does not always seem to use it, even for large archives. From a quick test, it seemed that

  • compressing a directory with many files (and >4GB) still used Deflate
  • compressing the same files in that directory directly (by selecting them all and adding them to a ZIP) caused it to use Deflate64
    Whatever the reason for that is.

In 7zip, the method can be selected explicitly, so that's an option for creating test data.


I have no idea how to resolve this, though. There does not seem to be any library that supports Deflate64. Even the zlib FAQ just say:

Does zlib support the new "Deflate64" format introduced by PKWare?

No. PKWare has apparently decided to keep that format proprietary, since they have not documented it as they have previous compression formats. In any case, the compression improvements are so modest compared to other more modern approaches, that it's not worth the effort to implement.

So we're out of luck here. If that comes up in practice, the only solution would be: Unpack that archive (in doubt, with some command-line call), and pass in the resulting directory.


Unrelated: I'm pretty sure that there is a bug related to that lurking in node-stream-zip which tries to use zlib for uncompressing Deflate64 data in the synchronous case, but not in the stream case, but that's none of our business for now...

from 3d-tiles-tools.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.