name:            yesod-core
version:         1.4.4
license:         MIT
license-file:    LICENSE
author:          Michael Snoyman <michael@snoyman.com>
maintainer:      Michael Snoyman <michael@snoyman.com>
synopsis:        Creation of type-safe, RESTful web applications.
description:
    Yesod is a framework designed to foster creation of RESTful web application that have strong compile-time guarantees of correctness. It also affords space efficient code and portability to many deployment backends, from CGI to stand-alone serving.
    .
    The Yesod documentation site <http://www.yesodweb.com/> has much more information, tutorials and information on some of the supporting packages, like Hamlet and Persistent.
category:        Web, Yesod
stability:       Stable
cabal-version:   >= 1.8
build-type:      Simple
homepage:        http://www.yesodweb.com/
extra-source-files:
  test.hs
  test/YesodCoreTest.hs
  test/YesodCoreTest/*.hs
  test/YesodCoreTest/JsLoaderSites/Bottom.hs
  test/en.msg
  test/test.hs
  changelog.md

library
    build-depends:   base                  >= 4.3      && < 5
                   , time                  >= 1.1.4
                   , wai                   >= 3.0
                   , wai-extra             >= 3.0
                   , bytestring            >= 0.9.1.4
                   , text                  >= 0.7
                   , template-haskell
                   , path-pieces           >= 0.1.2    && < 0.2
                   , shakespeare           >= 2.0
                   , blaze-builder         >= 0.2.1.4  && < 0.4
                   , transformers          >= 0.2.2
                   , mtl
                   , clientsession         >= 0.9      && < 0.10
                   , random                >= 1.0.0.2  && < 1.2
                   , cereal                >= 0.3
                   , old-locale            >= 1.0.0.2  && < 1.1
                   , containers            >= 0.2
                   , unordered-containers  >= 0.2
                   , monad-control         >= 0.3      && < 0.4
                   , transformers-base     >= 0.4
                   , cookie                >= 0.4.1    && < 0.5
                   , http-types            >= 0.7
                   , case-insensitive      >= 0.2
                   , parsec                >= 2        && < 3.2
                   , directory             >= 1
                   , vector                >= 0.9      && < 0.11
                   , aeson                 >= 0.5
                   , fast-logger           >= 2.2
                   , wai-logger            >= 0.2
                   , monad-logger          >= 0.3.1    && < 0.4
                   , conduit               >= 1.2
                   , resourcet             >= 0.4.9    && < 1.2
                   , lifted-base           >= 0.1.2
                   , blaze-html            >= 0.5
                   , blaze-markup          >= 0.5.1
                   , data-default
                   , safe
                   , warp                  >= 3.0.2
                   , unix-compat
                   , conduit-extra
                   , exceptions            >= 0.6
                   , deepseq
                   , mwc-random
                   , primitive
                   , word8

    exposed-modules: Yesod.Core
                     Yesod.Core.Content
                     Yesod.Core.Dispatch
                     Yesod.Core.Handler
                     Yesod.Core.Json
                     Yesod.Core.Widget
                     Yesod.Core.Internal
                     Yesod.Core.Types
                     Yesod.Routes.TH.Types
    other-modules:   Yesod.Core.Internal.Session
                     Yesod.Core.Internal.Request
                     Yesod.Core.Class.Handler
                     Yesod.Core.Internal.Util
                     Yesod.Core.Internal.Response
                     Yesod.Core.Internal.Run
                     Yesod.Core.Internal.TH
                     Yesod.Core.Internal.LiteApp
                     Yesod.Core.Class.Yesod
                     Yesod.Core.Class.Dispatch
                     Yesod.Core.Class.Breadcrumbs
                     Yesod.Core.TypeCache
                     Paths_yesod_core

                     Yesod.Routes.TH
                     Yesod.Routes.Class
                     Yesod.Routes.Parse
                     Yesod.Routes.Overlap
                     Yesod.Routes.TH.Dispatch
                     Yesod.Routes.TH.RenderRoute
                     Yesod.Routes.TH.ParseRoute
                     Yesod.Routes.TH.RouteAttrs

    ghc-options:     -Wall
    -- Following line added due to: https://github.com/yesodweb/yesod/issues/545
    -- This looks like a GHC bug
    extensions:      MultiParamTypeClasses

    -- Workaround for: http://ghc.haskell.org/trac/ghc/ticket/8443
    extensions:      TemplateHaskell

test-suite test-routes
    type: exitcode-stdio-1.0
    main-is: RouteSpec.hs
    hs-source-dirs: test, .

    other-modules: Hierarchy

    -- Workaround for: http://ghc.haskell.org/trac/ghc/ticket/8443
    extensions:      TemplateHaskell

    build-depends: base
                 , hspec
                 , containers
                 , bytestring
                 , template-haskell
                 , text
                 , random
                 , path-pieces
                 , HUnit

test-suite tests
    type: exitcode-stdio-1.0
    main-is: test.hs
    hs-source-dirs: test

    cpp-options:   -DTEST
    build-depends: base
                  ,hspec >= 1.3
                  ,wai >= 3.0
                  ,yesod-core
                  ,bytestring
                  ,text
                  ,http-types
                  , random
                  , blaze-builder
                  ,HUnit
                  ,QuickCheck >= 2 && < 3
                  ,transformers
                  , conduit
                  , containers
                  , lifted-base
                  , resourcet
                  , network
                  , async
                  , conduit-extra
                  , shakespeare
                  , streaming-commons
                  , wai-extra
                  , mwc-random
    ghc-options:     -Wall
    extensions: TemplateHaskell

benchmark widgets
    type: exitcode-stdio-1.0
    hs-source-dirs: bench
    build-depends:  base
                  , criterion
                  , bytestring
                  , text
                  , transformers
                  , yesod-core
                  , blaze-html
    main-is:        widget.hs
    ghc-options:    -Wall -O2

source-repository head
  type:     git
  location: https://github.com/yesodweb/yesod
