Cabal-Version: 2.2 Name: project-m36 Version: 1.0.1 License: MIT --note that this license specification is erroneous and only labeled MIT to appease hackage which does not recognize public domain packages in cabal >2.2- Project:M36 is dedicated to the public domain Build-Type: Simple Homepage: https://github.com/agentm/project-m36 Bug-Reports: https://github.com/agentm/project-m36/issues Author: AgentM Stability: experimental Category: Relational Algebra Maintainer: agentm@themactionfaction.com Synopsis: Relational Algebra Engine Description: A relational algebra engine which can be used to persist and query Haskell data types. Extra-Source-Files: Changelog.markdown README.markdown scripts/DateExamples.tutd scripts/multiline.tutd tested-with: GHC ==9.2.8 || ==9.4.8 Source-Repository head Type: git location: https://github.com/agentm/project-m36 Flag profiler Description: Enable Haskell-specific profiling support Default: False Manual: True --flag to allow stack to use its older, pinned packages Flag stack Description: build with stack and stackage Manual: True Default: False Flag haskell-scripting Description: enables Haskell scripting which links against GHC as a library Manual: True Default: True Library Build-Depends: base>=4.16 && < 4.19, ghc-paths, mtl, containers, unordered-containers, hashable, haskeline, directory, MonadRandom, random-shuffle, uuid >= 1.3.12, cassava >= 0.4.5.1 && < 0.6, text, bytestring, deepseq, deepseq-generics, vector, parallel, monad-parallel, exceptions, transformers, gnuplot, filepath, zlib, directory, temporary, stm, time, old-locale, rset, attoparsec, either, base64-bytestring, data-interval, extended-reals, aeson >= 1.1, path-pieces, conduit, resourcet, http-api-data, semigroups, QuickCheck, quickcheck-instances, list-t, stm-containers >= 0.2.15, foldl, optparse-applicative, Glob, cryptohash-sha256, text-manipulate >= 0.2.0.1 && < 0.4, winery >= 1.4, curryer-rpc>=0.3.5, network, async, vector-instances, recursion-schemes, streamly == 0.9.0, convertible, fast-builder, scientific if flag(haskell-scripting) Build-Depends: ghc >= 9.0 && < 9.5 CPP-Options: -DPM36_HASKELL_SCRIPTING if impl(ghc>= 8) && flag(haskell-scripting) build-depends: ghc-boot, ghci if impl(ghc>= 8.6) Build-Depends: deferred-folds Exposed-Modules: ProjectM36.Error, ProjectM36.Transaction, ProjectM36.TransactionGraph, ProjectM36.TransactionGraph.Show, ProjectM36.TransactionGraph.Persist, ProjectM36.TransactionGraph.Merge, ProjectM36.TransGraphRelationalExpression, ProjectM36.Base, ProjectM36.Serialise.Base, ProjectM36.Serialise.Error, ProjectM36.DataFrame, ProjectM36.Attribute, ProjectM36.AttributeNames, ProjectM36.Tuple, ProjectM36.TupleSet, ProjectM36.Function, ProjectM36.Atom, ProjectM36.AtomFunction, ProjectM36.AtomFunctionError, ProjectM36.ScriptSession, ProjectM36.Shortcuts, ProjectM36.DatabaseContextFunction, ProjectM36.DatabaseContextFunctionError, ProjectM36.DatabaseContextFunctionUtils, ProjectM36.Key, ProjectM36.FunctionalDependency, ProjectM36.DatabaseContext, ProjectM36.DateExamples, ProjectM36.DisconnectedTransaction, ProjectM36.AtomFunctionBody, ProjectM36.RelationalExpression, ProjectM36.Relation.Show.HTML, ProjectM36.StaticOptimizer, ProjectM36.Relation.Show.Term, ProjectM36.WCWidth, ProjectM36.Relation.Show.CSV, ProjectM36.Relation.Show.Gnuplot, ProjectM36.Relation.Parse.CSV, ProjectM36.IsomorphicSchema, ProjectM36.InclusionDependency, ProjectM36.MerkleHash, ProjectM36.Client, ProjectM36.Client.Simple, ProjectM36.Persist, ProjectM36.AtomType, ProjectM36.AttributeExpr, ProjectM36.AtomFunctions.Basic, ProjectM36.AtomFunctions.Primitive, ProjectM36.Atomable, ProjectM36.Tupleable, ProjectM36.Tupleable.Deriving, ProjectM36.DataConstructorDef, ProjectM36.DataTypes.Basic, ProjectM36.DataTypes.Sorting, ProjectM36.DataTypes.Day, ProjectM36.DataTypes.DateTime, ProjectM36.DataTypes.Either, ProjectM36.DataTypes.Maybe, ProjectM36.DataTypes.List, ProjectM36.DataTypes.NonEmptyList, ProjectM36.DataTypes.Primitive, ProjectM36.DataTypes.Interval, ProjectM36.DataTypes.ByteString, ProjectM36.DataTypes.SQL.Null, ProjectM36.SQLDatabaseContext, ProjectM36.MiscUtils, ProjectM36.Notifications, ProjectM36.Relation, ProjectM36.Server, ProjectM36.Server.Config, ProjectM36.Server.EntryPoints, ProjectM36.Server.ParseArgs, ProjectM36.Server.RemoteCallTypes, ProjectM36.Serialise.AtomFunctionError, ProjectM36.Serialise.DataFrame, ProjectM36.Serialise.DatabaseContextFunctionError, ProjectM36.Serialise.IsomorphicSchema, ProjectM36.Session, ProjectM36.Sessions, ProjectM36.Transaction.Persist, ProjectM36.TypeConstructor, ProjectM36.TypeConstructorDef, ProjectM36.FileLock, ProjectM36.FSType, ProjectM36.Arbitrary, ProjectM36.GraphRefRelationalExpr, ProjectM36.NormalizeExpr, ProjectM36.TransactionInfo, ProjectM36.WithNameExpr, ProjectM36.Trace, ProjectM36.HashSecurely, ProjectM36.DDLType, ProjectM36.RegisteredQuery, ProjectM36.SQL.Convert, ProjectM36.SQL.Select, ProjectM36.SQL.Update, ProjectM36.SQL.Insert, ProjectM36.SQL.Delete, ProjectM36.SQL.DBUpdate, ProjectM36.SQL.CreateTable, ProjectM36.SQL.DropTable ProjectM36.ReferencedTransactionIds GHC-Options: -Wall -rdynamic if os(windows) Build-Depends: Win32 >= 2.12 Other-Modules: ProjectM36.Win32Handle else --219- too many exported symbols under Windows and GHC 8.4 GHC-Options: -rdynamic -fexternal-interpreter -eventlog C-sources: cbits/DirectoryFsync.c, cbits/darwin_statfs.c Build-Depends: unix CC-Options: -fPIC Hs-Source-Dirs: ./src/lib Default-Language: Haskell2010 Default-Extensions: OverloadedStrings, CPP, LambdaCase if !flag(stack) Build-Depends: deferred-folds Executable tutd if flag(haskell-scripting) Build-Depends: ghc >= 9.0 && < 9.5 Build-Depends: base >=4.8, ghc-paths, project-m36, containers, unordered-containers, hashable, transformers, semigroups, mtl, uuid, deepseq-generics, MonadRandom, MonadRandom, vector, text, time, bytestring, stm, deepseq, data-interval, parallel, cassava, gnuplot, directory, filepath, temporary, megaparsec >= 5.2.0 && < 10, haskeline, random, MonadRandom, base64-bytestring, optparse-applicative, attoparsec, stm-containers >= 1.0.0, list-t, parser-combinators, curryer-rpc, prettyprinter, cryptohash-sha256, --due to decode signature change base16-bytestring >= 1.0.0.0, http-conduit, modern-uri, http-types, recursion-schemes Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.SchemaOperator, TutorialD.Printer, ProjectM36.Cli, ProjectM36.Interpreter main-is: TutorialD/tutd.hs CC-Options: -fPIC if os(windows) GHC-Options: -Wall -threaded -eventlog -rtsopts else GHC-Options: -Wall -threaded -rdynamic -eventlog -rtsopts if flag(profiler) GHC-Prof-Options: -fprof-auto -rtsopts -threaded Hs-Source-Dirs: ./src/bin Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Executable sqlegacy if flag(haskell-scripting) Build-Depends: ghc >= 9.0 && < 9.5 Build-Depends: base, ghc-paths, project-m36, containers, unordered-containers, hashable, transformers, semigroups, mtl, uuid, deepseq-generics, MonadRandom, MonadRandom, vector, text, time, bytestring, stm, deepseq, data-interval, parallel, cassava, gnuplot, directory, filepath, temporary, megaparsec >= 5.2.0 && < 10, haskeline, random, MonadRandom, base64-bytestring, optparse-applicative, attoparsec, stm-containers >= 1.0.0, list-t, parser-combinators, curryer-rpc, prettyprinter, cryptohash-sha256, --due to decode signature change base16-bytestring >= 1.0.0.0, http-conduit, modern-uri, http-types, recursion-schemes, Other-Modules: SQL.Interpreter.Base, SQL.Interpreter.Select, ProjectM36.Cli, ProjectM36.Interpreter, SQL.Interpreter, SQL.Interpreter.TransactionGraphOperator, SQL.Interpreter.ImportBasicExample, SQL.Interpreter.Update, SQL.Interpreter.Insert, SQL.Interpreter.Delete, SQL.Interpreter.DBUpdate, SQL.Interpreter.CreateTable, SQL.Interpreter.DropTable, SQL.Interpreter.Info, TutorialD.Printer, TutorialD.Interpreter.Base Main-Is: ./SQL/Interpreter/sqlegacy.hs if os(windows) GHC-Options: -Wall -threaded -rtsopts else GHC-Options: -Wall -threaded -rtsopts -rdynamic if flag(profiler) GHC-Prof-Options: -fprof-auto -rtsopts -threaded -Wall Hs-Source-Dirs: ./src/bin Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Executable project-m36-server if flag(haskell-scripting) Build-Depends: ghc >= 9.0 && < 9.5 Build-Depends: base, ghc-paths, transformers, project-m36, temporary, data-interval, deepseq, uuid, stm, filepath, directory, parallel, bytestring, optparse-applicative, time, text, deepseq-generics, mtl, containers, hashable, unordered-containers, vector, http-api-data, stm-containers, list-t, base64-bytestring, scientific Main-Is: ./src/bin/ProjectM36/Server/project-m36-server.hs if os(windows) GHC-Options: -Wall -threaded -rtsopts else GHC-Options: -Wall -threaded -rtsopts -rdynamic if flag(profiler) GHC-Prof-Options: -fprof-auto -rtsopts -threaded -Wall Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Executable bigrel Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, optparse-applicative, stm-containers, list-t, ghc, ghc-paths, transformers, project-m36, random, MonadRandom, semigroups, parser-combinators Other-Modules: TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, ProjectM36.Interpreter main-is: benchmark/bigrel.hs GHC-Options: -Wall -threaded -rtsopts HS-Source-Dirs: ./src/bin if flag(profiler) GHC-Prof-Options: -fprof-auto -rtsopts -threaded -Wall -eventlog Common commontest Default-Language: Haskell2010 Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics,parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, websockets, optparse-applicative, network, aeson, project-m36, random, MonadRandom, semigroups, parser-combinators, winery, curryer-rpc, prettyprinter, base64-bytestring, modern-uri, http-types, http-conduit, base16-bytestring, cryptohash-sha256, scientific Default-Extensions: OverloadedStrings GHC-Options: -Wall -threaded Hs-Source-Dirs: test, src/bin Benchmark basic-benchmark Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, criterion, project-m36, text, vector, transformers, containers, temporary, directory, filepath Main-Is: benchmark/Basic.hs Type: exitcode-stdio-1.0 GHC-Options: -Wall -threaded -rtsopts HS-Source-Dirs: ./src/bin if flag(profiler) GHC-Prof-Options: -fprof-auto -rtsopts -threaded -Wall --benchmark inserts, updates, deletes for a basic use-case to shake out any space leaks Benchmark update-exprs Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, criterion, project-m36, text, winery Main-Is: benchmark/Server.hs Type: exitcode-stdio-1.0 GHC-Options: -Wall -threaded -rtsopts HS-Source-Dirs: ./src/bin if flag(profiler) GHC-Prof-Options: -fprof-auto -rtsopts -threaded -Wall -fexternal-interpreter Test-Suite test-sql import: commontest type: exitcode-stdio-1.0 main-is: SQL/InterpreterTest.hs Other-Modules: SQL.Interpreter.Select, SQL.Interpreter.Base, TutorialD.Interpreter.Base, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.RODatabaseContextOperator, ProjectM36.Interpreter, SQL.Interpreter.CreateTable TutorialD.Printer, SQL.Interpreter.DBUpdate, SQL.Interpreter.Delete, SQL.Interpreter.DropTable, SQL.Interpreter.Insert, SQL.Interpreter.Update Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, stm-containers, list-t, project-m36, random, MonadRandom, semigroups, parser-combinators, prettyprinter, scientific, recursion-schemes Test-Suite test-tutoriald import: commontest type: exitcode-stdio-1.0 main-is: TutorialD/InterpreterTest.hs Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.SchemaOperator, TutorialD.Printer, ProjectM36.Interpreter Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics, parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, stm-containers, list-t, project-m36, random, MonadRandom, semigroups, parser-combinators, prettyprinter, scientific Test-Suite test-tutoriald-atomfunctionscript import: commontest type: exitcode-stdio-1.0 Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Interpreter.SchemaOperator, TutorialD.Printer, ProjectM36.Interpreter main-is: TutorialD/Interpreter/AtomFunctionScript.hs Test-Suite test-tutoriald-databasecontextfunctionscript import: commontest type: exitcode-stdio-1.0 Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Interpreter.SchemaOperator, TutorialD.Printer, ProjectM36.Interpreter main-is: TutorialD/Interpreter/DatabaseContextFunctionScript.hs Test-Suite test-relation import: commontest type: exitcode-stdio-1.0 main-is: Relation/Basic.hs Test-Suite test-static-optimizer import: commontest type: exitcode-stdio-1.0 main-is: Relation/StaticOptimizer.hs Test-Suite test-transactiongraph-persist import: commontest type: exitcode-stdio-1.0 main-is: TransactionGraph/Persist.hs Other-Modules: TutorialD.Interpreter.Base, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Printer Test-Suite test-relation-import-csv import: commontest type: exitcode-stdio-1.0 main-is: Relation/Import/CSV.hs Test-Suite test-tutoriald-import-tutoriald import: commontest type: exitcode-stdio-1.0 build-depends: warp, wai main-is: TutorialD/Interpreter/Import/ImportTest.hs Other-Modules: TutorialD.Interpreter.Base, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Printer Test-Suite test-relation-export-csv import: commontest type: exitcode-stdio-1.0 main-is: Relation/Export/CSV.hs Test-Suite test-transactiongraph-merge import: commontest type: exitcode-stdio-1.0 main-is: TransactionGraph/Merge.hs Test-Suite test-prettyprinter import: commontest type: exitcode-stdio-1.0 main-is: TutorialD/PrinterTest.hs Other-Modules: TutorialD.Printer, TutorialD.Interpreter.Base, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types benchmark bench import: commontest build-depends: criterion type: exitcode-stdio-1.0 main-is: benchmark/Relation.hs benchmark ondiskclient import: commontest type: exitcode-stdio-1.0 main-is: benchmark/OnDiskClient.hs GHC-Options: -rtsopts -Wall -threaded -eventlog -finfo-table-map -fdistinct-constructor-tables Test-Suite test-server import: commontest type: exitcode-stdio-1.0 main-is: Server/Main.hs Executable Example-SimpleClient Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics,parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, ghc, ghc-paths, project-m36, random, MonadRandom Main-Is: examples/SimpleClient.hs GHC-Options: -Wall -threaded Executable Example-OutOfTheTarpit Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics,parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, aeson, path-pieces, either, conduit, http-api-data, template-haskell, ghc, ghc-paths, project-m36, winery Main-Is: examples/out_of_the_tarpit.hs GHC-Options: -Wall -threaded Executable Example-Blog Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics,parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, aeson, path-pieces, either, conduit, http-api-data, template-haskell, ghc, ghc-paths, project-m36, scotty >= 0.22, blaze-html, http-types, winery Main-Is: examples/blog.hs GHC-Options: -Wall -threaded Executable Example-Hair Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics,parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, aeson, path-pieces, either, conduit, http-api-data, template-haskell, ghc, ghc-paths, project-m36, winery Main-Is: examples/hair.hs GHC-Options: -Wall -threaded Executable Example-Plantfarm Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: aeson, barbies, base, containers, deepseq, hashable, project-m36, random, scotty >= 0.22, text, winery Main-Is: examples/Plantfarm.hs GHC-Options: -Wall -threaded Executable Example-CustomTupleable Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics,parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, transformers, stm-containers, list-t, aeson, path-pieces, either, conduit, http-api-data, template-haskell, ghc, ghc-paths, project-m36, winery Main-Is: examples/CustomTupleable.hs GHC-Options: -Wall -threaded Executable Example-DerivingCustomTupleable if impl(ghc>=8.6) Buildable: True else Buildable: False Default-Language: Haskell2010 Build-Depends: base, text, deepseq, project-m36, winery Main-Is: examples/DerivingCustomTupleable.hs GHC-Options: -Wall -threaded Test-Suite test-scripts import: commontest type: exitcode-stdio-1.0 main-is: scripts.hs Other-Modules: TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Printer Executable project-m36-websocket-server Default-Language: Haskell2010 Build-Depends: base, aeson, path-pieces, either, conduit, http-api-data, template-haskell, websockets, aeson, optparse-applicative, project-m36, containers, bytestring, text, vector, uuid, megaparsec, haskeline, mtl, directory, base64-bytestring, random, MonadRandom, time, semigroups, attoparsec, parser-combinators, prettyprinter, network, modern-uri, http-conduit, base16-bytestring, http-types, cryptohash-sha256, wai, wai-websockets, warp, warp-tls, scientific Main-Is: ProjectM36/Server/WebSocket/websocket-server.hs Other-Modules: ProjectM36.Client.Json, ProjectM36.Server.RemoteCallTypes.Json, ProjectM36.Server.WebSocket, TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.SchemaOperator, TutorialD.Printer, ProjectM36.Interpreter GHC-Options: -Wall -threaded Hs-Source-Dirs: ./src/bin Default-Extensions: OverloadedStrings Test-Suite test-websocket-server import: commontest type: exitcode-stdio-1.0 main-is: Server/WebSocket.hs Other-Modules: TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.TransactionGraphOperator, ProjectM36.Client.Json, ProjectM36.Server.RemoteCallTypes.Json, ProjectM36.Server.WebSocket, TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.Types, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.SchemaOperator, TutorialD.Printer Test-Suite test-isomorphic-schemas import: commontest type: exitcode-stdio-1.0 main-is: IsomorphicSchema.hs Test-Suite test-atomable import: commontest type: exitcode-stdio-1.0 main-is: Relation/Atomable.hs Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.SchemaOperator, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Printer Test-Suite test-multiprocess-access import: commontest type: exitcode-stdio-1.0 main-is: MultiProcessDatabaseAccess.hs Test-Suite test-transactiongraph-automerge import: commontest type: exitcode-stdio-1.0 main-is: TransactionGraph/Automerge.hs Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.SchemaOperator, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Printer Test-Suite test-tupleable import: commontest type: exitcode-stdio-1.0 main-is: Relation/Tupleable.hs Test-Suite test-client-simple import: commontest Main-Is: Client/Simple.hs type: exitcode-stdio-1.0 -- test for file handle leaks Executable handles Default-Language: Haskell2010 Default-Extensions: OverloadedStrings Build-Depends: base, HUnit, Cabal, containers, hashable, unordered-containers, mtl, vector, time, bytestring, uuid, stm, deepseq, deepseq-generics,parallel, cassava, attoparsec, gnuplot, directory, temporary, haskeline, megaparsec, text, base64-bytestring, data-interval, filepath, optparse-applicative, stm-containers, list-t, ghc, ghc-paths, transformers, project-m36, random, MonadRandom, semigroups, parser-combinators, prettyprinter, modern-uri, http-types, http-conduit, base16-bytestring, cryptohash-sha256 main-is: benchmark/Handles.hs Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.SchemaOperator, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Printer, ProjectM36.Interpreter GHC-Options: -Wall -threaded -rtsopts HS-Source-Dirs: ./src/bin if flag(profiler) GHC-Prof-Options: -fprof-auto -rtsopts -threaded -Wall Test-Suite test-dataframe import: commontest type: exitcode-stdio-1.0 Main-Is: DataFrame.hs Other-Modules: TutorialD.Interpreter, TutorialD.Interpreter.Base, TutorialD.Interpreter.DatabaseContextExpr, TutorialD.Interpreter.DatabaseContextIOOperator, TutorialD.Interpreter.Export.Base, TutorialD.Interpreter.Export.CSV, TutorialD.Interpreter.Import.Base, TutorialD.Interpreter.Import.BasicExamples, TutorialD.Interpreter.Import.CSV, TutorialD.Interpreter.Import.TutorialD, TutorialD.Interpreter.InformationOperator, TutorialD.Interpreter.RODatabaseContextOperator, TutorialD.Interpreter.RelationalExpr, TutorialD.Interpreter.SchemaOperator, TutorialD.Interpreter.TestBase, TutorialD.Interpreter.TransGraphRelationalOperator, TutorialD.Interpreter.TransactionGraphOperator, TutorialD.Interpreter.Types, TutorialD.Printer, ProjectM36.Interpreter