mirror of
https://github.com/wasp-lang/wasp.git
synced 2024-12-25 18:13:52 +03:00
f8c775923d
* Modularize Lexer.x Extract utility functions from Lexer.x into a separate file. * Move more utilities out of Lexer.x * Fix hlint and ormolu warnings
425 lines
13 KiB
Plaintext
425 lines
13 KiB
Plaintext
cabal-version: 2.4
|
|
|
|
-- TODO:
|
|
-- - Rename wasp-cli back to just wasp.
|
|
-- - Manually updating exposed-modules, other-modules and data-files is tedious.
|
|
-- Consider using hpack, or maybe even hpack-dhall.
|
|
|
|
name: waspc
|
|
version: 0.5.0.0
|
|
description: Please see the README on GitHub at <https://github.com/wasp-lang/wasp/waspc#readme>
|
|
homepage: https://github.com/wasp-lang/wasp/waspc#readme
|
|
bug-reports: https://github.com/wasp-lang/wasp/issues
|
|
author: Wasp Team
|
|
maintainer: team@wasp-lang.dev
|
|
copyright: Wasp, Inc.
|
|
license: MIT
|
|
license-file: LICENSE
|
|
build-type: Simple
|
|
extra-source-files:
|
|
README.md
|
|
ChangeLog.md
|
|
data-files:
|
|
-- NOTE: cabal has this weird rule that * doesn't capture file extension, nor can you provide just *,
|
|
-- it has to be followed by extension, which is why we have to manually list all of the extensions,
|
|
-- and also files with no extension.
|
|
-- Check https://github.com/haskell/cabal/issues/5883 for more details.
|
|
Generator/templates/Dockerfile
|
|
Generator/templates/dockerignore
|
|
Generator/templates/react-app/gitignore
|
|
Generator/templates/react-app/npmrc
|
|
Generator/templates/react-app/nvmrc
|
|
Generator/templates/server/gitignore
|
|
Generator/templates/server/npmrc
|
|
Generator/templates/server/nvmrc
|
|
Generator/templates/**/*.prisma
|
|
Generator/templates/**/*.toml
|
|
Generator/templates/**/*.json
|
|
Generator/templates/**/*.ico
|
|
Generator/templates/**/*.html
|
|
Generator/templates/**/*.md
|
|
Generator/templates/**/*.js
|
|
Generator/templates/**/*.css
|
|
Generator/templates/**/*.png
|
|
Cli/bash-completion
|
|
Cli/templates/**/*.css
|
|
Cli/templates/**/*.js
|
|
Cli/templates/**/*.png
|
|
data-dir: data/
|
|
|
|
source-repository head
|
|
type: git
|
|
location: https://github.com/wasp-lang/wasp
|
|
|
|
common common-all
|
|
default-language: Haskell2010
|
|
ghc-options:
|
|
-Wall
|
|
-- -optP-Wno-nonportable-include-path avoids warning caused by .../autogen/cabal_macros.h. on OSX.
|
|
-optP-Wno-nonportable-include-path
|
|
-- -fwrite-ide-info and -hiedir=.hie tell GHC to write compile-time information about the code
|
|
-- to .hie directory. This information can then be used by other tools, e.g. stan (static analyzer).
|
|
-fwrite-ide-info -hiedir=.hie
|
|
default-extensions:
|
|
OverloadedStrings
|
|
TemplateHaskell
|
|
QuasiQuotes
|
|
ScopedTypeVariables
|
|
|
|
common common-exe
|
|
ghc-options:
|
|
-threaded -rtsopts -with-rtsopts=-N
|
|
|
|
library
|
|
import: common-all
|
|
hs-source-dirs: src
|
|
build-tool-depends:
|
|
alex:alex
|
|
, happy:happy
|
|
build-depends:
|
|
, base >= 4.7 && < 5
|
|
, Glob ^>= 0.10.2
|
|
, containers ^>= 0.6.5
|
|
, directory ^>= 1.3.6 && < 1.4
|
|
, dir-traverse ^>= 0.2.3
|
|
, filepath ^>= 1.4.2
|
|
, time ^>= 1.9.3
|
|
, bytestring ^>= 0.10.12
|
|
, aeson ^>= 1.5.6
|
|
, aeson-pretty ^>= 0.8
|
|
, text ^>= 1.2.4
|
|
, template-haskell ^>= 2.16.0
|
|
, unordered-containers ^>= 0.2.16
|
|
, mtl ^>= 2.2.2
|
|
, async ^>= 2.2.4
|
|
, conduit ^>= 1.3.4
|
|
, exceptions ^>= 0.10.4
|
|
, split ^>= 0.2.3
|
|
, conduit-extra ^>= 1.3.5
|
|
, process ^>= 1.6.13
|
|
, cryptohash-sha256 ^>= 0.11.102
|
|
, mustache ^>= 2.3.2
|
|
, parsec ^>= 3.1.14
|
|
, path ^>= 0.9.2
|
|
, path-io ^>= 1.6.3
|
|
, regex-tdfa ^>= 1.3.1
|
|
, strong-path ^>= 1.1.4
|
|
, unliftio ^>= 0.2.20
|
|
, utf8-string ^>= 1.0.2
|
|
, cryptonite ^>= 0.29
|
|
, fsnotify ^>= 0.3.0
|
|
, http-conduit ^>= 2.3.8
|
|
, uuid ^>= 1.3.15
|
|
-- 'array' is used by code generated by Alex for src/Analyzer/Parser/Lexer.x
|
|
, array ^>= 0.5.4
|
|
other-modules: Paths_waspc
|
|
exposed-modules:
|
|
FilePath.Extra
|
|
Wasp.Analyzer
|
|
Wasp.Analyzer.AnalyzeError
|
|
Wasp.Analyzer.ErrorMessage
|
|
Wasp.Analyzer.Evaluator
|
|
Wasp.Analyzer.Evaluator.Bindings
|
|
Wasp.Analyzer.Evaluator.Evaluation
|
|
Wasp.Analyzer.Evaluator.Evaluation.Combinators
|
|
Wasp.Analyzer.Evaluator.Evaluation.Internal
|
|
Wasp.Analyzer.Evaluator.Evaluation.TypedDictExpr
|
|
Wasp.Analyzer.Evaluator.Evaluation.TypedDictExpr.Combinators
|
|
Wasp.Analyzer.Evaluator.Evaluation.TypedExpr
|
|
Wasp.Analyzer.Evaluator.Evaluation.TypedExpr.Combinators
|
|
Wasp.Analyzer.Evaluator.EvaluationError
|
|
Wasp.Analyzer.Parser
|
|
Wasp.Analyzer.Parser.AST
|
|
Wasp.Analyzer.Parser.Ctx
|
|
Wasp.Analyzer.Parser.LexerUtils
|
|
Wasp.Analyzer.Parser.Lexer
|
|
Wasp.Analyzer.Parser.Monad
|
|
Wasp.Analyzer.Parser.ParseError
|
|
Wasp.Analyzer.Parser.Parser
|
|
Wasp.Analyzer.Parser.SourcePosition
|
|
Wasp.Analyzer.Parser.SourceRegion
|
|
Wasp.Analyzer.Parser.Token
|
|
Wasp.Analyzer.StdTypeDefinitions
|
|
Wasp.Analyzer.StdTypeDefinitions.App.Dependency
|
|
Wasp.Analyzer.StdTypeDefinitions.Entity
|
|
Wasp.Analyzer.Type
|
|
Wasp.Analyzer.TypeChecker
|
|
Wasp.Analyzer.TypeChecker.AST
|
|
Wasp.Analyzer.TypeChecker.Internal
|
|
Wasp.Analyzer.TypeChecker.Monad
|
|
Wasp.Analyzer.TypeChecker.TypeError
|
|
Wasp.Analyzer.TypeDefinitions
|
|
Wasp.Analyzer.TypeDefinitions.Class.HasCustomEvaluation
|
|
Wasp.Analyzer.TypeDefinitions.Class.IsDeclType
|
|
Wasp.Analyzer.TypeDefinitions.Class.IsEnumType
|
|
Wasp.Analyzer.TypeDefinitions.Internal
|
|
Wasp.Analyzer.TypeDefinitions.TH
|
|
Wasp.Analyzer.TypeDefinitions.TH.Common
|
|
Wasp.Analyzer.TypeDefinitions.TH.Decl
|
|
Wasp.Analyzer.TypeDefinitions.TH.Enum
|
|
Wasp.AppSpec
|
|
Wasp.AppSpec.Action
|
|
Wasp.AppSpec.App
|
|
Wasp.AppSpec.App.Auth
|
|
Wasp.AppSpec.App.Client
|
|
Wasp.AppSpec.App.Db
|
|
Wasp.AppSpec.App.Dependency
|
|
Wasp.AppSpec.App.Server
|
|
Wasp.AppSpec.Core.Decl
|
|
Wasp.AppSpec.Core.Ref
|
|
Wasp.AppSpec.Entity
|
|
Wasp.AppSpec.Entity.Field
|
|
Wasp.AppSpec.ExternalCode
|
|
Wasp.AppSpec.ExtImport
|
|
Wasp.AppSpec.Job
|
|
Wasp.AppSpec.JSON
|
|
Wasp.AppSpec.Operation
|
|
Wasp.AppSpec.Page
|
|
Wasp.AppSpec.Query
|
|
Wasp.AppSpec.Route
|
|
Wasp.AppSpec.Valid
|
|
Wasp.AppSpec.Util
|
|
Wasp.Common
|
|
Wasp.CompileOptions
|
|
Wasp.Data
|
|
Wasp.Error
|
|
Wasp.ExternalCode
|
|
Wasp.Generator
|
|
Wasp.Generator.Common
|
|
Wasp.Generator.DbGenerator
|
|
Wasp.Generator.DbGenerator.Common
|
|
Wasp.Generator.DbGenerator.Jobs
|
|
Wasp.Generator.DbGenerator.Operations
|
|
Wasp.Generator.DockerGenerator
|
|
Wasp.Generator.ExternalCodeGenerator
|
|
Wasp.Generator.ExternalCodeGenerator.Common
|
|
Wasp.Generator.ExternalCodeGenerator.Js
|
|
Wasp.Generator.FileDraft
|
|
Wasp.Generator.FileDraft.CopyDirFileDraft
|
|
Wasp.Generator.FileDraft.CopyFileDraft
|
|
Wasp.Generator.FileDraft.TemplateFileDraft
|
|
Wasp.Generator.FileDraft.TextFileDraft
|
|
Wasp.Generator.FileDraft.Writeable
|
|
Wasp.Generator.FileDraft.WriteableMonad
|
|
Wasp.Generator.Job
|
|
Wasp.Generator.Job.IO
|
|
Wasp.Generator.Job.Process
|
|
Wasp.Generator.JsImport
|
|
Wasp.Generator.Monad
|
|
Wasp.Generator.ServerGenerator
|
|
Wasp.Generator.ServerGenerator.AuthG
|
|
Wasp.Generator.ServerGenerator.Common
|
|
Wasp.Generator.ServerGenerator.ConfigG
|
|
Wasp.Generator.ServerGenerator.ExternalCodeGenerator
|
|
Wasp.Generator.ServerGenerator.JobGenerator
|
|
Wasp.Generator.ServerGenerator.OperationsG
|
|
Wasp.Generator.ServerGenerator.OperationsRoutesG
|
|
Wasp.Generator.ServerGenerator.Setup
|
|
Wasp.Generator.ServerGenerator.Start
|
|
Wasp.Generator.Setup
|
|
Wasp.Generator.Start
|
|
Wasp.Generator.Templates
|
|
Wasp.Generator.WebAppGenerator
|
|
Wasp.Generator.WebAppGenerator.AuthG
|
|
Wasp.Generator.WebAppGenerator.Common
|
|
Wasp.Generator.WebAppGenerator.ExternalCodeGenerator
|
|
Wasp.Generator.WebAppGenerator.OperationsGenerator
|
|
Wasp.Generator.WebAppGenerator.OperationsGenerator.ResourcesG
|
|
Wasp.Generator.WebAppGenerator.RouterGenerator
|
|
Wasp.Generator.WebAppGenerator.Setup
|
|
Wasp.Generator.WebAppGenerator.Start
|
|
Wasp.Generator.WriteFileDrafts
|
|
Wasp.Lib
|
|
Wasp.NpmDependency
|
|
Wasp.Psl.Ast.Model
|
|
Wasp.Psl.Generator.Model
|
|
Wasp.Psl.Parser.Model
|
|
Wasp.SemanticVersion
|
|
Wasp.Util
|
|
Wasp.Util.Control.Monad
|
|
Wasp.Util.Fib
|
|
Wasp.Util.IO
|
|
Wasp.Util.Terminal
|
|
Wasp.WaspignoreFile
|
|
Wasp.Generator.NpmDependencies
|
|
Wasp.Generator.NpmInstall
|
|
Wasp.Message
|
|
|
|
library cli-lib
|
|
import: common-all
|
|
hs-source-dirs: cli/src
|
|
build-depends:
|
|
directory
|
|
, base
|
|
, filepath
|
|
, time
|
|
, aeson
|
|
, mtl
|
|
, async
|
|
, exceptions
|
|
, cryptonite
|
|
, fsnotify
|
|
, http-conduit
|
|
, path
|
|
, path-io
|
|
, strong-path
|
|
, utf8-string
|
|
, uuid
|
|
, waspc
|
|
other-modules: Paths_waspc
|
|
exposed-modules:
|
|
Wasp.Cli.Command
|
|
Wasp.Cli.Command.BashCompletion
|
|
Wasp.Cli.Command.Build
|
|
Wasp.Cli.Command.Call
|
|
Wasp.Cli.Command.Clean
|
|
Wasp.Cli.Command.Common
|
|
Wasp.Cli.Command.Compile
|
|
Wasp.Cli.Command.CreateNewProject
|
|
Wasp.Cli.Command.Db
|
|
Wasp.Cli.Command.Db.Migrate
|
|
Wasp.Cli.Command.Deps
|
|
Wasp.Cli.Command.Info
|
|
Wasp.Cli.Command.Start
|
|
Wasp.Cli.Command.Telemetry
|
|
Wasp.Cli.Command.Telemetry.Common
|
|
Wasp.Cli.Command.Telemetry.Project
|
|
Wasp.Cli.Command.Telemetry.User
|
|
Wasp.Cli.Command.Watch
|
|
Wasp.Cli.Common
|
|
Wasp.Cli.Terminal
|
|
Wasp.Cli.Command.Message
|
|
Wasp.Cli.Message
|
|
|
|
executable wasp-cli
|
|
import: common-all, common-exe
|
|
hs-source-dirs: cli/exe
|
|
main-is: Main.hs
|
|
build-depends:
|
|
base
|
|
, async
|
|
, waspc
|
|
, cli-lib
|
|
other-modules:
|
|
Paths_waspc
|
|
|
|
test-suite waspc-test
|
|
import: common-all, common-exe
|
|
type: exitcode-stdio-1.0
|
|
hs-source-dirs: test
|
|
main-is: TastyDiscoverDriver.hs
|
|
build-tool-depends:
|
|
tasty-discover:tasty-discover
|
|
build-depends:
|
|
, aeson
|
|
, base
|
|
, deepseq
|
|
, filepath
|
|
, mtl
|
|
, parsec
|
|
, path
|
|
, split
|
|
, strong-path
|
|
, text
|
|
, unordered-containers
|
|
, waspc
|
|
, QuickCheck ^>= 2.14
|
|
, tasty ^>= 1.4.2
|
|
-- tasty-hspec 1.1.7 introduces breaking changes, which is why we have < 1.1.7 .
|
|
, tasty-hspec >= 1.1 && < 1.1.7
|
|
, tasty-quickcheck ^>= 0.10
|
|
other-modules:
|
|
Analyzer.Evaluation.EvaluationErrorTest
|
|
Analyzer.EvaluatorTest
|
|
Analyzer.Parser.ParseErrorTest
|
|
Analyzer.Parser.SourcePositionTest
|
|
Analyzer.Parser.TokenTest
|
|
Analyzer.ParserTest
|
|
Analyzer.TestUtil
|
|
Analyzer.TypeChecker.InternalTest
|
|
Analyzer.TypeCheckerTest
|
|
AnalyzerTest
|
|
AppSpec.ValidTest
|
|
ErrorTest
|
|
FilePath.ExtraTest
|
|
Fixtures
|
|
Generator.ExternalCodeGenerator.JsTest
|
|
Generator.FileDraft.CopyFileDraftTest
|
|
Generator.FileDraft.TemplateFileDraftTest
|
|
Generator.MockWriteableMonad
|
|
Generator.WebAppGeneratorTest
|
|
Generator.WriteFileDraftsTest
|
|
Psl.Common.ModelTest
|
|
Psl.Generator.ModelTest
|
|
Psl.Parser.ModelTest
|
|
Test.Util
|
|
Util.FibTest
|
|
UtilTest
|
|
SemanticVersionTest
|
|
WaspignoreFileTest
|
|
Paths_waspc
|
|
Generator.NpmDependenciesTest
|
|
|
|
test-suite e2e-test
|
|
import: common-all, common-exe
|
|
type: exitcode-stdio-1.0
|
|
hs-source-dirs: e2e-test
|
|
main-is: Main.hs
|
|
build-tool-depends: waspc:wasp-cli
|
|
build-depends:
|
|
, aeson
|
|
, directory
|
|
, base
|
|
, filepath
|
|
, strong-path
|
|
, text
|
|
, mtl
|
|
, bytestring
|
|
, dir-traverse
|
|
, aeson-pretty
|
|
, process
|
|
, tasty ^>= 1.4.2
|
|
-- tasty-hspec 1.1.7 introduces breaking changes, which is why we have < 1.1.7 .
|
|
, tasty-hspec >= 1.1 && < 1.1.7
|
|
, tasty-golden ^>= 2.3.5
|
|
other-modules:
|
|
Common
|
|
GoldenTest
|
|
ShellCommands
|
|
Tests.WaspBuildTest
|
|
Tests.WaspCompileTest
|
|
Tests.WaspJobTest
|
|
Tests.WaspMigrateTest
|
|
Tests.WaspNewTest
|
|
|
|
test-suite cli-test
|
|
import: common-all, common-exe
|
|
type: exitcode-stdio-1.0
|
|
hs-source-dirs: cli/test
|
|
main-is: TastyDiscoverDriver.hs
|
|
build-tool-depends:
|
|
tasty-discover:tasty-discover
|
|
build-depends:
|
|
, base
|
|
, waspc
|
|
, cli-lib
|
|
, QuickCheck ^>= 2.14
|
|
, tasty ^>= 1.4.2
|
|
-- tasty-hspec 1.1.7 introduces breaking changes, which is why we have < 1.1.7 .
|
|
, tasty-hspec >= 1.1 && < 1.1.7
|
|
, tasty-quickcheck ^>= 0.10
|
|
other-modules:
|
|
TerminalTest
|
|
Paths_waspc
|
|
|
|
benchmark waspc-benchmarks
|
|
import: common-all, common-exe
|
|
type: exitcode-stdio-1.0
|
|
hs-source-dirs: benchmark
|
|
main-is: Main.hs
|
|
other-modules: Paths_waspc
|
|
build-depends:
|
|
base
|
|
, criterion ^>= 1.5
|
|
, waspc
|