Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request for Mozilla Position: Zstandard compression format for Content-Encoding #775

Closed
nidhijaju opened this issue Apr 13, 2023 · 8 comments

Comments

@nidhijaju
Copy link

nidhijaju commented Apr 13, 2023

Request for Mozilla Position on an Emerging Web Specification

Other information

Zstandard, or "zstd", is a data compression mechanism, described in RFC8878, providing high compression ratios. The proposal is to add "zstd" to the tokens in the Accept-Encoding header, and decompress with Zstandard when the token is seen in the Content-Encoding header. It is anticipated to make pages load faster and reduce serving costs, by reducing CPU and/or bandwidth consumption, especially for dynamic content.

Chrome is currently evaluating implementing this, and is interested in other browsers' position on the specification.

@ricea
Copy link

ricea commented Apr 13, 2023

I just found out that this was previously closed as defer: #105

I do not have a lot of new information to contribute, except that zstd adoption has continued to grow.

@rektide
Copy link

rektide commented Apr 23, 2023

I noticed a couple items down is #771, which is for adding Compression Dictionary support to websites. This is WIP, but it seemingly could/would overcome a primary cause for the defer in #105 / here.

I'll comment in #105 as well.

@valenting
Copy link

I think we can close this as positive.

@zcorpan zcorpan added ready to add Appears ready to add to the table of positions. position: positive labels Oct 10, 2023
@martinthomson martinthomson removed the ready to add Appears ready to add to the table of positions. label Oct 11, 2023
@martinthomson
Copy link
Member

We can skip the dashboard for this one.

MarkStega pushed a commit to Material-Blazor/CompressedStaticFiles.AspNet that referenced this issue Mar 13, 2024
Allow serving Zstd compressed files with the `.zst` extension.

The example has not been adjusted yet, because the SDK's supported CompressionFormats do not yet include zstd. However, static files compressed by other means (external tools) still work.

Rationale:

[Chrome 123 added zstd Content-Encoding support behind a feature flag `enable-zstd-content-encoding`](https://chromestatus.com/feature/6186023867908096), and [Mozilla has committed to implementing it in Firefox as well](mozilla/standards-positions#775).

Co-authored-by: Jeremy Kescher <jeremy.kescher@timetoact.at>
@ChlorideCull
Copy link

We can skip the dashboard for this one.

Are you sure? I just found out today through this issue that Mozilla has changed to positive instead of defer, because the dashboard still only shows #105 with the defer position when you search for "zstd" or "zstandard".

@jesup
Copy link
Member

jesup commented Apr 11, 2024

FYI, we just landed zstd support in Nightly

@saschanaz
Copy link
Contributor

Indeed we have the dashboard item already which is not up to date.

{
"ciuName": null,
"description": "Zstandard, or \"zstd\" (pronounced \"zee standard\"), is a data compression mechanism. This document describes the mechanism and registers a media type and content encoding to be used when transporting zstd-compressed content via Multipurpose Internet Mail Extensions (MIME). Despite use of the word \"standard\" as part of its name, readers are advised that this document is not an Internet Standards Track specification; it is being published for informational purposes only.",
"id": "zstd",
"mozBugUrl": "https://bugzilla.mozilla.org/show_bug.cgi?id=1301878",
"mozPosition": "defer",
"mozPositionDetail": "While we believe zstd is a promising technology, its use in a general-purpose web browser (given the existing slate of compression algorithms) has not been demonstrated to provide compelling new utility, and does not clearly warrant the additional maintenance cost and attack surface of adding such code. We are deferring a final position pending a more comprehensive and quantitative analysis of the benefits zstd would unlock on the web today - either dictionary-less, with static dictionaries, or with dynamic dictionaries. For either of the latter two options, we'd also need a credible plan for generating and delivering those dictionaries that aligns with our values.",
"mozPositionIssue": 105,
"org": "IETF",
"title": "Zstandard Compression and the application/zstd Media Type",
"url": "https://datatracker.ietf.org/doc/html/rfc8478"
},

@martinthomson
Copy link
Member

A timely reminder that we probably want to update the dashboard. Note that this and that are subtly different things, so we might need to tweak a few things.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

9 participants