SVI f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
..
flate f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
matchfinder f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
.gitignore 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
LICENSE 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
README.md f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
backward_references.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
backward_references_hq.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
bit_cost.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
bit_reader.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
bitwriter.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
block_splitter.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
block_splitter_command.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
block_splitter_distance.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
block_splitter_literal.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
brotli_bit_stream.go f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
cluster.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
cluster_command.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
cluster_distance.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
cluster_literal.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
command.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
compress_fragment.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
compress_fragment_two_pass.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
constants.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
context.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
decode.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
dictionary.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
dictionary_hash.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
encode.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
encoder.go f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
encoder_dict.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
encoder_fast.go f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
entropy_encode.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
entropy_encode_static.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
fast_log.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
find_match_length.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
h10.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
h5.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
h6.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
hash.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
hash_composite.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
hash_forgetful_chain.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
hash_longest_match_quickly.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
hash_rolling.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
histogram.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
http.go f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
huffman.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
literal_cost.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
memory.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
metablock.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
metablock_command.go f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
metablock_distance.go f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
metablock_literal.go f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前
params.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
platform.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
prefix.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
prefix_dec.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
quality.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
reader.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
ringbuffer.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
state.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
static_dict.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
static_dict_lut.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
symbol_list.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
transform.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
utf8_util.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
util.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
write_bits.go 3e8fc70bbc SVI Добавление v4 8 ヶ月 前
writer.go f0f9e02a00 SVI Исправления, обновление вендоринга 3 ヶ月 前

README.md

This package is a brotli compressor and decompressor implemented in Go. It was translated from the reference implementation (https://github.com/google/brotli) with the c2go tool at https://github.com/andybalholm/c2go.

I am using it in production with https://github.com/andybalholm/redwood.

API documentation is found at https://pkg.go.dev/github.com/andybalholm/brotli?tab=doc.

Roadmap

I have been working on new compression algorithms (not translated from C) in the matchfinder package. You can use them with the NewWriterV2 function. Currently they give better results than the old implementation (at least for compressing my test file, Newton’s Opticks) on levels 0 to 9.

The new APIs are currently considered experimental, and are not covered by any SemVer compatibility guarantees.