packages feed

pencil-1.0.2: pencil.cabal

cabal-version:       2.4
name:                pencil
version:             1.0.2
synopsis: Static site generator
description:
  Pencil is a static site generator. Use Pencil to build a personal website, a
  blog, and more. Pencil comes pre-loaded with goodies such as Markdown and
  Sass/Scss support, templating, blogging, and tagging. Designed with the
  Haskell beginner in mind, but flexible enough to extend for your own needs.
homepage:            https://github.com/elben/pencil
license:             BSD-3-Clause
license-file:        LICENSE
author:              Elben Shira
maintainer:          elben@shira.im
copyright:           2018 Elben Shira
category:            Web
build-type:          Simple
extra-doc-files:     README.md
                   , CHANGELOG.md
extra-source-files:

                  -- List out test example files so that they are included in the `cabal new-sdist`
                  -- distribution, so that tests can run.
                    examples/Simple/site/*.html
                   , examples/Simple/site/*.scss
                   , examples/Simple/site/*.markdown
                   , examples/Blog/site/*.html
                   , examples/Blog/site/assets/*.scss
                   , examples/Blog/site/*.xml
                   , examples/Blog/site/blog/*.markdown
                   , examples/Complex/site/*.html
                   , examples/Complex/site/*.xml
                   , examples/Complex/site/assets/*.markdown
                   , examples/Complex/site/assets/*.jpg
                   , examples/Complex/site/assets/*.scss
                   , examples/Complex/site/assets/conversions/*.markdown
                   , examples/Complex/site/assets/conversions/*.jpg
                   , examples/Complex/site/assets/conversions/*.scss
                   , examples/Complex/site/assets/fun/*.markdown
                   , examples/Complex/site/assets/fun/*.jpg
                   , examples/Complex/site/assets/fun/*.pdf
                   , examples/Complex/site/assets/passthroughs/*.markdown
                   , examples/Complex/site/assets/passthroughs/*.jpg
                   , examples/Complex/site/assets/passthroughs/*.pdf
                   , examples/Complex/site/assets/passthroughs/*.scss
                   , examples/Complex/site/blog/*.markdown
                   , examples/Complex/site/deep/*.markdown
                   , examples/Complex/site/deep/*.md
                   , examples/Complex/site/deep/*.html
                   , examples/Docs/site/*.markdown
                   , examples/Docs/site/*.scss
                   , examples/Docs/site/*.html
                   , examples/Docs/site/guides/*.markdown
                   , examples/Docs/site/guides/images/*.png
                   , examples/Docs/site/tutorials/*.markdown
                   , examples/Docs/site/tutorials/images/*.png

                   --  Once cabal 2.4 is enforced, we could just list them out as:
                   --  , examples/**/*.html
                   --  , examples/**/*.markdown
                   --  , examples/**/*.scss
tested-with:         GHC == 9.6.7

library
  hs-source-dirs:      src
  exposed-modules:     Pencil
                     , Pencil.App
                     , Pencil.App.Internal
                     , Pencil.Blog
                     , Pencil.Config
                     , Pencil.Content
                     , Pencil.Content.Internal
                     , Pencil.Content.Nodes
                     , Pencil.Env
                     , Pencil.Env.Internal
                     , Pencil.Parser
  build-depends:       aeson >= 2.0 && < 2.3
                     , base >= 4.14 && < 5
                     , data-default >= 0.7 && < 0.9
                     , directory >= 1.3 && < 1.4
                     , edit-distance >= 0.2.2.1 && < 0.3
                     , filepath >= 1.4 && < 1.6
                     , hashable >= 1.2.6.0 && < 1.6
                     , hsass >= 0.8 && < 1
                     , mtl >= 2.2 && < 3
                     , pandoc >= 3.11 && < 4
                     , parsec >= 3.1 && < 3.2
                     , text >= 1.2.2 && < 2.2
                     , time >= 1.5.0.1 && < 2
                     , unordered-containers >= 0.2.7.2 && < 0.3
                     , vector >= 0.12.0 && < 0.14
                     , xml >= 1.3.10 && < 1.4
                     , yaml >= 0.8.32 && < 0.12
  default-language:    Haskell2010

test-suite pencil-test
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  build-depends:       base >= 4.8 && < 5
                     , pencil
                     , doctest >= 0.16 && < 1
  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
  default-language:    Haskell2010

test-suite pencil-example-simple
  type:                exitcode-stdio-1.0
  hs-source-dirs:      examples/Simple
  main-is:             src/Main.hs
  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
  build-depends:       base >= 4.8 && < 5
                     , pencil
  default-language:    Haskell2010

test-suite pencil-example-blog
  type:                exitcode-stdio-1.0
  hs-source-dirs:      examples/Blog
  main-is:             src/Main.hs
  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
  build-depends:       base >= 4.8 && < 5
                     , pencil
                     , text
                     , unordered-containers
                     , mtl
  default-language:    Haskell2010

test-suite pencil-example-complex
  type:                exitcode-stdio-1.0
  hs-source-dirs:      examples/Complex
  main-is:             src/Main.hs
  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
  build-depends:       base >= 4.8 && < 5
                     , pencil
                     , text
                     , unordered-containers
                     , mtl
  default-language:    Haskell2010

test-suite pencil-docs
  type:                exitcode-stdio-1.0
  hs-source-dirs:      examples/Docs
  main-is:             src/Main.hs
  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
  build-depends:       base >= 4.8 && < 5
                     , pencil
                     , text
  default-language:    Haskell2010

source-repository head
  type:     git
  location: https://github.com/elben/pencil