Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on Nov 4, 2024. It is now read-only.

mvdan/zstd

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zstd

An implementation from scratch of Zstandard in Wuffs. It is being developed following the published spec.

This is very much a work in progress, so it is not ready for use.

To build a simple zstd binary that will use stdin and stdout:

./build

And to test it with the input/output cases in testdata:

./test

Why?

Writing a decoder in Wuffs takes more time, but the end result is an implementation that is safe and can be used in many languages without linking against C.

For example, that would mean no cgo overhead with Go, and safer code for languages like Rust. Though that is somewhere in the future - see the roadmap.

If you're after a zstd implementation that works today, use https://github.com/DataDog/zstd.

Roadmap

This is the current progress of the decoder.

  • Zstandard frames
    • Raw blocks
    • RLE blocks
    • Compressed blocks
      • Literals section
        • Raw literals block
        • RLE literals block
        • Compressed literals block
        • Treeless literals block
      • Sequences section
        • Predefined mode
        • RLE mode
        • Repeat mode
        • FSE compression mode
      • Sequence execution
        • Repeat offsets
        • Other offsets
    • XXH64 frame content checksum
  • Skippable frames
  • Dictionaries

These items are required for a stable 1.0 release:

  • Wuffs 1.0 release
  • Go support in Wuffs (generating a Go zstd library)
  • Full zstd decoder implemented

About

Zstandard implementation in Wuffs

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Morty Proxy This is a proxified and sanitized view of the page, visit original site.