Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-01-16 | Cowlib 2.12.0 | Loïc Hoguin | |
2020-10-07 | Minor optimization in cow_hpack:update_table_size/2 | Viktor Söderqvist | |
Table only needs to be resized if the current size exceeds the new max size, regardless of current max size. | |||
2020-10-07 | Make HPACK encode respect new configured max size | Viktor Söderqvist | |
Correction to cow_hpack:encode/2,3 according to RFC 7541, 4.3. Entry Eviction When Dynamic Table Size Changes. This change also corrects the handling of inserting entries larger than the max size, which shall result in an empty table, according to 4.4. in the same RFC. Fixes #101, #103. | |||
2020-03-30 | Fix some HPACK Huffman decoding failure cases | Loïc Hoguin | |
When EOS is found within the string the decoding must fail. When the final padding is > 7 bit in length the decoding must fail as well. | |||
2019-12-29 | HPACK: Fix inline integer decodings | Loïc Hoguin | |
There's no shift to be done for the first value. | |||
2019-12-27 | HPACK: Turn off Dialyzer warning about improper lists | Loïc Hoguin | |
2019-12-27 | HPACK decode: decode integers directly to avoid copying binaries | Loïc Hoguin | |
2019-12-27 | HPACK decode: don't try to drop entries when increasing size | Loïc Hoguin | |
2019-12-27 | HPACK encoding now produces a more compact result | Loïc Hoguin | |
This in turn leads to a small performance improvement. | |||
2019-12-26 | Fix Proper tests following cow_hpack changes | Loïc Hoguin | |
2019-12-26 | HPACK encode shouldn't maps:get(huffman...) for every string | Loïc Hoguin | |
2019-12-26 | Use binary append instead of lists:reverse | Loïc Hoguin | |
2019-12-26 | Remove unused cow_hpack:decode/3 Opts argument | Loïc Hoguin | |
2019-12-26 | HPACK encode: conditionally call an iolist_to_binary | Loïc Hoguin | |
This provides a small but noticeable improvement so it's probably worth doing. | |||
2019-12-25 | Fix typo in comment | Loïc Hoguin | |
2019-12-25 | Optimize HPACK Huffman decoding | Loïc Hoguin | |
The previous naive implementation ended up not benefitting from binary match context reuse because it was matching on bit boundaries (and not bytes). This new implementation matches a byte at a time. The result is almost twice faster when decoding the examples from the HPACK RFC (before/after): cow_hpack:decode_huffman in 0.250666s cow_hpack:decode_huffman in 0.133743s | |||
2018-04-25 | Prevent the HPACK configured_max_size from being dropped | Loïc Hoguin | |
2018-04-23 | Add proper support for table size updates | Loïc Hoguin | |
2017-07-10 | Switch from Triq to Proper | Loïc Hoguin | |
2016-10-09 | Fix HPACK table size tracking when table is pruned | Pablo Polvorin | |
The new entry size wasn't being added to the table size after a prune. Also fixes incorrect test cases. The size number was different than the one found in RFC 7541 Appendix C. | |||
2016-10-04 | Fix Dialyzer warnings | Loïc Hoguin | |
2016-06-08 | Fix #39: Prefer crypto:strong_rand_bytes/1 | Leo Liu | |
See also https://github.com/erlang/otp/pull/883 | |||
2016-05-24 | HPACK: Fix an issue with header values as iolists | Loïc Hoguin | |
2015-03-19 | Add HPACK decoding and encoding functions | Loïc Hoguin | |
No decoding options have been added in this commit. They will be added in the future. Only one encoding option has been added: #{huffman => boolean()}. It allows to disable Huffman compression of strings. This compression is enabled by default. |