All Versions
14
Latest Version
Avg Release Cycle
3 days
Latest Release
799 days ago

Changelog History
Page 1

  • v0.4.2 Changes

    June 04, 2020
    • โž• Added support for Data.ByteString.Short, Data.ByteString.Lazy, Data.Text.Short, and Data.Text.Lazy. (#17)
    • โšก๏ธ Optimize decode algorithm (now beats base64-bytestring in every category!) - (#13)
    • ๐Ÿ‘‰ Use decodeLatin1 when decoding to text, so that functions are total - (#13)
    • โž• Added decodeWith* variants and a Base64Error type to handle decoding errors when decoding base64 values - (#13)
    • ๐Ÿ‘Œ Improved error reporting: all offsets are now precisely accurate. - (#13)
    • โœ… Validations added to head, rejecting invalid corner cases (such as bytestrings of length l == 1 mod 4, which are never correct) - (#16)
    • โž• Added decodeBase64Padded for symmetry - (#13)
  • v0.4.2.3 Changes

    • Tighter length calculations in unpadded base64url #35
  • v0.4.2.2 Changes

    July 05, 2020
    • โž• Add NFData, Exception, and Generic instances for Base64Error + @since annotations for new instances. (#28)
    • Doc improvements and add -XTrustworty and -XSafe annotations where needed. (#27)
    • ๐Ÿ‘Œ Improve URL canonicity validation and correctness checking (now supports correct checking for unpadded Base64url) (#26)
    • ๐Ÿ›  Fixed perf regressions in decode
    • โœ… Test coverage is at 98%
  • v0.4.2.1 Changes

    • ๐Ÿ”’ Security fix: reject non-canonical base64 encoded values - (#25)

    • Perf improvements

  • v0.4.1 Changes

    February 04, 2020
    • โšก๏ธ Optimize loops for 32-bit and 64-bit architectures
    • Restructure project to be more amenable to swapping head/tail/loops
    • ๐Ÿ›  Fix module header alignment
  • v0.4.0 Changes

    January 26, 2020
    • ๐Ÿš€ With this major version release, we remove the redundant encodeBase64Unpadded and decodeBase64Unpadded functions from Base64.hs. This is for two reasons:

      1. There is no reason for them to exist, since all std base64 is expected to be padded (in contrast to base64url)
      2. it was literally redundant with decodeBase64.
    • ๐Ÿ‘‰ Use a specialized Bool type to give better visual cues regarding which functions add padding

  • v0.3.1 Changes

    January 10, 2020

    ๐Ÿ›  This release contains bugfixes for isBase64 and adds two new validity checking functions isValidBase64 (conformity to the shape of base64 as opposed to correctness).

    ๐Ÿ‘ Also, adds stack 8.2 support

  • v0.3.1.1 Changes

    January 15, 2020
    • ๐Ÿ— Make sure benchmark code builds
  • v0.3.1.0 Changes

    January 08, 2020
    • ๐Ÿ› Bug fix for isBase64 and isBase64Url - wrong alphabet was used
    • Added isValidBase64 and isValidBase64Url for alphabet conformity. The isBase64* functions now tell if it's correct base64 now in the sense that it's decodable and valid.
    • โฌ‡๏ธ Dropped Cabal version to 2.0 for backcompat with Stack
    • ๐Ÿ‘ Better documentation
  • v0.3 Changes

    January 07, 2020

    After some great feedback from phadej and lexilambda, I'm settling on this being the API for Base64.