name: shift
version: 0.1.1
synopsis: A CHANGELOG generator
description: |
  A Haskell library and executable that allowes generating changelogs from a
  Git repository's history.
homepage: https://gitlab.chromabits.com/etcinit/shift
license: Apache
author: Eduardo Trujillo
maintainer: ed@trujillo.io
copyright: Eduardo Trujillo <ed@trujillo.io>
category: Development
extra-source-files:
  - README.md
  - test/**/*.hs

ghc-options: -Wall

dependencies:
  - base >= 4.7 && < 5
  - versions
  - text
  - hgit
  - containers
  - megaparsec
  - unordered-containers
  - string-conversions
  - bytestring
  - data-default
  - lens
  - transformers
  - process
  - optparse-applicative
  - mtl
  - http-client
  - http-client-tls
  - github
  - aeson
  - io-memoize
  - vector
  - exceptions
  - semigroups
  - cmark-gfm
  - scotty
  - gitlab-haskell
  - http-types

library:
  source-dirs:
    - src
  exposed-modules:
    - Shift
    - Shift.CLI
    - Shift.Generate
    - Shift.Git
    - Shift.Parsers
    - Shift.Processing
    - Shift.Rendering
    - Shift.Server
    - Shift.Types
    - Shift.Utilities
    - GitHub.UserSearch
    - GitLab.UserSearch
  other-modules: []

executables:
  shift:
    source-dirs: app
    main: Main.hs
    dependencies:
      - shift

tests:
  spec:
    main: Spec.hs
    source-dirs:
      - test
    dependencies:
      - shift
      - hspec
      - hspec-megaparsec
      - tasty
      - tasty-hspec
      - tasty-discover
      - tasty-test-reporter
  doctest:
    main: Doctest.hs
    dependencies:
      - shift
      - doctest