packages feed

kvitable-1.0.0.0: kvitable.cabal

cabal-version:       >=1.10
name:                kvitable
version:             1.0.0.0
synopsis:            Key/Value Indexed Table container and formatting library
description:
   .
   Allows creation of a table from a set of of Key+Value Indices.
   This differs from the standard 'Map' structure in that the 'Map'
   simply indexes by value but the KVI table indexes by a
   heterogeneous list of keys along with their associated values.
   This effectively creates an N-dimensional table, where
   @N=Product(Count(Values[key]))@.  The table contents can be sparse.
   .
   This library also provides the ability to format multi-dimensional
   data in a table presentation.  The table is automatically formatted
   and can be output in a number of different styles (ascii, html,
   etc.)
   .
   Multi-dimensional data is more difficult to represent than simple
   two-dimensional data; this package provides the ability to select
   which dimensions should be represented as sub-rows and which
   dimensions should be represented as sub-columns.  See the README
   for examples

-- bug-reports:
license:             ISC
license-file:        LICENSE
author:              Kevin Quick
maintainer:          kquick@galois.com
copyright:           Kevin Quick, 2021
category:            Text
build-type:          Simple
tested-with:         GHC ==8.6.5 GHC ==8.8.4 GHC ==8.10.4 GHC ==9.0.1
extra-source-files:  CHANGELOG.md
                   , examples/hundreds_all.md
                   , examples/zoo.md
                   , README.md

library
  hs-source-dirs:      src
  default-language:    Haskell2010
  GHC-options:         -Wall -Wcompat -Wincomplete-uni-patterns -Wpartial-fields -fhide-source-paths
  -- other-extensions:
  exposed-modules:     Data.KVITable
                     , Data.KVITable.Render
                     , Data.KVITable.Render.ASCII
                     , Data.KVITable.Render.HTML
  -- other-modules:
  build-depends:       base >=4.12 && <4.16
                     , containers >= 0.6 && < 0.7
                     , lucid  >= 2.9 && < 2.10
                     , microlens >= 0.4 && < 0.5
                     , prettyprinter >= 1.7 && < 1.8
                     , text >= 1.2 && < 1.3

test-suite test-kvitable
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  default-language:    Haskell2010
  GHC-options:         -fhide-source-paths
  main-is:             TestMain.hs
  other-modules:       AsciiRenderTests
                     , HTMLRenderTests
                     , SampleTables
                     , TestQQDefs
  build-depends: base
               , html-parse
               , kvitable
               , microlens
               , pretty-show
               , tasty
               , tasty-hunit
               , template-haskell
               , text