packages feed

bytestring-lexing-0.5.0.13: bytestring-lexing.cabal

Cabal-Version:  2.2
-- Cabal >=2.2 is required for:
--    <https://cabal.readthedocs.io/en/latest/cabal-package.html#common-stanzas>
-- Since 2.1, the Cabal-Version must be the absolutely first thing
-- in the file, even before comments.  Also, no longer uses ">=".
--    <https://github.com/haskell/cabal/issues/4899>

----------------------------------------------------------------
-- wren gayle romano <wren@cpan.org>                ~ 2024-08-29
----------------------------------------------------------------

Name:           bytestring-lexing
Version:        0.5.0.13
Build-Type:     Simple
Stability:      provisional
Homepage:       https://wrengr.org/software/hackage.html
Bug-Reports:    https://github.com/wrengr/bytestring-lexing/issues
Author:         wren gayle romano, Don Stewart
Maintainer:     wren@cpan.org
Copyright:      2012–2024 wren romano, 2008–2011 Don Stewart
-- Cabal-2.2 requires us to say "BSD-3-Clause" not "BSD3"
License:        BSD-3-Clause
License-File:   LICENSE

Category:       Data
Synopsis:
    Efficiently parse and produce common integral and fractional numbers.
Description:
    The bytestring-lexing package offers extremely efficient `ByteString`
    parsers for some common lexemes: namely integral and fractional
    numbers. In addition, it provides efficient serializers for (some
    of) the formats it parses.
    .
    As of version 0.3.0, bytestring-lexing offers the best-in-show
    parsers for integral values. (According to the Warp web server's
    benchmark of parsing the Content-Length field of HTTP headers.) And
    as of version 0.5.0 it offers (to my knowledge) the best-in-show
    parser for fractional/floating numbers.
    .
    Some benchmarks for this package can be found at:
    <https://github.com/wrengr/bytestring-lexing/tree/master/bench/html>

----------------------------------------------------------------
Extra-source-files:
    AUTHORS, CHANGELOG, README.md

-- We only list here what is still being verified by CI:
-- <https://github.com/wrengr/bytestring-lexing/actions?query=workflow%3Aci>
-- For older versions of GHC and older versions of this library, see:
-- <https://matrix.hackage.haskell.org/#/package/bytestring-lexing/>
-- And if needed, you can try relaxing the lower bounds according to:
-- <https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/libraries/version-history>
Tested-With:
    GHC ==8.0.2,
    GHC ==8.2.2,
    GHC ==8.4.4,
    GHC ==8.6.5,
    GHC ==8.8.4,
    GHC ==8.10.3,
    GHC ==9.0.1,
    GHC ==9.2.4,
    GHC ==9.4.8,
    GHC ==9.6.5,
    GHC ==9.8.2,
    GHC ==9.10.1

Source-Repository head
    Type:     git
    Location: https://github.com/wrengr/bytestring-lexing.git

----------------------------------------------------------------
Library
    Default-Language: Haskell2010
    Ghc-Options:     -O2
    Hs-Source-Dirs:  src
    Exposed-Modules: Data.ByteString.Lex.Integral
                     Data.ByteString.Lex.Fractional
    Other-Modules:   Data.ByteString.Lex.Internal

    -- TODO(2021-10-23): bytestring 0.11.0.0 changed the internal
    --   representation of ByteStrings to remove the offset.  While
    --   they do offer pattern synonyms for backwards combatibility,
    --   we should re-verify that our code doesn't depend on the details.
    --   <https://github.com/haskell/bytestring/pull/175>
    Build-Depends:  base              >= 4.9     && < 4.21
                 ,  bytestring        >= 0.10.8  && < 0.13

----------------------------------------------------------------
-- <https://www.haskell.org/cabal/users-guide/developing-packages.html#test-suites>
-- You can either:
-- (1) have type:exitcode-stdio-1.0 & main-is:
--     where main-is exports `main::IO()` as usual. Or,
-- (2) have type:detailed-0.9 & test-module:
--     where test-module exports tests::IO[Distribution.TestSuite.Test]
--     and you have Build-Depends: Cabal >= 1.9.2
--
-- Rather than using Cabal's built-in detailed-0.9 framework, we
-- could use the test-framework* family of packages with
-- exitcode-stdio-1.0. cf.,
-- <http://hackage.haskell.org/package/Decimal-0.4.2/src/Decimal.cabal> Or
-- the tasty* family of packages with exitcode-stdio-1.0. Notice
-- that test-framework-smallcheck is deprecated in favor of
-- tasty-smallcheck. Both have more dependencies than Cabal, so
-- will be harder to install on legacy systems; but then we wouldn't
-- have to maintain our own code to glue into Cabal's detailed-0.9.
-- Note that the oldest Tasty requires base>=4.5 whereas the oldest
-- test-framework seems to have no lower bound on base.

Test-Suite test-all
    Default-Language: Haskell2010
    Hs-Source-Dirs: test
    Type:           exitcode-stdio-1.0
    -- HACK: main-is must *not* have ./test/ like it does for executables!
    Main-Is:        Main.hs
    Other-Modules:  Integral
                 ,  Fractional
    -- We must include this library in order for the tests to use
    -- it; but we must not give a version restriction lest Cabal
    -- give warnings.
    Build-Depends:  base              >= 4.5      && < 5
                 ,  bytestring        >= 0.9.2.1  && < 0.13
                 ,  bytestring-lexing
                 ,  tasty             >= 0.10.1.2 && < 1.6
                 ,  tasty-smallcheck  >= 0.8.0.1  && < 0.9
                 ,  tasty-quickcheck  >= 0.8.3.2  && < 0.11
                 -- QuickCheck        >= 2.10     && < 2.15
                 -- smallcheck        >= 1.1.1    && < 1.3
                 -- lazysmallcheck    >= 0.6      && < 0.7

-- cabal configure flags:
-- * --enable-tests
-- * --enable-coverage (replaces the deprecated --enable-library-coverage)
-- * --enable-benchmarks (doesn't seem to actually work... At least, I was getting errors whenever I tried passing this; maybe upping the cabal-version to 1.8 fixed that?)

----------------------------------------------------------------
----------------------------------------------------------- fin.