Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| c1bd1968 | 2023-08-25 01:06:33 | comb HAVE_UTIMENSAT definition PiperOrigin-RevId: 560011681 | ||
| d639a81d | 2023-07-31 07:18:48 | add option to delete files that are not "compressed" PiperOrigin-RevId: 552472135 | ||
| 27a9a809 | 2023-07-30 03:44:38 | simplify CMake build PiperOrigin-RevId: 552238545 | ||
| 2e6164d7 | 2023-07-10 11:40:07 | verbose error report in CLI PiperOrigin-RevId: 546833411 | ||
| 509d4419 | 2022-12-22 16:05:25 | Copy ns time stat (#992) | ||
| a8f5813b | 2022-11-17 13:03:09 | Update Documentation: - add note that brotli is a "stream" format, not an archive-like - regenerate .1 with Pandoc Build: - drop legacy "BROTLI_BUILD_PORTABLE" option - drop "BROTLI_SANITIZED" definition Code: - c: comb includes - c/enc: extract encoder state into separate header - c/enc: drop designated q10 codepath - c/enc: dealing better with flushing of empty stream - fix MSVC compilation API: - py: use library version instead of one in version.h - c: add plugable API to report consumed input / produced output - c/java: support "lean" prepared dictionaries (without copy of source) | ||
| 8376f72e | 2021-11-10 10:34:39 | Prepare for copybara (#939) Co-authored-by: Eugene Kliuchnikov <eustas@chromium.org> | ||
| 62662f87 | 2021-09-08 09:18:45 | Strip "./" in includes (#925) Co-authored-by: Eugene Kliuchnikov <eustas@chromium.org> | ||
| 19d86fb9 | 2021-08-04 14:42:02 | Merge-in SharedDictionary feature (#916) Co-authored-by: Eugene Kliuchnikov <eustas@chromium.org> | ||
| 90fd2b60 | 2020-09-07 10:53:03 | add execution time (#834) | ||
| fc823290 | 2020-07-02 19:45:57 | Mute strerror/strcpy warnings is MSVC build. (#815) | ||
| 55193526 | 2020-07-02 17:57:40 | Add workaround for lying feof. (#814) Should fix #812 | ||
| c8b37e8f | 2019-07-17 14:39:56 | Update (#762) * put LICENSE file into .jar * fix typo * add clarification comment in PY wrapper | ||
| 4b2b2d4f | 2019-04-12 13:57:42 | Update (#749) Update: * Bazel: fix MSVC configuration * C: common: extended documentation and helpers around distance codes * C: common: enable BROTLI_DCHECK in "debug" builds * C: common: fix implicit trailing zero in `kPrefixSuffix` * C: dec: fix possible bit reader discharge for "large-window" mode * C: dec: simplify distance decoding via lookup table * C: dec: reuse decoder state members memory via union with lookup table * C: dec: add decoder state diagram * C: enc: clarify access to static dictionary * C: enc: improve static dictionary hash * C: enc: add "stream offset" parameter for parallel encoding * C: enc: reorganize hasher; now Q2-Q3 require exactly 256KiB to avoid global TCMalloc lock * C: enc: fix rare access to uninitialized data in ring-buffer * C: enc: reorganize logging / checks in `write_bits.h` * Java: dec: add "large-window" support * Java: dec: improve speed * Java: dec: debug and 32-bit mode are now activated via system properties * Java: dec: demystify some state variables (use better names) * Dictionary generator: add single input mode * Java: dec: modernize tests * Bazel: js: pick working commit for closure rules | ||
| d0ffe60b | 2018-10-24 16:06:09 | Verbose CLI + start pulling "Shared-Brotli" (#722) * Verbose CLI + start pulling "Shared-Brotli" * vesbose CLI output; fix #666 * pull `SHIFT` transforms; currently this is semantically dead code; later it will be used by "Shared-Brotli" | ||
| c94c6f80 | 2018-10-02 07:28:37 | tools/brotli: improve window size autodetect (#710) Window size is defined as: `(1 << BROTLI_PARAM_LGWIN) - 16` in `c/include/brotli/encode.h` Therefore we should probably take these 16 bytes into account. Done basic manual testing: $ python3 -c 'print ("A"*2046)' > t $ bazel run -- //:brotli -w 0 -f -o $(realpath t).br $(realpath ./t) $ python3 research/brotlidump.py t.br |& fgrep WSIZE 0000 c1 1000001 WSIZE windowsize=(1<<12)-16=4080 New version properly detects window size of `4080`, while previous one used `2032`: $ python3 research/brotlidump.py t.br |& fgrep WSIZE 0000 b1 0110001 WSIZE windowsize=(1<<11)-16=2032 | ||
| 68db5c02 | 2018-04-13 11:44:34 | Update (#660) * Update * improve q=1 compression on small files * fix "left shift before promotion" * fix osx Travis builds | ||
| 0f3c84e7 | 2018-03-27 22:29:22 | Update (#656) * proper fix for the "fall through" warning" * automatic NDIRECT/NPOSTFIX tuning (better compression) * fix unaligned access for `aarch64`-cross-`armhf` build * fix `aarch64` detection (10% decoder speedup) * expose `large_window` CLI option * make default window size 16MiB * ramp up version to 1.0.4 | ||
| 631fe194 | 2018-03-20 17:37:41 | Update (#651) * fix `bazel` build (ignore switch case fall-through) * add `NPOSTFIX` / `NDIRECT` encoder parameters * fix source file lists (add `params.h`) * fix bug in `durchschlag` * print clarifying messages wheb CLI argument parsing fails | ||
| 35e69fc7 | 2018-02-26 09:04:36 | New feature: "Large Window Brotli" (#640) * New feature: "Large Window Brotli" By setting special encoder/decoder flag it is now possible to extend LZ-window up to 30 bits; though produced stream will not be RFC7932 compliant. Added new dictionary generator - "DSH". It combines speed of "Sieve" and quality of "DM". Plus utilities to prepare train corpora (remove unique strings). Improved compression ratio: now two sub-blocks could be stitched: the last copy command could be extended to span the next sub-block. Fixed compression ineffectiveness caused by floating numbers rounding and wrong cost heuristic. Other C changes: - combined / moved `context.h` to `common` - moved transforms to `common` - unified some aspects of code formatting - added an abstraction for encoder (static) dictionary - moved default allocator/deallocator functions to `common` brotli CLI: - window size is auto-adjusted if not specified explicitly Java: - added "eager" decoding both to JNI wrapper and pure decoder - huge speed-up of `DictionaryData` initialization * Add dictionaryless compressed dictionary * Fix `sources.lst` * Fix `sources.lst` and add a note that `libtool` is also required. * Update setup.py * Fix `EagerStreamTest` * Fix BUILD file * Add missing `libdivsufsort` dependency * Fix "unused parameter" warning. | ||
| a0c7dafe | 2017-10-10 11:24:13 | Fix permissions of various files in project (#613) Move from 755 to 644. | ||
| c6056359 | 2017-09-20 15:02:01 | Fix API documentation + theoretical NPEs (#602) | ||
| 37fb83ec | 2017-09-19 15:57:15 | Update: (#600) * encoder: relax backward references candidates asserts * encoder: make RNG more platform-independent * encoder: remove "unused" param (context mode) * CLI: improve first-encounter experience * Java: update SynthTest * Java: refine proguard config * Java/JNI: fix one-shot compression workflow | ||
| d7bce1e0 | 2017-09-07 20:27:49 | Update (#593) * Update: * fix CLI error messages * fix CLI console IO on Windows | ||
| 65354354 | 2017-08-24 13:29:48 | Update (#589) * cleanup * fix `unbrotli` CLI * Java retouch for faster JS decoder | ||
| d63e8f75 | 2017-08-04 10:02:56 | Update API, and more (#581) Update API, and more: * remove "custom dictionary" support * c/encoder: fix #580: big-endian build * Java: reduce jar size * Java: speedup decoding * Java: add 32-bit CPU support * Java: make source code JS transpiler-ready | ||
| 52441069 | 2017-07-21 10:07:24 | Update (#574) * Update * decoder: better behavior after failure * encoder: replace "len_x_code" with delta * research: add experimental dictionary generator * python: test combing | ||
| 1becbbf2 | 2017-06-30 13:09:50 | Update (#569) * add misssing fclose in `brotli.c` * add basic tests for python `Decompressor` type * minor lint fixes in `_brotli.cc` | ||
| 05d5f3d7 | 2017-06-13 12:52:56 | Update (#560) Update: * add decoder API to avoid ringbuffer reallocation * fix MSVC warnings * remove dead code | ||
| 03739d2b | 2017-05-29 17:55:14 | Update (#555) Update: * new CLI; bro -> brotli; + man page * JNI wrappers preparation (for bazel build) * add raw binary dictionary representation `dictionary.bin` * add ability to side-load brotli RFC dictionary * decoder persists last error now * fix `BrotliDecoderDecompress` documentation * go reader don't block until necessary * more consistent bazel target names * Java dictionary data compiled footprint reduced * Java tests refactoring | ||
| 6ece1d87 | 2017-04-23 14:07:08 | Move files & update paths (#541) * Move files & update paths * Rename build to scripts. * Fix paths * Fix script. |