packages feed

yesod-core-1.7.0.0: yesod-core.cabal

name:            yesod-core
version:         1.7.0.0
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:     API docs and the README are available at <http://www.stackage.org/package/yesod-core>
category:        Web, Yesod
stability:       Stable
cabal-version:   >= 1.10
build-type:      Simple
homepage:        http://www.yesodweb.com/
extra-source-files:
  test/YesodCoreTest.hs
  test/YesodCoreTest/*.hs
  test/YesodCoreTest/JsLoaderSites/Bottom.hs
  test/en.msg
  test/test.hs
  test/fixtures/routes_with_line_continuations.yesodroutes
  ChangeLog.md
  README.md
  docs/split-route-compilation.md

library
    default-language: Haskell2010
    hs-source-dirs: src

    build-depends:   base                  >= 4.11     && < 5
                   , aeson                 >= 1.0
                   , attoparsec-aeson      >= 2.1
                   , auto-update
                   , blaze-html            >= 0.5
                   , blaze-markup          >= 0.7.1
                   , bytestring            >= 0.10.2
                   , case-insensitive      >= 0.2
                   , cereal                >= 0.3
                   , clientsession         >= 0.9.1    && < 0.10
                   , conduit               >= 1.3
                   , conduit-extra
                   , containers            >= 0.2
                   , cookie                >= 0.4.3    && < 0.6
                   , data-default
                   , deepseq               >= 1.3
                   , encoding
                   , entropy
                   , fast-logger           >= 2.2
                   , http-types            >= 0.7
                   , memory
                   , monad-logger          >= 0.3.10   && < 0.4
                   , mtl
                   , parsec                >= 2        && < 3.2
                   , path-pieces           >= 0.1.2    && < 0.3
                   , primitive             >= 0.6
                   , random                >= 1.0.0.2  && < 1.4
                   , resourcet             >= 1.2
                   , shakespeare           >= 2.0
                   , template-haskell      >= 2.13
                   , text                  >= 0.7
                   , th-compat             >= 0.1
                   , th-lift-instances     >= 0.1
                   , time                  >= 1.5
                   , transformers          >= 0.4
                   , unix-compat
                   , unliftio
                   , unordered-containers  >= 0.2
                   , vector                >= 0.9      && < 0.14
                   , wai                   >= 3.2
                   , wai-extra             >= 3.0.7
                   , wai-logger            >= 0.2
                   , warp                  >= 3.0.2
                   , 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.Core.Unsafe
                     Yesod.Routes.TH.Types
                     Yesod.Core.Class.Dispatch.ToParentRoute
    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
                     Yesod.Core.Types.Content
                     Yesod.Core.Types.ErrorResponse
                     Yesod.Core.Types.HandlerContents
                     Yesod.Core.Types.TypedContent
                     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
                     Yesod.Routes.TH.Internal

    ghc-options:     -Wall

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

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

    other-modules: Hierarchy
                   Hierarchy.Admin
                   Hierarchy.ResourceTree
                   Hierarchy.Nest2.NestInner
                   Hierarchy.Nest2
                   Hierarchy.Nest3
                   Hierarchy.Nest
                   Yesod.Routes.Class
                   Yesod.Routes.Overlap
                   Yesod.Routes.Parse
                   Yesod.Routes.TH
                   Yesod.Routes.TH.Dispatch
                   Yesod.Routes.TH.ParseRoute
                   Yesod.Routes.TH.RenderRoute
                   Yesod.Routes.TH.RouteAttrs
                   Yesod.Routes.TH.Types
                   Yesod.Routes.TH.Internal
                   Route.FallthroughSpec
                   YesodCoreTest.RuntimeHarness
                   Route.RenderRouteSpec
                   Route.RouteAttrSpec
                   Route.DiscoveryModeSpec
                   Route.SubDispatchAritySpec
                   Route.DeepAritySpec
                   Route.DeepArityTypes
                   Route.InstanceProbeSpec
                   Route.InstanceProbeTypes
                   Route.InlineParseClausesSpec
                   Route.NestedParseClausesSpec
                   Route.PureQ
                   Route.FocusLeafConsSpec
                   Route.MissingFocusTargetSpec
                   Route.MissingFocusTargetTypes
                   YesodCoreTest.RenderRouteSpec
                   YesodCoreTest.RenderRouteSpec.TH

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

    build-depends: base < 5
                 , HUnit
                 , aeson
                 , attoparsec-aeson
                 , auto-update
                 , blaze-html
                 , blaze-markup
                 , bytestring
                 , hspec-expectations
                 , case-insensitive
                 , cereal
                 , clientsession
                 , conduit
                 , conduit-extra
                 , containers
                 , cookie
                 , data-default
                 , deepseq
                 , encoding
                 , entropy
                 , fast-logger
                 , hspec
                 , http-types
                 , memory
                 , monad-logger
                 , mtl
                 , parsec
                 , path-pieces
                 , primitive
                 , random
                 , resourcet
                 , shakespeare
                 , template-haskell
                 , text
                 , th-abstraction
                 , th-compat
                 , th-lift-instances
                 , time
                 , transformers
                 , unix-compat
                 , unliftio
                 , unordered-containers
                 , vector
                 , wai
                 , wai-extra
                 , wai-logger
                 , warp
                 , word8

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

    other-modules: YesodCoreTest
                   YesodCoreTest.Auth
                   YesodCoreTest.Breadcrumb
                   YesodCoreTest.Cache
                   YesodCoreTest.CleanPath
                   YesodCoreTest.Content
                   YesodCoreTest.Header
                   YesodCoreTest.Csrf
                   YesodCoreTest.ErrorHandling
                   YesodCoreTest.ErrorHandling.CustomApp
                   YesodCoreTest.Exceptions
                   YesodCoreTest.FallthroughDispatch.Runtime
                   YesodCoreTest.FallthroughDispatch.Resources
                   YesodCoreTest.InternalRequest
                   YesodCoreTest.JsAttributes
                   YesodCoreTest.JsLoader
                   YesodCoreTest.JsLoaderSites.Bottom
                   YesodCoreTest.Json
                   YesodCoreTest.Links
                   YesodCoreTest.LiteApp
                   YesodCoreTest.Media
                   YesodCoreTest.MediaData
                   YesodCoreTest.Meta
                   YesodCoreTest.NestedDispatch.Runtime
                   YesodCoreTest.NestedDispatch.NestR
                   YesodCoreTest.NestedDispatch.InnerR
                   YesodCoreTest.NestedDispatch.ParentR
                   YesodCoreTest.NestedDispatch.Parent0R
                   YesodCoreTest.NestedDispatch.Parent0R.Child0R
                   YesodCoreTest.NestedDispatch.Resources
                   YesodCoreTest.NoOverloadedStrings
                   YesodCoreTest.NoOverloadedStringsSub
                   YesodCoreTest.ParameterizedSite
                   YesodCoreTest.ParameterizedSite.Compat
                   YesodCoreTest.ParameterizedSite.PolyAny
                   YesodCoreTest.ParameterizedSite.PolyShow
                   YesodCoreTest.ParameterizedSite.SubRoute
                   YesodCoreTest.RawResponse
                   YesodCoreTest.Redirect
                   YesodCoreTest.Reps
                   YesodCoreTest.RequestBodySize
                   YesodCoreTest.Ssl
                   YesodCoreTest.Streaming
                   YesodCoreTest.StubLaxSameSite
                   YesodCoreTest.StubSslOnly
                   YesodCoreTest.StubStrictSameSite
                   YesodCoreTest.StubUnsecured
                   YesodCoreTest.SubSub
                   YesodCoreTest.SubSubData
                   YesodCoreTest.SplitSubsite.Runtime
                   YesodCoreTest.SplitSubsite.Data
                   YesodCoreTest.SplitSubsite.NestedR
                   YesodCoreTest.ParameterizedSubData
                   YesodCoreTest.ParamSubsite.Data
                   YesodCoreTest.ParameterizedSubDispatch
                   YesodCoreTest.ParameterizedSubDispatch.Data
                   YesodCoreTest.ParameterizedSubDispatchRuntime
                   YesodCoreTest.ParameterizedSubDispatchRuntime.Data
                   YesodCoreTest.ParamSubsite.InstanceRuntime
                   YesodCoreTest.RuntimeHarness
                   YesodCoreTest.ParamSubsite.SplitNested
                   YesodCoreTest.ParamSubsite.SplitRuntime
                   YesodCoreTest.ParamDefaultSplit.Data
                   YesodCoreTest.ParamDefaultSplit.Runtime
                   YesodCoreTest.ParamTopLevelRuntime
                   YesodCoreTest.ParamFocusSplit.Runtime
                   YesodCoreTest.ParamFocusSplit.Resources
                   YesodCoreTest.ParamFocusSplit.SubR
                   YesodCoreTest.ParamNoExplicitArgs
                   YesodCoreTest.ParamFallthroughRuntime
                   YesodCoreTest.ParamNoFallthroughRuntime
                   YesodCoreTest.ParamNestedNoFallthroughRuntime
                   YesodCoreTest.FallthroughMatrix.Resources
                   YesodCoreTest.FallthroughMatrix.FirstFoo
                   YesodCoreTest.FallthroughMatrix.Runtime
                   YesodCoreTest.MultiPieceNestedRuntime
                   YesodCoreTest.ZeroPieceShadowRuntime
                   YesodCoreTest.ZeroPieceShadow.ShadowApp
                   YesodCoreTest.ZeroPieceShadow.FallApp
                   YesodCoreTest.BangSeparatorRuntime
                   YesodCoreTest.SubsiteFallthrough.Runtime
                   YesodCoreTest.SubsiteFallthrough.Data
                   YesodCoreTest.SubsiteFallthrough.Nested
                   YesodCoreTest.SubsiteOptsFallthrough.Runtime
                   YesodCoreTest.SubsiteOptsFallthrough.Data
                   YesodCoreTest.WaiSubsite
                   YesodCoreTest.Widget
                   YesodCoreTest.YesodTest

    cpp-options:   -DTEST
    if os(windows)
        cpp-options: -DWINDOWS
    build-depends:  base >= 4.11 && < 5
                  , async
                  , bytestring
                  , clientsession
                  , conduit
                  , conduit-extra
                  , containers
                  , cookie >= 0.4.1    && < 0.6
                  , data-default
                  , encoding
                  , hspec >= 1.3
                  , hspec-expectations
                  , http-types
                  , network
                  , random
                  , resourcet
                  , shakespeare
                  , streaming-commons
                  , template-haskell
                  , text
                  , transformers
                  , unliftio
                  , unordered-containers
                  , path-pieces
                  , mtl
                  , time
                  , cereal
                  , monad-logger
                  , deepseq
                  , blaze-html
                  , aeson
                  , primitive
                  , case-insensitive
                  , wai-logger
                  , memory
                  , unix-compat
                  , auto-update
                  , vector
                  , word8
                  , blaze-markup
                  , fast-logger
                  , parsec
                  , wai >= 3.0
                  , entropy
                  , attoparsec-aeson
                  , wai-extra
                  , warp
                  , th-lift-instances
                  , yesod-core
    -- NB: this behavioral suite depends on the *packaged* yesod-core library
    -- (no `src` on hs-source-dirs), so it compiles against the real
    -- exposed/hidden module boundary. That is what catches API-exposure
    -- regressions (a module that downstream consumers cannot import). The
    -- pure-codegen suite `test-routes` keeps `src` on hs-source-dirs because it
    -- legitimately needs internal modules (e.g. Yesod.Routes.TH.RenderRoute,
    -- Yesod.Routes.Class) for compile-time codegen assertions.
    ghc-options:     -Wall -threaded
    other-extensions: TemplateHaskell

benchmark widgets
    default-language: Haskell2010
    type: exitcode-stdio-1.0
    hs-source-dirs: bench
    build-depends:  base < 5
                  , blaze-html
                  , bytestring
                  , gauge
                  , shakespeare
                  , text
    main-is:        widget.hs
    ghc-options:    -Wall -O2

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