base32-1.0: base32.cabal
cabal-version: 3.0
name: base32
version: 1.0
synopsis: Fast RFC 4648-compliant Base32 encoding
description:
RFC 4648-compliant Base32 encodings and decodings.
This library provides performant encoding and decoding primitives,
as well as support for textual values.
homepage: https://github.com/emilypi/base32
bug-reports: https://github.com/emilypi/base32/issues
license: BSD-3-Clause
license-file: LICENSE
author: Emily Pillmore
maintainer: emilypi@cohomolo.gy
copyright: (c) 2020-2026 Emily Pillmore
category: Data
build-type: Simple
extra-doc-files:
CHANGELOG.md
README.md
MIGRATION-1.0.md
tested-with:
GHC ==9.6.7 || ==9.8.4 || ==9.10.3 || ==9.12.4 || ==9.14.1
extra-source-files:
cbits/base32_simd.h
test/simd-native.c
test/typecheck.sh
flag simd
description: Enable bundled SIMD kernels with portable scalar fallback
default: False
manual: True
source-repository head
type: git
location: https://github.com/emilypi/base32.git
library
exposed-modules:
Data.Base32.Types
Data.ByteString.Base32
Data.ByteString.Base32.Hex
Data.ByteString.Lazy.Base32
Data.ByteString.Lazy.Base32.Hex
Data.ByteString.Short.Base32
Data.ByteString.Short.Base32.Hex
Data.Text.Encoding.Base32
Data.Text.Encoding.Base32.Error
Data.Text.Encoding.Base32.Hex
Data.Text.Lazy.Encoding.Base32
Data.Text.Lazy.Encoding.Base32.Hex
Data.Text.Short.Encoding.Base32
Data.Text.Short.Encoding.Base32.Hex
Data.ByteString.Base32.Internal.Short
Data.ByteString.Base32.Internal.Head
Data.ByteString.Base32.Internal.Loop
Data.ByteString.Base32.Internal.Tables
Data.ByteString.Base32.Internal.Tail
Data.ByteString.Base32.Internal.Utils
if flag(simd)
exposed-modules: Data.ByteString.Base32.Internal.SIMD
cpp-options: -DBASE32_SIMD
c-sources: cbits/base32_simd.c
include-dirs: cbits
cc-options: -O2 -std=c99
build-depends:
base >=4.18 && <4.23
, bytestring >=0.11 && <0.13
, deepseq >=1.4.4.0 && <1.6
, primitive >=0.6 && <0.10
, text >=2.0 && <2.3
, text-short ^>=0.1
hs-source-dirs: src
default-language: Haskell2010
ghc-options: -Wall
test-suite base32-tests
default-language: Haskell2010
type: exitcode-stdio-1.0
hs-source-dirs: test
other-modules: Internal
Regression
main-is: Main.hs
ghc-options: -Wall -threaded -rtsopts
build-depends:
base >=4.18 && <4.23
, base32
, bytestring >=0.11 && <0.13
, deepseq
, memory
, QuickCheck
, tasty
, tasty-hunit
, tasty-quickcheck
, text >=2.0
, text-short
benchmark bench
default-language: Haskell2010
type: exitcode-stdio-1.0
hs-source-dirs: benchmarks
main-is: Base32Bench.hs
build-depends:
base >=4.18 && <4.23
, base32
, bytestring >=0.11 && <0.13
, criterion
, deepseq
, text >=2.0
, text-short
if flag(simd)
cpp-options: -DBASE32_SIMD
ghc-options: -Wall -rtsopts