Sobre o projeto

compress é um módulo Go que reúne implementações otimizadas de compressão e descompressão. É instalado com `go get github.com/klauspost/compress@latest` e oferece suporte à versão atual do Go e às duas anteriores. As tags de compilação `nounsafe` e `noasm` permitem desativar o uso do pacote unsafe ou do código assembly, respectivamente. Pacotes incluídos: - zstd: compressão e descompressão Zstandard implementadas em Go puro, com codificação de fluxo concorrente, dicionários, codificação delta, manipulação de cabeçalhos de quadros e caminhos em assembly para amd64 e arm64. - s2: descrito como um substituto de alto desempenho para o Snappy, com fluxos concorrentes, dicionários, estimativa de tamanho, codificadores de fluxo personalizados e conversores para blocos LZ4 e Intel LZ4s. - flate: implementação deflate otimizada, utilizável como substituto direto para gzip, zip e zlib, com níveis ajustáveis, suporte a dicionários, compressão de janela limitada e pontos de verificação de inflate. - snappy: substituto direto para github.com/golang/snappy, oferecendo comportamento de compressão diferente e fluxos concorrentes. - lzw: substituto direto para compress/lzw, com compressão e descompressão mais rápidas dependendo dos dados. - huff0 e fse: implementações brutas de codificação de entropia (Huffman e FSE). - xpress: descompressão dos formatos Microsoft XPRESS (MS-XCA) LZ77 simples e LZ77+Huffman, este último usado em imagens WIM e dados do Windows Compact OS/WOF. - gzhttp: wrappers de cliente e servidor para lidar com requisições HTTP gzip e zstd, incluindo negociação de conteúdo, manipulação de ETag e mitigação opcional de BREACH. - pgzip: um pacote separado que fornece uma implementação paralela de gzip. O README também documenta um extenso changelog cobrindo lançamentos de v1.15.x a v1.20.1, listando correções de bugs, correções de segurança, trabalho de desempenho e novos recursos, como assembly para arm64, construtores de dicionários e codificação de fluxo concorrente zstd. O projeto é escrito em Go e destina-se a desenvolvedores que incorporam compressão em aplicações ou serviços Go.