bazelbuild / bazelbuild/rules_pkg
Support zstd as first-class compression scheme
- Dominant language
- Starlark
- Stars
- 253
- Forks
- 221
- Avg merge
- 10h 33m
- Merged PRs (30d)
- 1
Description
https://github.com/facebook/zstd/ is another compression format with highly tunable compression format that highly desirable performance characteristics. It would be nice if it were supported locally without having to specify an external compressor, when we are able to easily do so.
Notes that come to mind:
- zstd in python3 requires external library bindings
- On top of that zstd in zip files is not immediately supported without [changes to the standard library](https://pypi.org/project/zipfile-zstd/)
- `pkg_tar` (and thus `pkg_deb`) can rely on an external compressor
- `pkg_rpm` can compress with zstd by passing `binary_payload_compression = "w$LEVEL.zstdio`, where `$LEVEL` is a numeric compression level. This requires `zstd` support in the local `rpmbuild` binary.
- `pkg_deb` is kinda up in the air: the Debian package format does not appear to support `zstd` yet, but apparently ubuntu is already using it. See also https://www.phoronix.com/scan.php?page=news_item&px=Ubuntu-21.10-Zstd-Debs, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=892664.
Contributor guide
Assessment
This issue has not been assessed yet.