packages feed

hydra-0.13.0: hydra.cabal

cabal-version: 1.12

-- This file has been generated from package.yaml by hpack version 0.38.1.
--
-- see: https://github.com/sol/hpack

name:           hydra
version:        0.13.0
synopsis:       Graph programming language
description:    Hydra is an implementation of the LambdaGraph data model, which takes advantage of an isomorphism between labeled hypergraphs and typed lambda calculus: in Hydra, "graphs are programs, and programs are graphs". The language is designed to be embedded in other programming languages -- currently Haskell, Java, and Python. Hydra transforms data, schemas, and functional programs into multiple other languages in a way which maintains type safety. It is self-hosting in Haskell -- it generates its own executable source code from Hydra sources -- and it is designed to become self-hosting in its other implementation languages, as well.
category:       Data
homepage:       https://github.com/CategoricalData/hydra#readme
bug-reports:    https://github.com/CategoricalData/hydra/issues
author:         Joshua Shinavier <josh@fortytwo.net>
maintainer:     Joshua Shinavier <josh@fortytwo.net>
license:        Apache-2.0
license-file:   LICENSE
build-type:     Simple
extra-source-files:
    LICENSE
    README.md
    stack.yaml

source-repository head
  type: git
  location: https://github.com/CategoricalData/hydra

library
  exposed-modules:
      Hydra.Dsl.Annotations
      Hydra.Dsl.AsTerm
      Hydra.Dsl.AsType
      Hydra.Dsl.Bootstrap
      Hydra.Dsl.Grammars
      Hydra.Dsl.Literals
      Hydra.Dsl.LiteralTypes
      Hydra.Dsl.Meta.Accessors
      Hydra.Dsl.Meta.Ast
      Hydra.Dsl.Meta.Base
      Hydra.Dsl.Meta.Coders
      Hydra.Dsl.Meta.Common
      Hydra.Dsl.Meta.Compute
      Hydra.Dsl.Meta.Core
      Hydra.Dsl.Meta.DeepCore
      Hydra.Dsl.Meta.Grammar
      Hydra.Dsl.Meta.Graph
      Hydra.Dsl.Meta.Json
      Hydra.Dsl.Meta.Lib.Chars
      Hydra.Dsl.Meta.Lib.Eithers
      Hydra.Dsl.Meta.Lib.Equality
      Hydra.Dsl.Meta.Lib.Flows
      Hydra.Dsl.Meta.Lib.Lists
      Hydra.Dsl.Meta.Lib.Literals
      Hydra.Dsl.Meta.Lib.Logic
      Hydra.Dsl.Meta.Lib.Maps
      Hydra.Dsl.Meta.Lib.Math
      Hydra.Dsl.Meta.Lib.Maybes
      Hydra.Dsl.Meta.Lib.Pairs
      Hydra.Dsl.Meta.Lib.Sets
      Hydra.Dsl.Meta.Lib.Strings
      Hydra.Dsl.Meta.Literals
      Hydra.Dsl.Meta.Module
      Hydra.Dsl.Meta.Parsing
      Hydra.Dsl.Meta.Phantoms
      Hydra.Dsl.Meta.Terms
      Hydra.Dsl.Meta.Testing
      Hydra.Dsl.Meta.Topology
      Hydra.Dsl.Meta.Types
      Hydra.Dsl.Meta.Typing
      Hydra.Dsl.Meta.Util
      Hydra.Dsl.Meta.Variants
      Hydra.Dsl.Prims
      Hydra.Dsl.Tabular
      Hydra.Dsl.Terms
      Hydra.Dsl.Tests
      Hydra.Dsl.Types
      Hydra.Generation
      Hydra.Kernel
      Hydra.Lib.Chars
      Hydra.Lib.Eithers
      Hydra.Lib.Equality
      Hydra.Lib.Flows
      Hydra.Lib.Lists
      Hydra.Lib.Literals
      Hydra.Lib.Logic
      Hydra.Lib.Maps
      Hydra.Lib.Math
      Hydra.Lib.Maybes
      Hydra.Lib.Pairs
      Hydra.Lib.Sets
      Hydra.Lib.Strings
      Hydra.Minimal
      Hydra.Settings
      Hydra.Sources.All
      Hydra.Sources.CoderUtils
      Hydra.Sources.Eval.Lib.All
      Hydra.Sources.Eval.Lib.Eithers
      Hydra.Sources.Eval.Lib.Flows
      Hydra.Sources.Eval.Lib.Lists
      Hydra.Sources.Eval.Lib.Maps
      Hydra.Sources.Eval.Lib.Maybes
      Hydra.Sources.Eval.Lib.Pairs
      Hydra.Sources.Eval.Lib.Sets
      Hydra.Sources.Haskell.Ast
      Hydra.Sources.Haskell.Coder
      Hydra.Sources.Haskell.Language
      Hydra.Sources.Haskell.Operators
      Hydra.Sources.Haskell.Serde
      Hydra.Sources.Haskell.Utils
      Hydra.Sources.Json.Bootstrap
      Hydra.Sources.Json.Coder
      Hydra.Sources.Json.Decode
      Hydra.Sources.Json.Decoding
      Hydra.Sources.Json.Encode
      Hydra.Sources.Json.Extract
      Hydra.Sources.Json.Language
      Hydra.Sources.Json.Model
      Hydra.Sources.Json.Parser
      Hydra.Sources.Json.Writer
      Hydra.Sources.Kernel.Terms.Adapt.Literals
      Hydra.Sources.Kernel.Terms.Adapt.Modules
      Hydra.Sources.Kernel.Terms.Adapt.Simple
      Hydra.Sources.Kernel.Terms.Adapt.Terms
      Hydra.Sources.Kernel.Terms.Adapt.Utils
      Hydra.Sources.Kernel.Terms.All
      Hydra.Sources.Kernel.Terms.Annotations
      Hydra.Sources.Kernel.Terms.Arity
      Hydra.Sources.Kernel.Terms.Checking
      Hydra.Sources.Kernel.Terms.CodeGeneration
      Hydra.Sources.Kernel.Terms.Constants
      Hydra.Sources.Kernel.Terms.Decoding
      Hydra.Sources.Kernel.Terms.Encoding
      Hydra.Sources.Kernel.Terms.Extract.Core
      Hydra.Sources.Kernel.Terms.Extract.Helpers
      Hydra.Sources.Kernel.Terms.Extract.Util
      Hydra.Sources.Kernel.Terms.Formatting
      Hydra.Sources.Kernel.Terms.Grammars
      Hydra.Sources.Kernel.Terms.Hoisting
      Hydra.Sources.Kernel.Terms.Inference
      Hydra.Sources.Kernel.Terms.Languages
      Hydra.Sources.Kernel.Terms.Lexical
      Hydra.Sources.Kernel.Terms.Literals
      Hydra.Sources.Kernel.Terms.Monads
      Hydra.Sources.Kernel.Terms.Names
      Hydra.Sources.Kernel.Terms.Parsers
      Hydra.Sources.Kernel.Terms.Reduction
      Hydra.Sources.Kernel.Terms.Reflect
      Hydra.Sources.Kernel.Terms.Rewriting
      Hydra.Sources.Kernel.Terms.Schemas
      Hydra.Sources.Kernel.Terms.Serialization
      Hydra.Sources.Kernel.Terms.Show.Accessors
      Hydra.Sources.Kernel.Terms.Show.Core
      Hydra.Sources.Kernel.Terms.Show.Graph
      Hydra.Sources.Kernel.Terms.Show.Meta
      Hydra.Sources.Kernel.Terms.Show.Typing
      Hydra.Sources.Kernel.Terms.Show.Util
      Hydra.Sources.Kernel.Terms.Sorting
      Hydra.Sources.Kernel.Terms.Substitution
      Hydra.Sources.Kernel.Terms.Tarjan
      Hydra.Sources.Kernel.Terms.Templates
      Hydra.Sources.Kernel.Terms.Unification
      Hydra.Sources.Kernel.Types.Accessors
      Hydra.Sources.Kernel.Types.All
      Hydra.Sources.Kernel.Types.Ast
      Hydra.Sources.Kernel.Types.Classes
      Hydra.Sources.Kernel.Types.Coders
      Hydra.Sources.Kernel.Types.Compute
      Hydra.Sources.Kernel.Types.Constraints
      Hydra.Sources.Kernel.Types.Core
      Hydra.Sources.Kernel.Types.Grammar
      Hydra.Sources.Kernel.Types.Graph
      Hydra.Sources.Kernel.Types.Module
      Hydra.Sources.Kernel.Types.Parsing
      Hydra.Sources.Kernel.Types.Phantoms
      Hydra.Sources.Kernel.Types.Query
      Hydra.Sources.Kernel.Types.Relational
      Hydra.Sources.Kernel.Types.Tabular
      Hydra.Sources.Kernel.Types.Testing
      Hydra.Sources.Kernel.Types.Topology
      Hydra.Sources.Kernel.Types.Typing
      Hydra.Sources.Kernel.Types.Util
      Hydra.Sources.Kernel.Types.Variants
      Hydra.Sources.Kernel.Types.Workflow
      Hydra.Sources.Libraries
      Hydra.Sources.Test.All
      Hydra.Sources.Test.Annotations
      Hydra.Sources.Test.Checking.Advanced
      Hydra.Sources.Test.Checking.AlgebraicTypes
      Hydra.Sources.Test.Checking.All
      Hydra.Sources.Test.Checking.Collections
      Hydra.Sources.Test.Checking.Failures
      Hydra.Sources.Test.Checking.Fundamentals
      Hydra.Sources.Test.Checking.NominalTypes
      Hydra.Sources.Test.EtaExpansion
      Hydra.Sources.Test.Formatting
      Hydra.Sources.Test.Hoisting
      Hydra.Sources.Test.Inference.AlgebraicTypes
      Hydra.Sources.Test.Inference.AlgorithmW
      Hydra.Sources.Test.Inference.All
      Hydra.Sources.Test.Inference.Failures
      Hydra.Sources.Test.Inference.Fundamentals
      Hydra.Sources.Test.Inference.KernelExamples
      Hydra.Sources.Test.Inference.NominalTypes
      Hydra.Sources.Test.Json.Coder
      Hydra.Sources.Test.Json.Parser
      Hydra.Sources.Test.Json.Roundtrip
      Hydra.Sources.Test.Json.Writer
      Hydra.Sources.Test.Lib.Chars
      Hydra.Sources.Test.Lib.Eithers
      Hydra.Sources.Test.Lib.Equality
      Hydra.Sources.Test.Lib.Flows
      Hydra.Sources.Test.Lib.Lists
      Hydra.Sources.Test.Lib.Literals
      Hydra.Sources.Test.Lib.Logic
      Hydra.Sources.Test.Lib.Maps
      Hydra.Sources.Test.Lib.Math
      Hydra.Sources.Test.Lib.Maybes
      Hydra.Sources.Test.Lib.Pairs
      Hydra.Sources.Test.Lib.Sets
      Hydra.Sources.Test.Lib.Strings
      Hydra.Sources.Test.Monads
      Hydra.Sources.Test.Ordering
      Hydra.Sources.Test.Reduction
      Hydra.Sources.Test.Rewriting
      Hydra.Sources.Test.Serialization
      Hydra.Sources.Test.Sorting
      Hydra.Sources.Test.Substitution
      Hydra.Sources.Test.TestGraph
      Hydra.Sources.Test.TestSuite
      Hydra.Sources.Test.TestTerms
      Hydra.Sources.Test.TestTypes
      Hydra.Sources.Test.Unification
      Hydra.Sources.Yaml.Model
      Hydra.Staging.Lib.Names
      Hydra.Staging.Testing.Generation.Generate
      Hydra.Staging.Testing.Generation.HaskellCodec
      Hydra.Staging.Testing.Generation.Transform
      Hydra.Staging.Yaml.Coder
      Hydra.Staging.Yaml.Language
      Hydra.Staging.Yaml.Modules
      Hydra.Staging.Yaml.Serde
      Hydra.Tools.Bytestrings
      Hydra.Tools.Debug
      Hydra.Tools.Monads
      Org.Example.Lispy
      Hydra.Accessors
      Hydra.Adapt.Literals
      Hydra.Adapt.Modules
      Hydra.Adapt.Simple
      Hydra.Adapt.Terms
      Hydra.Adapt.Utils
      Hydra.Annotations
      Hydra.Arity
      Hydra.Ast
      Hydra.Checking
      Hydra.Classes
      Hydra.CodeGeneration
      Hydra.Coders
      Hydra.CoderUtils
      Hydra.Compute
      Hydra.Constants
      Hydra.Constraints
      Hydra.Core
      Hydra.Decode.Accessors
      Hydra.Decode.Ast
      Hydra.Decode.Classes
      Hydra.Decode.Coders
      Hydra.Decode.Compute
      Hydra.Decode.Constraints
      Hydra.Decode.Core
      Hydra.Decode.Grammar
      Hydra.Decode.Json
      Hydra.Decode.Json.Model
      Hydra.Decode.Module
      Hydra.Decode.Parsing
      Hydra.Decode.Phantoms
      Hydra.Decode.Query
      Hydra.Decode.Relational
      Hydra.Decode.Tabular
      Hydra.Decode.Testing
      Hydra.Decode.Topology
      Hydra.Decode.Typing
      Hydra.Decode.Util
      Hydra.Decode.Variants
      Hydra.Decode.Workflow
      Hydra.Decoding
      Hydra.Encode.Accessors
      Hydra.Encode.Ast
      Hydra.Encode.Classes
      Hydra.Encode.Coders
      Hydra.Encode.Compute
      Hydra.Encode.Constraints
      Hydra.Encode.Core
      Hydra.Encode.Grammar
      Hydra.Encode.Json
      Hydra.Encode.Json.Model
      Hydra.Encode.Module
      Hydra.Encode.Parsing
      Hydra.Encode.Phantoms
      Hydra.Encode.Query
      Hydra.Encode.Relational
      Hydra.Encode.Tabular
      Hydra.Encode.Testing
      Hydra.Encode.Topology
      Hydra.Encode.Typing
      Hydra.Encode.Util
      Hydra.Encode.Variants
      Hydra.Encode.Workflow
      Hydra.Encoding
      Hydra.Eval.Lib.Eithers
      Hydra.Eval.Lib.Flows
      Hydra.Eval.Lib.Lists
      Hydra.Eval.Lib.Maps
      Hydra.Eval.Lib.Maybes
      Hydra.Eval.Lib.Pairs
      Hydra.Eval.Lib.Sets
      Hydra.Ext.Haskell.Ast
      Hydra.Ext.Haskell.Coder
      Hydra.Ext.Haskell.Language
      Hydra.Ext.Haskell.Operators
      Hydra.Ext.Haskell.Serde
      Hydra.Ext.Haskell.Utils
      Hydra.Ext.Org.Json.Coder
      Hydra.Ext.Org.Json.Decoding
      Hydra.Ext.Org.Json.Language
      Hydra.Ext.Org.Yaml.Model
      Hydra.Extract.Core
      Hydra.Extract.Helpers
      Hydra.Extract.Json
      Hydra.Extract.Util
      Hydra.Formatting
      Hydra.Grammar
      Hydra.Grammars
      Hydra.Graph
      Hydra.Hoisting
      Hydra.Inference
      Hydra.Json.Bootstrap
      Hydra.Json.Decode
      Hydra.Json.Encode
      Hydra.Json.Model
      Hydra.Json.Parser
      Hydra.Json.Writer
      Hydra.Languages
      Hydra.Lexical
      Hydra.Literals
      Hydra.Module
      Hydra.Monads
      Hydra.Names
      Hydra.Parsers
      Hydra.Parsing
      Hydra.Phantoms
      Hydra.Query
      Hydra.Reduction
      Hydra.Reflect
      Hydra.Relational
      Hydra.Rewriting
      Hydra.Schemas
      Hydra.Serialization
      Hydra.Show.Accessors
      Hydra.Show.Core
      Hydra.Show.Graph
      Hydra.Show.Meta
      Hydra.Show.Typing
      Hydra.Show.Util
      Hydra.Sorting
      Hydra.Sources.Decode.Accessors
      Hydra.Sources.Decode.Ast
      Hydra.Sources.Decode.Classes
      Hydra.Sources.Decode.Coders
      Hydra.Sources.Decode.Compute
      Hydra.Sources.Decode.Constraints
      Hydra.Sources.Decode.Core
      Hydra.Sources.Decode.Grammar
      Hydra.Sources.Decode.Json.Model
      Hydra.Sources.Decode.Module
      Hydra.Sources.Decode.Parsing
      Hydra.Sources.Decode.Phantoms
      Hydra.Sources.Decode.Query
      Hydra.Sources.Decode.Relational
      Hydra.Sources.Decode.Tabular
      Hydra.Sources.Decode.Testing
      Hydra.Sources.Decode.Topology
      Hydra.Sources.Decode.Typing
      Hydra.Sources.Decode.Util
      Hydra.Sources.Decode.Variants
      Hydra.Sources.Decode.Workflow
      Hydra.Sources.Encode.Accessors
      Hydra.Sources.Encode.Ast
      Hydra.Sources.Encode.Classes
      Hydra.Sources.Encode.Coders
      Hydra.Sources.Encode.Compute
      Hydra.Sources.Encode.Constraints
      Hydra.Sources.Encode.Core
      Hydra.Sources.Encode.Grammar
      Hydra.Sources.Encode.Json.Model
      Hydra.Sources.Encode.Module
      Hydra.Sources.Encode.Parsing
      Hydra.Sources.Encode.Phantoms
      Hydra.Sources.Encode.Query
      Hydra.Sources.Encode.Relational
      Hydra.Sources.Encode.Tabular
      Hydra.Sources.Encode.Testing
      Hydra.Sources.Encode.Topology
      Hydra.Sources.Encode.Typing
      Hydra.Sources.Encode.Util
      Hydra.Sources.Encode.Variants
      Hydra.Sources.Encode.Workflow
      Hydra.Substitution
      Hydra.Tabular
      Hydra.Tarjan
      Hydra.Templates
      Hydra.Testing
      Hydra.Topology
      Hydra.Typing
      Hydra.Unification
      Hydra.Util
      Hydra.Variants
      Hydra.Workflow
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/main/haskell
      src/gen-main/haskell
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-generation-tests
  main-is: Main.hs
  other-modules:
      Generation.Hydra.Test.AnnotationsSpec
      Generation.Hydra.Test.FormattingSpec
      Generation.Hydra.Test.Lib.CharsSpec
      Generation.Hydra.Test.Lib.EithersSpec
      Generation.Hydra.Test.Lib.EqualitySpec
      Generation.Hydra.Test.Lib.FlowsSpec
      Generation.Hydra.Test.Lib.ListsSpec
      Generation.Hydra.Test.Lib.LiteralsSpec
      Generation.Hydra.Test.Lib.LogicSpec
      Generation.Hydra.Test.Lib.MapsSpec
      Generation.Hydra.Test.Lib.MathSpec
      Generation.Hydra.Test.Lib.MaybesSpec
      Generation.Hydra.Test.Lib.PairsSpec
      Generation.Hydra.Test.Lib.SetsSpec
      Generation.Hydra.Test.Lib.StringsSpec
      Generation.Hydra.Test.MonadsSpec
      Generation.Hydra.Test.ReductionSpec
      Generation.Hydra.Test.SortingSpec
      Generation.Spec
      Hydra.Test.Annotations
      Hydra.Test.Checking.Advanced
      Hydra.Test.Checking.AlgebraicTypes
      Hydra.Test.Checking.All
      Hydra.Test.Checking.Collections
      Hydra.Test.Checking.Failures
      Hydra.Test.Checking.Fundamentals
      Hydra.Test.Checking.NominalTypes
      Hydra.Test.EtaExpansion
      Hydra.Test.Formatting
      Hydra.Test.Hoisting
      Hydra.Test.Inference.AlgebraicTypes
      Hydra.Test.Inference.AlgorithmW
      Hydra.Test.Inference.All
      Hydra.Test.Inference.Failures
      Hydra.Test.Inference.Fundamentals
      Hydra.Test.Inference.KernelExamples
      Hydra.Test.Inference.NominalTypes
      Hydra.Test.Json.Coder
      Hydra.Test.Json.Parser
      Hydra.Test.Json.Roundtrip
      Hydra.Test.Json.Writer
      Hydra.Test.Lib.Chars
      Hydra.Test.Lib.Eithers
      Hydra.Test.Lib.Equality
      Hydra.Test.Lib.Flows
      Hydra.Test.Lib.Lists
      Hydra.Test.Lib.Literals
      Hydra.Test.Lib.Logic
      Hydra.Test.Lib.Maps
      Hydra.Test.Lib.Math
      Hydra.Test.Lib.Maybes
      Hydra.Test.Lib.Pairs
      Hydra.Test.Lib.Sets
      Hydra.Test.Lib.Strings
      Hydra.Test.Monads
      Hydra.Test.Ordering
      Hydra.Test.Reduction
      Hydra.Test.Rewriting
      Hydra.Test.Serialization
      Hydra.Test.Sorting
      Hydra.Test.Substitution
      Hydra.Test.TestGraph
      Hydra.Test.TestSuite
      Hydra.Test.TestTerms
      Hydra.Test.TestTypes
      Hydra.Test.Unification
      Paths_hydra
  hs-source-dirs:
      src/exec/update-generation-tests
      src/gen-test/haskell
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hspec >=2.11.0 && <2.12
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-haskell-eval-lib
  main-is: Main.hs
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/exec/update-haskell-eval-lib
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-haskell-kernel
  main-is: Main.hs
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/exec/update-haskell-kernel
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-haskell-sources
  main-is: Main.hs
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/exec/update-haskell-sources
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-json-kernel
  main-is: Main.hs
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/exec/update-json-kernel
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-json-main
  main-is: Main.hs
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/exec/update-json-main
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-json-manifest
  main-is: Main.hs
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/exec/update-json-manifest
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-json-test
  main-is: Main.hs
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/exec/update-json-test
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable update-kernel-tests
  main-is: Main.hs
  other-modules:
      Generation.Hydra.Test.AnnotationsSpec
      Generation.Hydra.Test.FormattingSpec
      Generation.Hydra.Test.Lib.CharsSpec
      Generation.Hydra.Test.Lib.EithersSpec
      Generation.Hydra.Test.Lib.EqualitySpec
      Generation.Hydra.Test.Lib.FlowsSpec
      Generation.Hydra.Test.Lib.ListsSpec
      Generation.Hydra.Test.Lib.LiteralsSpec
      Generation.Hydra.Test.Lib.LogicSpec
      Generation.Hydra.Test.Lib.MapsSpec
      Generation.Hydra.Test.Lib.MathSpec
      Generation.Hydra.Test.Lib.MaybesSpec
      Generation.Hydra.Test.Lib.PairsSpec
      Generation.Hydra.Test.Lib.SetsSpec
      Generation.Hydra.Test.Lib.StringsSpec
      Generation.Hydra.Test.MonadsSpec
      Generation.Hydra.Test.ReductionSpec
      Generation.Hydra.Test.SortingSpec
      Generation.Spec
      Hydra.Test.Annotations
      Hydra.Test.Checking.Advanced
      Hydra.Test.Checking.AlgebraicTypes
      Hydra.Test.Checking.All
      Hydra.Test.Checking.Collections
      Hydra.Test.Checking.Failures
      Hydra.Test.Checking.Fundamentals
      Hydra.Test.Checking.NominalTypes
      Hydra.Test.EtaExpansion
      Hydra.Test.Formatting
      Hydra.Test.Hoisting
      Hydra.Test.Inference.AlgebraicTypes
      Hydra.Test.Inference.AlgorithmW
      Hydra.Test.Inference.All
      Hydra.Test.Inference.Failures
      Hydra.Test.Inference.Fundamentals
      Hydra.Test.Inference.KernelExamples
      Hydra.Test.Inference.NominalTypes
      Hydra.Test.Json.Coder
      Hydra.Test.Json.Parser
      Hydra.Test.Json.Roundtrip
      Hydra.Test.Json.Writer
      Hydra.Test.Lib.Chars
      Hydra.Test.Lib.Eithers
      Hydra.Test.Lib.Equality
      Hydra.Test.Lib.Flows
      Hydra.Test.Lib.Lists
      Hydra.Test.Lib.Literals
      Hydra.Test.Lib.Logic
      Hydra.Test.Lib.Maps
      Hydra.Test.Lib.Math
      Hydra.Test.Lib.Maybes
      Hydra.Test.Lib.Pairs
      Hydra.Test.Lib.Sets
      Hydra.Test.Lib.Strings
      Hydra.Test.Monads
      Hydra.Test.Ordering
      Hydra.Test.Reduction
      Hydra.Test.Rewriting
      Hydra.Test.Serialization
      Hydra.Test.Sorting
      Hydra.Test.Substitution
      Hydra.Test.TestGraph
      Hydra.Test.TestSuite
      Hydra.Test.TestTerms
      Hydra.Test.TestTypes
      Hydra.Test.Unification
      Paths_hydra
  hs-source-dirs:
      src/exec/update-kernel-tests
      src/gen-test/haskell
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hspec >=2.11.0 && <2.12
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

executable verify-json-kernel
  main-is: Main.hs
  other-modules:
      Paths_hydra
  hs-source-dirs:
      src/exec/verify-json-kernel
  ghc-options: -rtsopts
  build-depends:
      HsYAML >=0.2.1 && <0.3
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hydra
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010

test-suite hydra-test
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  other-modules:
      GenerationSpec
      Hydra.Adapt.LiteralsSpec
      Hydra.Adapt.TermsSpec
      Hydra.ArbitraryCore
      Hydra.CoreCodersSpec
      Hydra.Dsl.TypesSpec
      Hydra.Json.AesonSpec
      Hydra.MonadsSpec
      Hydra.Reference.AlgorithmW
      Hydra.Reference.AlgorithmWBridge
      Hydra.Reference.AlgorithmWSpec
      Hydra.Staging.Json.Serde
      Hydra.Staging.Yaml.CoderSpec
      Hydra.Staging.Yaml.SerdeSpec
      Hydra.TestData
      Hydra.TestSuiteSpec
      Hydra.TestUtils
      Hydra.UpdateGenerationTests
      Generation.Hydra.Test.AnnotationsSpec
      Generation.Hydra.Test.FormattingSpec
      Generation.Hydra.Test.Lib.CharsSpec
      Generation.Hydra.Test.Lib.EithersSpec
      Generation.Hydra.Test.Lib.EqualitySpec
      Generation.Hydra.Test.Lib.FlowsSpec
      Generation.Hydra.Test.Lib.ListsSpec
      Generation.Hydra.Test.Lib.LiteralsSpec
      Generation.Hydra.Test.Lib.LogicSpec
      Generation.Hydra.Test.Lib.MapsSpec
      Generation.Hydra.Test.Lib.MathSpec
      Generation.Hydra.Test.Lib.MaybesSpec
      Generation.Hydra.Test.Lib.PairsSpec
      Generation.Hydra.Test.Lib.SetsSpec
      Generation.Hydra.Test.Lib.StringsSpec
      Generation.Hydra.Test.MonadsSpec
      Generation.Hydra.Test.ReductionSpec
      Generation.Hydra.Test.SortingSpec
      Generation.Spec
      Hydra.Test.Annotations
      Hydra.Test.Checking.Advanced
      Hydra.Test.Checking.AlgebraicTypes
      Hydra.Test.Checking.All
      Hydra.Test.Checking.Collections
      Hydra.Test.Checking.Failures
      Hydra.Test.Checking.Fundamentals
      Hydra.Test.Checking.NominalTypes
      Hydra.Test.EtaExpansion
      Hydra.Test.Formatting
      Hydra.Test.Hoisting
      Hydra.Test.Inference.AlgebraicTypes
      Hydra.Test.Inference.AlgorithmW
      Hydra.Test.Inference.All
      Hydra.Test.Inference.Failures
      Hydra.Test.Inference.Fundamentals
      Hydra.Test.Inference.KernelExamples
      Hydra.Test.Inference.NominalTypes
      Hydra.Test.Json.Coder
      Hydra.Test.Json.Parser
      Hydra.Test.Json.Roundtrip
      Hydra.Test.Json.Writer
      Hydra.Test.Lib.Chars
      Hydra.Test.Lib.Eithers
      Hydra.Test.Lib.Equality
      Hydra.Test.Lib.Flows
      Hydra.Test.Lib.Lists
      Hydra.Test.Lib.Literals
      Hydra.Test.Lib.Logic
      Hydra.Test.Lib.Maps
      Hydra.Test.Lib.Math
      Hydra.Test.Lib.Maybes
      Hydra.Test.Lib.Pairs
      Hydra.Test.Lib.Sets
      Hydra.Test.Lib.Strings
      Hydra.Test.Monads
      Hydra.Test.Ordering
      Hydra.Test.Reduction
      Hydra.Test.Rewriting
      Hydra.Test.Serialization
      Hydra.Test.Sorting
      Hydra.Test.Substitution
      Hydra.Test.TestGraph
      Hydra.Test.TestSuite
      Hydra.Test.TestTerms
      Hydra.Test.TestTypes
      Hydra.Test.Unification
      Paths_hydra
  hs-source-dirs:
      src/test/haskell
      src/gen-test/haskell
  build-depends:
      HUnit
    , HsYAML >=0.2.1 && <0.3
    , QuickCheck
    , aeson >=2.1.0 && <2.3
    , base >=4.19.0 && <4.22
    , base64-bytestring >=1.2.1 && <1.3
    , bytestring >=0.11.5 && <0.13
    , containers >=0.6.7 && <0.8
    , directory >=1.3.6 && <1.4
    , filepath >=1.4.200 && <1.6
    , hspec >=2.11.0 && <2.12
    , hspec-discover >=2.11.0 && <2.12
    , hydra
    , mtl
    , process
    , scientific >=0.3.7 && <0.4
    , split >=0.2.3 && <0.3
    , text >=2.0.2 && <2.2
    , time
    , vector >=0.12.0 && <0.14
  default-language: Haskell2010