packages feed

nano-svg-0.2.0.0: nano-svg.cabal

cabal-version:      3.0
name:               nano-svg
version:            0.2.0.0
synopsis:           An SVG parser for icons

description:
    Parse static SVG icons and vector artwork for geometry renderers,
    rasterizers and UI toolkits.

    Reads UTF-8 @ByteString@ input using @hexml@ for XML and @flatparse@
    for attribute values. Returns a flat array of shapes in paint order,
    each with absolute path segments, a transform and a resolved style.
    Rendering and viewport mapping are left to the caller.

    Gradients, patterns, text, masks, clipping paths, filters and CSS
    stylesheets are not supported. See "Graphics.NanoSvg" for supported
    features and limitations.

license:            MIT
license-file:       LICENSE
author:             goolord
maintainer:         zacharyachurchill@gmail.com
category:           Graphics
homepage:           https://github.com/goolord/nano-svg
bug-reports:        https://github.com/goolord/nano-svg/issues
build-type:         Simple
tested-with:        GHC ==9.14.1
extra-doc-files:
    CHANGELOG.md
    README.md

source-repository head
    type:     git
    location: https://github.com/goolord/nano-svg.git

common extensions
    default-language: GHC2021
    default-extensions:
        BlockArguments
        LambdaCase
        OverloadedStrings

common ghc-options
    ghc-options:
        -Wall
        -Widentities
        -Wcompat
        -Wincomplete-record-updates
        -Wincomplete-uni-patterns
        -Wmissing-export-lists
        -Wmissing-home-modules
        -Wpartial-fields
        -Wredundant-constraints

common rts-options
    ghc-options: -rtsopts -threaded "-with-rtsopts=-N"

library
    import:           extensions
    import:           ghc-options
    exposed-modules:
        Graphics.NanoSvg
        Graphics.NanoSvg.Attribute
        Graphics.NanoSvg.Types

    hs-source-dirs:   lib
    build-depends:
        base       >=4.17  && <4.23,
        bytestring >=0.11.1 && <0.13,
        containers >=0.6    && <0.9,
        flatparse  >=0.5    && <0.6,
        hexml      >=0.3.5 && <0.4,
        primitive  >=0.9   && <0.10

test-suite nano-svg-test
    import:           extensions
    import:           ghc-options
    import:           rts-options
    type:             exitcode-stdio-1.0
    hs-source-dirs:   test
    main-is:          Main.hs
    ghc-options:      -Wno-missing-export-lists
    build-depends:
        base,
        bytestring,
        nano-svg,
        primitive,
        QuickCheck       >=2.14 && <2.19,
        tasty            >=1.4  && <1.6,
        tasty-hunit      >=0.10 && <0.11,
        tasty-quickcheck >=0.10 && <0.12