packages feed

polytropos-beam-0.1.0.2: polytropos-beam.cabal

cabal-version: 3.0
name: polytropos-beam
version: 0.1.0.2
synopsis: beam database schema integration for polytropos open records
description:
  Integration enabling <https://hackage.haskell.org/package/polytropos polytropos> open records to act as
  <https://hackage.haskell.org/package/beam-core beam-core> database tables and query projections without
  compiler out-of-memory crashes on wide schemas (50+ columns).

  The 'Database.Beam.Schema.Tables.Beamable' instance operates directly over the flat contiguous
  'Data.Primitive.SmallArray.SmallArray' payload: scaling column count costs exactly one array slot
  rather than exploding generic-representation AST trees during compilation.

  Start at the front door module "Polytropos.Beam" for schema definitions,
  table wrappers, and worked examples.
license: EUPL-1.2 OR Apache-2.0
license-file: LICENSE
author: Nadia Yvette Chambers
maintainer: nadia.yvette.chambers@ik.me
category: Database
homepage: https://github.com/NadiaYvette/polytropos
bug-reports: https://github.com/NadiaYvette/polytropos/issues
extra-doc-files:
    README.md
  , CHANGELOG.md
build-type: Simple

source-repository head
  type:     git
  location: https://github.com/NadiaYvette/polytropos
  subdir:   packages/polytropos-beam

library
  default-language: GHC2021
  hs-source-dirs: src
  exposed-modules: Polytropos.Beam
  ghc-options: -Wall
  build-depends:
    base >= 4.14 && < 5,
    beam-core >= 0.9 && < 0.12,
    polytropos-core >= 0.1 && < 0.2,
    polytropos-plugin >= 0.1 && < 0.2

test-suite polytropos-beam-test
  type: exitcode-stdio-1.0
  default-language: GHC2021
  hs-source-dirs: test
  main-is: Main.hs
  ghc-options: -Wall -fplugin=Polytropos.Plugin
  build-depends:
    base,
    beam-core,
    polytropos-core,
    polytropos-beam,
    polytropos-plugin,
    tasty,
    tasty-hunit