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

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.