packages feed

exh-1.0.0: exh.cabal

cabal-version:   3.0
name:            exh
version:         1.0.0
synopsis:        A library for crawling exhentai
description:
  A library for crawling exhentai, with the support of streaming

category:        Web
license:         BSD-3-Clause
license-file:    LICENSE
author:          Poscat
maintainer:      Poscat <poscat@mail.poscat.moe>
copyright:       Copyright (c) Poscat 2021
stability:       experimental
homepage:        https://github.com/poscat0x04/exh
bug-reports:     https://github.com/poscat0x04/exh/issues
extra-doc-files:
  CHANGELOG.md
  README.md

common common-attrs
  build-depends:
    , aeson                >=1.4.7   && <1.6
    , base                 >=4.10    && <5
    , bytestring           >=0.10.12 && <0.12
    , conduit              ^>=1.3.4
    , containers           ^>=0.6.2
    , html-conduit         ^>=1.3.2
    , http-client          >=0.6.4   && <0.8
    , in-other-words
    , language-javascript
    , megaparsec           ^>=9.0
    , optics-core
    , optics-th
    , text                 ^>=1.2.3
    , time                 >=1.9.3   && <1.12
    , transformers
    , xml-conduit          >=1.8.0   && <1.10
    , xml-optics

  default-language:   Haskell2010
  default-extensions:
    NoStarIsType
    BangPatterns
    ConstraintKinds
    DataKinds
    DeriveFoldable
    DeriveFunctor
    DeriveGeneric
    DeriveTraversable
    DuplicateRecordFields
    EmptyCase
    FlexibleContexts
    FlexibleInstances
    FunctionalDependencies
    InstanceSigs
    KindSignatures
    LambdaCase
    MultiWayIf
    OverloadedStrings
    PartialTypeSignatures
    PatternSynonyms
    RecordWildCards
    ScopedTypeVariables
    TupleSections
    TypeApplications
    TypeFamilies
    TypeOperators
    UnicodeSyntax
    ViewPatterns

library
  import:          common-attrs
  build-depends:
  exposed-modules:
    Web.Exhentai
    Web.Exhentai.API.Archiver
    Web.Exhentai.API.Auth
    Web.Exhentai.API.Gallery
    Web.Exhentai.API.MPV
    Web.Exhentai.API.Search
    Web.Exhentai.API.Watched
    Web.Exhentai.Parsing.Gallery
    Web.Exhentai.Parsing.Image
    Web.Exhentai.Parsing.Search
    Web.Exhentai.Utils

  other-modules:
    Control.Effect.Exh
    Language.JavaScript.Extraction
    Web.Exhentai.Errors

  hs-source-dirs:  src

test-suite exh-test
  import:         common-attrs
  type:           exitcode-stdio-1.0
  build-depends:
    , exh
    , hspec
    , http-client-tls

  hs-source-dirs: test
  main-is:        Spec.hs

source-repository head
  type:     git
  location: https://github.com/poscat0x04/exh