WICG / WICG/webpackage

Explain why we're not using ZIP

Open
#45 8 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

needs spec
Dominant language
Go
Stars
1.3k
Forks
125
PR merge metrics
No merged PRs in 30d

Description

We have some hints in https://w3ctag.github.io/packaging-on-the-web/#intro, but it's not complete, and it needs to appear in the local explainer, not something remote.

Other considerations against zip:

  • We've seen vulnerabilities caused by validating one copy of a resource but using a different one. #41 will avoid this for the CBOR-based format.
  • Zip resources are identified by filename, which isn't the primary key of web resources.
  • Zip resources don't include response headers.
  • Lots of details in the format are archaic and wouldn't be used.

We should probably also list reasons in favor of re-using zip so that proponents know we've considered their arguments:

  • A huge number of other formats are based on zip, so we're unlikely to run into something we can't express.
  • Existing tools would be able to extract packages.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the local explainer and compare its current packaging rationale with the linked W3C TAG introduction. Add a complete explanation of the arguments against ZIP, along with the stated benefits of reusing it, and account for the security concern referenced in issue #41. Done means the rationale appears locally rather than relying on a remote link.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.