Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| e88fe7b2 | 2015-08-12 10:11:30 | [setup.py] pass extra compiler flags on OS X to enable support for C++11: -stdlib=libc++ -mmacosx-version-min=10.7 | ||
| d811b186 | 2015-08-11 13:49:55 | Merge pull request #133 from anthrotype/py27win fix compilation on Windows Python 2.7 + support for MINGW32 and Cygwin | ||
| d2c8b277 | 2015-08-11 10:38:20 | [setup.py] retrieve version string from brotlimodule.cc so we don't need to modify it more than once | ||
| 8c7edd3e | 2015-08-11 10:39:14 | [bro.py] print --version as brotli.__version__ | ||
| ac33d356 | 2015-08-11 10:42:22 | [brotlimodule.cc] add __version__ string attribute to brotli module | ||
| 54baf43c | 2015-08-10 18:04:30 | [setup.py] support MINGW32 compiler: fix clashing 'hypot' definition; statically link libgcc and libstdc++ | ||
| c3540e2b | 2015-08-10 18:01:29 | [setup.py] use MSVC 10.0 when compiling for Windows Python 2.7 Python 2.7 for Windows is compiled using MS Visaul C++ 9.0 (Visual Studio 2008). However the latter does not support many modern C++ features which are required to compile the Brotli encoder. So we monkey-patch distutils to always look for MSVC version 10.0 instead of 9.0. | ||
| f1417290 | 2015-08-10 18:44:06 | [brotlimodule.cc] fix RuntimeError on OS X: keyword list must be NULL terminated Sorry, my fault... | ||
| 55a40ce2 | 2015-08-11 11:10:37 | Merge pull request #135 from szabadka/master Fix malloc.h and stdlib.h includes. | ||
| 7de70dbc | 2015-08-11 11:09:04 | Add missing <stdlib.h> to streams.cc | ||
| 944c3b82 | 2015-08-11 11:07:26 | Remove non-standard <malloc.h> from decode.c The already included <stdlib.h> is enough for the malloc/free calls. | ||
| 421e4ed4 | 2015-08-10 16:44:36 | Merge pull request #132 from szabadka/master Brotli decoder optimizations. | ||
| 4b2fd00e | 2015-08-10 16:39:50 | Use a single lookup table for insert/copy offsets and extra bits. Remove safe_malloc.c since all the bounds checking is done inside decode.c now. | ||
| da11e911 | 2015-08-10 15:51:56 | Merge pull request #131 from anthrotype/py-deprecated [brotlimodule.cc] no longer expose deprecated BrotliParams | ||
| 08212db7 | 2015-08-10 14:39:44 | [brotlimodule.cc] fix C++11 warning about conversion from string literal to 'char *' | ||
| d3dfc689 | 2015-08-10 14:38:17 | [brotlimodule.cc] no longer expose deprecated BrotliParams: enable_dictionary, enable_transforms, greedy_block_split, enable_context_modeling | ||
| 45c38936 | 2015-08-10 14:41:42 | Enable little endian support also for visual studio | ||
| ef186baf | 2015-08-10 14:19:10 | Merge pull request #130 from lvandeve/master fix brotli decoder MSVC compilation error | ||
| fee303fd | 2015-08-10 14:18:37 | fix brotli decoder MSVC compilation error | ||
| 4c22a3dd | 2015-08-10 13:43:48 | Merge pull request #128 from lvandeve/master brotli decoder performance improvements | ||
| 94cd7085 | 2015-08-10 13:35:23 | brotli decoder performance improvements | ||
| 06fff86b | 2015-08-10 13:29:32 | Merge pull request #127 from lvandeve/master msan bugfixes to the brotli encoder | ||
| 17ed2589 | 2015-08-10 13:13:58 | msan bugfixes to the brotli encoder | ||
| afbec112 | 2015-07-30 18:08:40 | Add -O2 flag | ||
| 13f0a9b0 | 2015-07-30 17:45:12 | Merge pull request #124 from szabadka/master Fix encoder bug. | ||
| 29c26795 | 2015-07-30 17:42:02 | Fix encoder bug. Under some circumstances CopyLiteralsToByteArray tried to read begind ringbuffer. In this patch we force it to read completely from range [0..mask] | ||
| 9c9bb00f | 2015-06-29 14:25:50 | Merge pull request #123 from szabadka/master Fix some VS compilation errors in the encoder. | ||
| 95ddb48a | 2015-06-29 14:20:25 | Fix some VS compilation errors in the encoder. - Use std::numeric_limits<double>::infinity() instead of 1.0 / 0.0 - Use FastLog2() instead of log2() in cost model | ||
| 9fa3016e | 2015-06-26 17:38:49 | Merge pull request #121 from lvandeve/master Brotli Bug Fixes | ||
| bad0f4ed | 2015-06-26 17:37:00 | Brotli Bug Fixes | ||
| 67d26e0d | 2015-06-12 16:55:09 | Merge pull request #119 from szabadka/master Deprecate greedy_block_split and enable_context_modeling brotli params. | ||
| 618287b3 | 2015-06-12 16:50:49 | Deprecate greedy_block_split and enable_context_modeling brotli params. These affected only quality 11, and now it does not make sense to disable block splitting or context modeling because most of the time is spent in zopfli anyway. Now all speed vs size compromises are controlled by the quality param. | ||
| 981ca6e5 | 2015-06-12 16:47:56 | Merge pull request #118 from szabadka/master Use a static hash table to look up dictionary words and transforms. | ||
| 66098830 | 2015-06-12 16:45:17 | Use a static hash table to look up dictionary words and transforms. This is used for quality 11, for qualities <= 9 we already have a simpler hash table. The static data size is 252 kB, and this removes the need to initialize a huge hash map at startup, which was the reason why transforms had to be disabled by default. In comparison, the static dictionary itself is 120 kB. This supports every transform, except the kOmitFirstN. | ||
| 0fd2df4f | 2015-06-12 16:37:17 | Merge pull request #117 from szabadka/master Add "zopfli"-style backward reference search to brotli. | ||
| b3d3723f | 2015-06-12 16:25:41 | Add "zopfli"-style backward reference search to brotli. This commit adopts the backward reference search algorithm from the zopfli project (see https://github.com/google/zopfli) to brotli. This slower backward reference search is run only in quality 11 and it runs two iterations of entropy cost modeling and shortest path search. As a result, the original backward reference search function can be simplified a bit, since we can remove some heuristics that were replaced with the zopfli-style search. | ||
| 94b33769 | 2015-06-12 16:16:04 | Merge pull request #116 from szabadka/master Change the static dictionary hash table to take into account word frequency when there are hash collisions. | ||
| 835a7746 | 2015-06-12 16:14:06 | Change the static dictionary hash table to take into account word frequency when there are hash collisions. | ||
| a0d0ecfe | 2015-06-12 16:12:38 | Merge pull request #115 from szabadka/master Bug fixes for the brotli encoder. | ||
| 65f3fc55 | 2015-06-12 16:11:50 | Bug fixes for the brotli encoder. * Fix an out-of-bounds access to depth_histo in the bit cost calculation function. * Change type of distance symbol to uint16_t in block splitter, because if all postfix bits are used, there can be 520 distance symbols. * Save the distance cache between meta-blocks at the correct place. This fixes a roundtrip failure that can occur when there is an uncompressed metablock between two compressed metablocks. * Fix a bug when setting lgwin to 24 in the encoder parameters It ended up making metablocks larger than 24 bits in size. * Fix out-of-bounds memory accesses in parallel encoder. CreateBackwardReferences can read up to 4 bytes past end of input if the end of input is before mask. * Add missing header for memcpy() in port.h | ||
| a13ea018 | 2015-06-12 15:45:41 | Merge pull request #114 from szabadka/master Brotli custom LZ77 dictionary support. | ||
| b43df8f6 | 2015-06-12 15:43:54 | Brotli custom LZ77 dictionary support. Adds functions to prepend such dictionary to the encoder and decoder, and twiddles their internal parameters to do as if that was a previous part of the input. This dictionary is just a prefilled LZ77 window, it is not related to the built in transformable brotli dictionary. | ||
| 631184d4 | 2015-06-12 15:32:31 | Merge pull request #113 from szabadka/master Speedups to brotli quality 11. | ||
| 667f70ad | 2015-06-12 15:29:06 | Speedups to brotli quality 11. * Cluster at most 64 histograms at a time in the first round of clustering. * Use a faster histogram cost estimation function. * Don't compute the log2(total) multiple times in the block splitter. | ||
| af09ee73 | 2015-06-12 15:14:13 | Merge pull request #112 from szabadka/master Speedups and fixes to the decoder. | ||
| 641bc158 | 2015-06-12 15:12:23 | Speedups and fixes to the decoder. * Read data by 4-byte runs. This resolves unaligned read (Bus error) on arm-android. * Get rid of malloc/free in BrotliBuildHuffmanTable. * Tweak order of instructions when reading Huffman codes. | ||
| e0510a82 | 2015-06-12 14:31:47 | Update README.md | ||
| 996ec289 | 2015-05-11 17:22:04 | Merge pull request #111 from szabadka/master Create -04 version of the internet draft. | ||
| ea359368 | 2015-05-11 17:04:13 | Change the expiration date and title of the -04 draft. | ||
| 14ea2b58 | 2015-05-11 17:03:35 | Create -04 version of the draft. | ||
| 6ee61e78 | 2015-05-11 15:15:55 | Merge pull request #110 from anthrotype/test_quality [roundtrip_test.py] repeat test at different quality (1, 6, 9, 11) | ||
| e356b9bc | 2015-05-11 14:12:37 | [roundtrip_test.py] repeat test at different quality (1, 6, 9, 11) | ||
| 682facef | 2015-05-11 14:15:05 | Merge pull request #109 from szabadka/master Expose the quality parameter to the bro.cc tool. | ||
| 8d83839a | 2015-05-11 14:14:05 | Expose the quality parameter to the bro.cc tool. | ||
| 463ceda5 | 2015-05-11 14:12:24 | Merge pull request #108 from szabadka/master Use the same hasher for text and font mode. | ||
| 6622355a | 2015-05-11 14:11:07 | Use the same hasher for text and font mode. We use 4-byte hashing in both and look for length 3 matches separately. | ||
| 6bb43162 | 2015-05-11 13:52:54 | Merge pull request #107 from szabadka/master Fix broken quality 0, make it same as quality 1. | ||
| cc8d64df | 2015-05-11 13:51:47 | Fix broken quality 0, make it same as quality 1. | ||
| cc211b92 | 2015-05-11 13:36:43 | Merge pull request #105 from anthrotype/newparams [python] expose new encoder parameters as kwargs of brotli.compress | ||
| c93c0dab | 2015-05-11 11:10:48 | [bro.py] use brotli.MODE_GENERIC as default compression mode; remove additional low-level parameters | ||
| aa6f7d8f | 2015-05-11 11:09:36 | [brotlimodule] add MODE_GENERIC constant | ||
| b7e82917 | 2015-05-08 15:49:15 | [bro.py] remove debug print | ||
| 4106a406 | 2015-05-08 15:46:56 | [bro.py] use new optional encoder parameters when compressing; modified the help string to include the new parameters. | ||
| 32c44ec8 | 2015-05-08 14:17:20 | [bro.py] use argparse instead of getopt | ||
| 3351bb08 | 2015-05-08 13:02:05 | [brotlimodule] apply uniform docstring style | ||
| 6d935db7 | 2015-05-08 12:38:22 | [brotlimodule] add quality, lgwin and lgblock parameters | ||
| dbcb3261 | 2015-05-08 12:07:10 | [brotlimodule] add enable_context_modeling parameter (defaults to True) | ||
| 4c1d0693 | 2015-05-08 12:02:08 | [brotlimodule] add new keyword params docstring of brotli.compress | ||
| 6264bea2 | 2015-05-08 11:47:00 | [brotlimodule] add greedy_block_split parameter (defaults to False); renamed variables: transform -> enable_transforms, dictionary -> enable_dictionary | ||
| b2eba122 | 2015-05-08 11:34:20 | [brotlimodule] add enable_dictionary parameter (defautls to True) | ||
| 89c74d68 | 2015-05-08 11:23:08 | [brotlimodule] use keyword arguments for mode and enable_transforms; update brotli.compress docstring accordingly | ||
| 621cd0cf | 2015-05-11 11:34:39 | Merge pull request #106 from szabadka/master Add a MODE_GENERIC compression mode to the interface. | ||
| aa853f3c | 2015-05-11 11:33:19 | Add a MODE_GENERIC compression mode to the interface. With this the users can distinguish between not knowing what the input is (ddefault) and knowing that it is text, and thus can be relied on to force some UTF-8 specific settings. | ||
| 288f70d7 | 2015-05-08 11:11:22 | Merge pull request #104 from anthrotype/py3split [python] fix compatibility_test.py with Python 3 | ||
| e6913b2e | 2015-05-08 10:06:18 | [python] use built-in split instead of 'string' module for py23 In python3, the 'string' module no longer has a 'split' function. | ||
| 4e94277e | 2015-05-07 20:46:40 | Merge pull request #103 from szabadka/master Handle multiple compressed files per original in the test. | ||
| 10a2f374 | 2015-05-07 20:43:01 | Handle multiple compressed files per original in the test. Add some more test cases that decompress to the empty file or a one byte long file. These test cases have examples for the updated stream header and meta-block header formats. | ||
| 7ee6449b | 2015-05-07 20:37:22 | Merge pull request #102 from szabadka/master Restrict the ARM optimizations to little endian architectures. | ||
| bef6938a | 2015-05-07 20:36:35 | Restrict the ARM optimizations to little endian architectures. | ||
| 14c571ca | 2015-05-07 20:11:15 | Merge pull request #101 from szabadka/master Add an Acknowledgements section to the spec. | ||
| 78350a91 | 2015-05-07 20:10:22 | Add an Acknowledgements section to the spec. | ||
| f0500266 | 2015-05-07 19:47:14 | Merge pull request #100 from szabadka/master Fix 32bit build. | ||
| f3e71e44 | 2015-05-07 19:45:21 | Fix 32bit build. | ||
| 7c277c3e | 2015-05-07 17:45:18 | Merge pull request #99 from szabadka/master Support window bits 10 - 15 in the decoder. | ||
| 54f69c9e | 2015-05-07 17:44:33 | Support window bits 10 - 15 in the decoder. The previous window bit value 17 is used to extend the range, since it has not been used in any previous encoders. | ||
| 7bbfd5df | 2015-05-07 17:41:11 | Merge pull request #98 from szabadka/master Align distance code meaning in the brotli encoder. | ||
| 12eb9bfd | 2015-05-07 17:40:00 | Align distance code meaning in the brotli encoder. Two different definitions (offset by 1) were used in command.h and hash.h. Now they have been made the same, also consistent with the spec (e.g. 0 means use previous dist, etc...) | ||
| fa2c6df4 | 2015-05-07 17:36:37 | Merge pull request #97 from szabadka/master Faster encoding for low quality settings. | ||
| 7cde616c | 2015-05-07 17:30:10 | Faster encoding for low quality settings. With this commit, the encoder will skip some compression optimization steps for quality <= 4, which results in faster compression but higher compressed sizes. | ||
| e4a309ac | 2015-05-07 17:24:12 | Merge pull request #96 from szabadka/master Use a static context map with two buckets for UTF8 data. | ||
| 945b0d02 | 2015-05-07 17:23:07 | Use a static context map with two buckets for UTF8 data. Enabled for quality >= 4, and if there are no obvious UTF8 violations detected. For each block, we gather two separate histograms, one for continuation bytes and one for ASCII or lead bytes. | ||
| 762f9ba5 | 2015-05-07 17:13:06 | Merge pull request #95 from szabadka/master Decoder optimizations for ARM architecture. | ||
| 5f39d607 | 2015-05-07 17:10:27 | Decoder optimizations for ARM architecture. | ||
| 500c85ac | 2015-05-07 17:00:58 | Merge pull request #94 from szabadka/master Speed and memory usage improvements for the decoder. | ||
| 83aa24dc | 2015-05-07 16:53:43 | Speed and memory usage improvements for the decoder. * Change order of members of bit reader state structure. * Remove unused includes for assert. Add BROTLI_DCHECK macros and use it instead of assert. * Do not calculate nbits in common case of ReadSymbol. * Introduce and use PREDICT_TRUE / PREDICT_FALSE macros. * Allocate less memory in the brotli decoder if it knows the result size beforehand. Before this, the decoder would always allocate 16MB if the encoder annotated the window size as 22 bit (which is the default), even if the file is only a few KB uncompressed. Now, it'll only allocate a ringbuffer as large as needed for the result file. But only if it can know the filesize, it's not possible to know that if there are multiple metablocks or too large uncompressed metablock. | ||
| 47ea7618 | 2015-04-28 10:14:55 | Merge pull request #93 from szabadka/master Don't do any block splitting for quality 1. | ||
| 0f726df1 | 2015-04-28 10:12:47 | Don't do any block splitting for quality 1. | ||
| 344ea8ed | 2015-04-28 10:08:52 | Merge pull request #92 from szabadka/master Fix an error propagation bug in the decoder. | ||
| fe14d7b3 | 2015-04-28 10:07:12 | Fix an error propagation bug in the decoder. | ||
| 4f902dcc | 2015-04-27 18:27:00 | Merge pull request #91 from szabadka/master Fix the year on the copyright message. |