1. Apr 28, 2017
  2. Apr 23, 2017
  3. Apr 14, 2017
  4. Apr 11, 2017
  5. Apr 10, 2017
  6. Apr 06, 2017
    • Eugene Kliuchnikov's avatar
      Update c- and java-decoder: (#536) · 21c118ba
      Eugene Kliuchnikov authored
      * speedup java decoder
         * avoid masking
         * avoid excessive fillBits
         * streamline uncompressed block processing
       * make java decoder more transpilation-friendly
       * avoid non-essential goto in c-decoder
      21c118ba
  7. Apr 04, 2017
  8. Mar 30, 2017
  9. Mar 24, 2017
  10. Mar 23, 2017
  11. Mar 22, 2017
  12. Mar 21, 2017
  13. Mar 10, 2017
  14. Mar 06, 2017
    • Eugene Kliuchnikov's avatar
      Update common, decoder, encoder, java (#520) · cdca91b6
      Eugene Kliuchnikov authored
      Common:
       * wrap dictionary data into `BrotliDictionary` structure
       * replace public constant with getter `BrotliGetDictionary`
       * reformat dictionary data
      
      Decoder:
       * adopt common changes
       * clarify acceptable instance usage patterns
       * hold reference to dictionary in state
      
      Encoder:
       * adopt common changes
       * eliminate PIC spots in `CreateBackwardReferences`
       * add per-chunk ratio guards for q0 and q1
       * precompute relative distances to avoid repeated calculations
       * prostpone hasher allocation/initialization
       * refactor Hashers to be class-like structure
       * further improvements for 1MiB+ inputs
       * added new hasher type; made hashers more configurable
      
      Java:
       * Pull byte->int magic to `IntReader` from `BitReader`
      cdca91b6
  15. Mar 01, 2017
  16. Feb 28, 2017
  17. Feb 20, 2017
  18. Feb 19, 2017
  19. Feb 17, 2017
  20. Feb 09, 2017
  21. Feb 07, 2017
    • Eugene Kliuchnikov's avatar
      Fix #502 decoder bug (#505) · 0749d9ca
      Eugene Kliuchnikov authored
      Decoder may have produced invalid output if:
       * at offset 0..3 dictionary word with index 3..0 for some length N is used
         and distance is encoded with direct distance code 0, and
       * at least one of next 4 commands use value from distance ringbuffer
      0749d9ca
  22. Feb 06, 2017
    • Eugene Kliuchnikov's avatar
      Update encoder (#504) · 11df843c
      Eugene Kliuchnikov authored
      * pull `BROTLI_MAX_BACKWARD_LIMIT` to constants
       * split generic and Zopfli backward references code
       * pull hashers init and stitch invocation to encoder
       * make `dictionary_hash` a compilation unit
       * add `size hint` parameter
       * add new hasher
       * use `size hint` to pick new hasher for q4
       * modernize clz guard (fix #495)
       * move `hash to binary tree` to separate file
       * add `Initialize` and `Cleanup` to all hashers
       * do not raise OOM if malloc(0) == NULL (fix #500)
      11df843c
  23. Jan 26, 2017
    • Eugene Kliuchnikov's avatar
      Update encoder (#497) · 8d3fdc1d
      Eugene Kliuchnikov authored
      * pad dictionary LUTs to length 32, etc. (#493)
       * avoid using INFINITY constant (#496)
       * make dictionary_hash.h more compact
       * add "disable literal context modelling" parameter
      8d3fdc1d
  24. Dec 22, 2016
  25. Dec 21, 2016
  26. Dec 20, 2016
    • jneb's avatar
      brotlidump.py: disassemble brotli file (revisited) (#314) · f62cd2bc
      jneb authored
      * Create brotlidump.py
      
      Sorry, I am a newbie. I couldn't find my file anymore when I wanted to edit it. Hope I don't waste your time.
      
      * Fixed a bug where it couldn't read its own compression.
      
      The problem was that a prefix code ending with a 16 "repeat" didn't realize the table was full already.
      Also minor bug fixes, comments and stuff.
      
      * Major refactoring
      
      Rewrote almost everything.
      Now can dump its own compression.
      
      * Now more or less complete
      
      Appears to handle all files completely (including metablock data).
      Used as inspiration for the the hex example (see makehexexample.py)
      f62cd2bc