packages feed

jsonnet-0.4.0.0: jsonnet.cabal

cabal-version:  3.0
name:           jsonnet
version:        0.4.0.0
synopsis:       Jsonnet implementaton in pure Haskell
description:    Please see the README on GitHub at <https://github.com/moleike/jsonnet-haskell#readme>
homepage:       https://github.com/moleike/haskell-jsonnet#readme
bug-reports:    https://github.com/moleike/haskell-jsonnet/issues
author:         Alexandre Moreno
maintainer:     alexmorenocano@gmail.com
copyright:      2020 Alexandre Moreno
category:       Compiler
license:        BSD-3-Clause
x-license:      BSD-3-Clause OR Apache-2.0
license-file:   LICENSE
build-type:     Simple
extra-doc-files:
    README.md
    CHANGELOG.md
extra-source-files:
    stdlib/std.jsonnet
    test/golden/*.jsonnet
    test/golden/*.golden
    test/golden/**/*.libsonnet

source-repository head
  type: git
  location: https://github.com/moleike/haskell-jsonnet

common common-extensions
  default-language: GHC2021
  default-extensions:
      LambdaCase
      DerivingStrategies
      DeriveAnyClass
      DerivingVia
      RecordWildCards

common common-warnings
  ghc-options:
    -Wall -Wcompat -Widentities -Wincomplete-record-updates
    -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints
    -Wno-unused-do-bind -Wunused-packages

library
  import:
      common-extensions
    , common-warnings
  exposed-modules:
      Language.Jsonnet
    , Language.Jsonnet.Error
    , Language.Jsonnet.Pretty
    , Language.Jsonnet.Parser
    , Language.Jsonnet.Parser.SrcSpan
    , Language.Jsonnet.Syntax
    , Language.Jsonnet.Syntax.Annotated
    , Language.Jsonnet.Annotate
    , Language.Jsonnet.Common
    , Language.Jsonnet.Value
    , Language.Jsonnet.Std.Lib
    , Language.Jsonnet.Std.TH
    , Language.Jsonnet.TH
    , Language.Jsonnet.TH.QQ
    , Language.Jsonnet.Eval
    , Language.Jsonnet.Eval.Monad
    , Language.Jsonnet.Core
    , Language.Jsonnet.Check
    , Language.Jsonnet.Desugar
  autogen-modules:
      Paths_jsonnet
  other-modules:
      Paths_jsonnet

  hs-source-dirs:
      src
  build-depends:
      aeson                         >= 2.2 && < 2.3,
      base                          >= 4.20 && < 4.22,
      bytestring                    >= 0.11 && < 0.13,
      containers                    >= 0.6.2 && < 0.8,
      scientific                    >= 0.3.7 && < 0.4,
      text                          >= 2.0 && < 2.2,
      template-haskell              >= 2.16.0 && < 2.23,
      data-fix                      >= 0.3.1 && < 0.4,
      transformers-compat           >= 0.6.6 && < 0.8,
      unordered-containers          >= 0.2.14 && < 0.3,
      mtl                           >= 2.2.2 && < 2.4,
      vector                        >= 0.12.3 && < 0.14,
      prettyprinter                 >= 1.7.0 && < 1.8,
      directory                     >= 1.3.6 && < 1.4,
      filepath                      >= 1.4.2 && < 1.6,
      exceptions                    >= 0.10.4 && < 0.11,
      lens                          >= 5.0.1 && < 5.4,
      megaparsec                    >= 9.5 && < 9.8,
      parser-combinators            >= 1.2.1 && < 1.4,
      unbound-generics              >= 0.4.3 && < 0.5,
      th-utilities                  >= 0.2.4.2 && < 0.3,
      binary                        >= 0.8.8 && < 0.9,
      th-lift-instances             >= 0.1.18 && < 0.2

executable hs-jsonnet
  import:
      common-extensions
    , common-warnings
  main-is: Main.hs
  autogen-modules:
      Paths_jsonnet
  other-modules:
      Paths_jsonnet
  hs-source-dirs:
      app
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      jsonnet,
      aeson,
      base,
      bytestring,
      text,
      megaparsec,
      optparse-applicative >= 0.16.1 && < 0.19

test-suite jsonnet-test
  import:
      common-extensions
    , common-warnings
  type: exitcode-stdio-1.0
  main-is: Main.hs
  autogen-modules:
      Paths_jsonnet
  other-modules:
      Paths_jsonnet
    , Language.Jsonnet.Test.Roundtrip
    , Language.Jsonnet.Test.Golden
  hs-source-dirs:
      test
    , test/golden
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      base
    , containers
    , prettyprinter
    , jsonnet
    , text
    , filepath
    , data-fix
    , bytestring
    , tasty
    , tasty-golden
    , hedgehog
    , tasty-hedgehog

benchmark jsonnet-bench
  import:
      common-extensions
    , common-warnings
  main-is: Bench.hs
  type: exitcode-stdio-1.0
  hs-source-dirs:
      benchmarks
  build-depends:
      base
    , tasty-bench
    , jsonnet
    , bytestring
    , text
    , prettyprinter
  ghc-options: "-with-rtsopts=-A32m --nonmoving-gc"