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

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 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 2 to 6.

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.