user 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
..
matchfinder 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
LICENSE 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
README.md 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
backward_references.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
backward_references_hq.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
bit_cost.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
bit_reader.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
bitwriter.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
block_splitter.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
block_splitter_command.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
block_splitter_distance.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
block_splitter_literal.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
brotli_bit_stream.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
cluster.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
cluster_command.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
cluster_distance.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
cluster_literal.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
command.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
compress_fragment.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
compress_fragment_two_pass.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
constants.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
context.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
decode.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
dictionary.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
dictionary_hash.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
encode.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
encoder.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
encoder_dict.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
entropy_encode.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
entropy_encode_static.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
fast_log.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
find_match_length.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
h10.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
h5.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
h6.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
hash.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
hash_composite.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
hash_forgetful_chain.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
hash_longest_match_quickly.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
hash_rolling.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
histogram.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
http.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
huffman.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
literal_cost.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
memory.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
metablock.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
metablock_command.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
metablock_distance.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
metablock_literal.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
params.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
platform.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
prefix.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
prefix_dec.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
quality.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
reader.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
ringbuffer.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
state.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
static_dict.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
static_dict_lut.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
symbol_list.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
transform.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
utf8_util.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
util.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
write_bits.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă
writer.go 586b5f4980 d06 Переход на группу проектов 2 ani în urmă

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.