BSD-3-Clause licensed by Emily Pillmore
This version can be pinned in stack with:base32-0.4@sha256:703fa85b21f4b25b1ef2a214398ae3133cc2def2941e21f7cc50fd2a7c301120,2795
Module documentation for 0.4
- Data
- Data.ByteString
- Data.Text
- Data.Text.Encoding
- Data.Text.Lazy
- Data.Text.Short
Base32
Padded and unpadded base32 and base32hex encoding and decoding for Text
and ByteString
values.
For the companion optics and pattern synonyms, see base32-lens.
Summary
The following types are supported for both padded and unpadded std and extended hex alphabets:
Data.ByteString
Data.ByteString.Lazy
Data.ByteString.Short
Data.Text
Data.Text.Lazy
Data.Text.Short
Additionally this library has
- Better performance than
memory
for encode and decode 3-4x.
- Optics for handling more complex structures with Base32 representations via the
base32-lens
package
- Checks for both validity and correctness of Base32 and Base32hex encodings
There are no dependencies aside from those bundled with GHC, text-short
.
Revision history for base32
0.4
- Support for GHC 9.8
- Drop support for GHC <9.x
- Bump
bytestring
lower bound to 0.11 (thanks @vlix!)
0.3.1.0
- Small bug fix
- Doc updates
0.3
- Bump lower bounds for
bytestring
and text
to latest significant major/major version
- Update CI for 8.10.x thru 9.6 coverage
- Correct the update the latin1 decode default for text modules to
utf8
(which is now pure for text-2.0
).
0.2.2.0
- Add support for GHC 9.2.x
- Drop support for GHC <8.10
- Drop dependency on
ghc-byteorder
- Bump bounds for
deepseq
0.2.1.0
- Expose
Data.ByteString.Base32.Internal
API
- Use closed-form encoding/decoding length calculations, reducing branching and improving performance
- Update tests:
- Migrate to using lower heap-footprint concrete dict passing
- Support for 8.10.5 testing
0.2.0.0
- Bugfix: fix unpadded base32 encoding (#4)
- Bugfix: Use
decodeLatin1
when decoding, defer to decodeWith*
primitives for finer-grained
Text
to ByteString
conversions. (#5)
- Add short and lazy variants for
Text
and ByteString
(#6)
- Expanded test coverage to 96% (#7)
- Improved performance and better error reporting in final quanta (#9)
- Improved docs + trustworthy/safe annotations (#10)
0.1.1.1 – 2020-02-16
- Documentation now references correct RFC section
0.1.1 – 2020-02-16
- Textual interface now uses correct unpadded version
0.1.0.0 – 2020-02-16
- First version. Released on an unsuspecting world.