mirror of
https://github.com/qfpl/applied-fp-course.git
synced 2024-11-22 11:23:01 +03:00
c673d27b45
* Update the nixpkgs pinned version and move to explicit json file. Upgrade tasty-wai and waargonaut. Update affected levels * Update versions in stack file. * Add sop-core to stack.yaml * Separate out overlays Clean up default.nix * Clean up `parseJSONConfigFile` with new Waargy goodness
239 lines
8.6 KiB
Plaintext
239 lines
8.6 KiB
Plaintext
-- Initial level01.cabal generated by cabal init. For further
|
|
-- documentation, see http://haskell.org/cabal/users-guide/
|
|
|
|
-- The name of the package.
|
|
name: applied-fp-course
|
|
|
|
-- The package version. See the Haskell package versioning policy (PVP)
|
|
-- for standards guiding when and how versions should be incremented.
|
|
-- https://wiki.haskell.org/Package_versioning_policy
|
|
-- PVP summary: +-+------- breaking API changes
|
|
-- | | +----- non-breaking API additions
|
|
-- | | | +--- code changes with no API change
|
|
version: 0.1.0.0
|
|
|
|
-- A short (one-line) description of the package.
|
|
synopsis: Simplest of web apps for educational purposes.
|
|
|
|
-- A longer description of the package.
|
|
description: Haskell course for people looking to start building larger applications.
|
|
|
|
-- The license under which the package is released.
|
|
license: BSD3
|
|
|
|
-- The file containing the license text.
|
|
license-file: LICENCE
|
|
|
|
-- The package author(s).
|
|
author: QFPL @ Data61
|
|
|
|
-- An email address to which users can send suggestions, bug reports, and
|
|
-- patches.
|
|
maintainer: sean.chalmers@data61.csiro.au
|
|
|
|
-- A copyright notice.
|
|
copyright: Copyright (C) 2017 Commonwealth Scientific and Industrial Research Organisation (CSIRO)
|
|
|
|
category: Education
|
|
|
|
build-type: Simple
|
|
|
|
-- Extra files to be distributed with the package, such as examples or a README.
|
|
extra-source-files: changelog.md
|
|
|
|
-- Constraint on the version of Cabal needed to build this package.
|
|
cabal-version: >=1.10
|
|
|
|
tested-with: GHC==8.6.1
|
|
, GHC==8.4.3
|
|
, GHC==8.2.2
|
|
, GHC==8.0.2
|
|
|
|
source-repository head
|
|
type: git
|
|
location: https://github.com/qfpl/applied-fp-course
|
|
|
|
library
|
|
-- Modules included in this executable, other than Main.
|
|
exposed-modules:
|
|
Level01.Core
|
|
, Level02.Core
|
|
, Level02.Types
|
|
, Level04.Conf
|
|
, Level04.DB
|
|
, Level04.DB.Types
|
|
, Level04.Core
|
|
, Level04.Types
|
|
, Level04.Types.CommentText
|
|
, Level04.Types.Error
|
|
, Level04.Types.Topic
|
|
, Level05.AppM
|
|
, Level05.Conf
|
|
, Level05.DB
|
|
, Level05.DB.Types
|
|
, Level05.Core
|
|
, Level05.Types
|
|
, Level05.Types.CommentText
|
|
, Level05.Types.Error
|
|
, Level05.Types.Topic
|
|
, Level06.AppM
|
|
, Level06.Conf
|
|
, Level06.Conf.CommandLine
|
|
, Level06.Conf.File
|
|
, Level06.DB
|
|
, Level06.DB.Types
|
|
, Level06.Core
|
|
, Level06.Types
|
|
, Level06.Types.CommentText
|
|
, Level06.Types.Error
|
|
, Level06.Types.Topic
|
|
, Level07.AppM
|
|
, Level07.Conf
|
|
, Level07.Conf.CommandLine
|
|
, Level07.Conf.File
|
|
, Level07.DB
|
|
, Level07.DB.Types
|
|
, Level07.Core
|
|
, Level07.Responses
|
|
, Level07.Types
|
|
, Level07.Types.CommentText
|
|
, Level07.Types.Error
|
|
, Level07.Types.Topic
|
|
|
|
ghc-options: -Wall
|
|
-fno-warn-unused-binds
|
|
-fno-warn-unused-do-bind
|
|
-fno-warn-unused-imports
|
|
-fno-warn-type-defaults
|
|
-ferror-spans
|
|
|
|
-- Other library packages from which modules are imported.
|
|
build-depends: base >=4.8 && <4.13
|
|
, wai == 3.2.*
|
|
, warp == 3.2.*
|
|
, http-types >= 0.9 && < 0.13
|
|
, bytestring == 0.10.*
|
|
, text == 1.2.*
|
|
, optparse-applicative >= 0.13 && < 0.15
|
|
, mtl == 2.2.*
|
|
, time >= 1.4 && < 1.10
|
|
, old-locale >= 1.0 && < 1.5
|
|
, contravariant >= 1.4 && < 1.6
|
|
, sqlite-simple == 0.4.*
|
|
, sqlite-simple-errors == 0.6.*
|
|
, semigroups == 0.18.*
|
|
, transformers >= 0.4 && < 0.6
|
|
, lens >= 4.15 && < 4.18
|
|
, waargonaut >= 0.6 && < 0.7
|
|
, attoparsec >= 0.13 && < 0.15
|
|
|
|
-- Directories containing source files.
|
|
hs-source-dirs: src
|
|
|
|
-- Base language which the package is written in.
|
|
default-language: Haskell2010
|
|
|
|
test-suite app-fp-tests
|
|
default-language: Haskell2010
|
|
type: exitcode-stdio-1.0
|
|
|
|
hs-source-dirs: tests
|
|
main-is: Test.hs
|
|
|
|
build-depends: base >= 4.8 && <4.13
|
|
, applied-fp-course
|
|
, wai == 3.2.*
|
|
, wai-extra == 3.0.*
|
|
, http-types >= 0.9 && < 0.13
|
|
, tasty >= 0.8 && < 1.2
|
|
, tasty-hunit >= 0.9 && < 0.11
|
|
, tasty-wai >= 0.1 && < 0.2
|
|
, bytestring == 0.10.*
|
|
, text == 1.2.*
|
|
, mtl == 2.2.*
|
|
, semigroups == 0.18.*
|
|
, transformers >= 0.4 && < 0.6
|
|
|
|
-- [Challenge] Packages
|
|
, hedgehog >= 0.6 && < 0.7
|
|
, tasty-hedgehog >= 0.2 && < 0.3
|
|
|
|
test-suite doctests
|
|
-- Base language which the package is written in.
|
|
default-language: Haskell2010
|
|
type: exitcode-stdio-1.0
|
|
|
|
ghc-options: -threaded
|
|
main-is: doctests.hs
|
|
hs-source-dirs: tests
|
|
build-depends: base >= 4.8 && <4.13
|
|
, doctest >= 0.11 && < 0.17
|
|
, applied-fp-course
|
|
|
|
-- Level Executables
|
|
executable level01-exe
|
|
-- .hs or .lhs file containing the Main module.
|
|
main-is: Level01.hs
|
|
-- Directories containing source files.
|
|
hs-source-dirs: exe
|
|
-- Other library packages from which modules are imported.
|
|
build-depends: base >=4.8 && <4.13
|
|
, applied-fp-course
|
|
-- Base language which the package is written in.
|
|
default-language: Haskell2010
|
|
|
|
executable level02-exe
|
|
-- .hs or .lhs file containing the Main module.
|
|
main-is: Level02.hs
|
|
-- Directories containing source files.
|
|
hs-source-dirs: exe
|
|
-- Other library packages from which modules are imported.
|
|
build-depends: base >=4.8 && <4.13
|
|
, applied-fp-course
|
|
-- Base language which the package is written in.
|
|
default-language: Haskell2010
|
|
|
|
executable level04-exe
|
|
-- .hs or .lhs file containing the Main module.
|
|
main-is: Level04.hs
|
|
-- Directories containing source files.
|
|
hs-source-dirs: exe
|
|
-- Other library packages from which modules are imported.
|
|
build-depends: base >=4.8 && <4.13
|
|
, applied-fp-course
|
|
-- Base language which the package is written in.
|
|
default-language: Haskell2010
|
|
|
|
executable level05-exe
|
|
-- .hs or .lhs file containing the Main module.
|
|
main-is: Level05.hs
|
|
-- Directories containing source files.
|
|
hs-source-dirs: exe
|
|
-- Other library packages from which modules are imported.
|
|
build-depends: base >=4.8 && <4.13
|
|
, applied-fp-course
|
|
-- Base language which the package is written in.
|
|
default-language: Haskell2010
|
|
|
|
executable level06-exe
|
|
-- .hs or .lhs file containing the Main module.
|
|
main-is: Level06.hs
|
|
-- Directories containing source files.
|
|
hs-source-dirs: exe
|
|
-- Other library packages from which modules are imported.
|
|
build-depends: base >=4.8 && <4.13
|
|
, applied-fp-course
|
|
-- Base language which the package is written in.
|
|
default-language: Haskell2010
|
|
|
|
executable level07-exe
|
|
-- .hs or .lhs file containing the Main module.
|
|
main-is: Level07.hs
|
|
-- Directories containing source files.
|
|
hs-source-dirs: exe
|
|
-- Other library packages from which modules are imported.
|
|
build-depends: base >=4.8 && <4.13
|
|
, applied-fp-course
|
|
-- Base language which the package is written in.
|
|
default-language: Haskell2010
|