poka.sh

Docs

ZIP

Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.

Zip Preview.

At a glance

Purpose A ZIP archive: files compressed one by one, with a central directory at the end.
Extensions .zip
Poka parser poka-zip
Viewer poka-table-viewer
Depth tier Parser with a shared viewer (see Depth tiers)
Breadth tier B4 Summary (see Breadth tiers)

How much Poka reads

B4 Summary. The container and metadata are read and summarised (counts, properties, structure), but the main content is not rendered.

Confidence: high (the reviewer read the code and a test that proves the claim). Basis: Reviewed 2026-10-26: read parsers/poka-zip/src/main.rs (816 lines) and plugin.json. 13 unit tests (streamed archives, entries past the end, unsupported methods, cut files rebuilt from local headers, a row-for-row comparison of recovered and healthy listings) and corpus_zips_report_nothing_and_their_truncation_warns over the corpus ZIPs (moby.zip, modeltok-pthp.dsb and others). Covers .zip, .ipa, .xpi, .aar and .dsb. The central directory is read with the zip crate (raw, no decompression) and the table lists every entry with name, size, packed size and method; a file cut before its central directory is listed from its local headers with a TRUNCATED warning. Judgement: B4: the archive is listed but no member is extracted or shown.

What Poka does not read

  • Member contents are not extracted or shown, not even text or images
  • Archive and entry comments, timestamps, attributes and CRCs are not shown
  • Encryption is not reported per entry (encrypted entries are listed like the others)
  • Split and spanned archives (.z01 and the final .zip) are not joined
  • The .ipa, .xpi, .aar and .dsb aliases get the plain listing, with no package metadata

Libraries

Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.

  • zip (used; MIT; Rust)
  • rc-zip (candidate; MIT OR Apache-2.0; Rust; https://github.com/bearcove/rc-zip) — Sans-IO reader (rc-zip-sync / rc-zip-tokio wrappers); handles zip64 and non-UTF-8 names; reading only
  • async_zip (candidate; MIT; Rust; https://github.com/Majored/rs-async-zip) — Async reader/writer; Stored, Deflate, bzip2, LZMA, zstd, xz; pre-1.0
  • libzip (candidate; BSD-3-Clause; C; https://github.com/nih-at/libzip) — Read, create and modify zip archives, zip64, encryption; repo page says only 'BSD', clause count taken from the LICENSE text

Sources

  • parsers/poka-zip/src/main.rs
  • parsers/poka-zip/plugin.json