packages feed

haskell-google-genai-client-0.1.0: haskell-google-genai-client.cabal

cabal-version:      3.0
name:               haskell-google-genai-client
version:            0.1.0
synopsis:           Auto-generated Gemini API Client for Haskell
description:
  Unofficial Haskell client for Google GenAI API, including Gemini.

  This library is auto-generated from the OpenAPI specification, using <https://openapi-generator.tech/ openapi-generator>.

  Google API reference: <https://ai.google.dev/api>

category:           API
homepage:
  https://github.com/sonowz/haskell-google-genai-client#readme

bug-reports:
  https://github.com/sonowz/haskell-google-genai-client/issues

author:             SoonHo Seo
maintainer:         dnsdhrj123@gmail.com
copyright:          2025 Sonowz
license:            MIT
license-file:       LICENSE
build-type:         Simple
extra-source-files:
  openapi.yaml
  README.md

source-repository head
  type:     git
  location: https://github.com/sonowz/haskell-google-genai-client

flag UseKatip
  description:
    Use the katip package to provide logging (if false, use the default monad-logger package)

  default:     False
  manual:      True

library
  hs-source-dirs:   lib
  ghc-options:      -Wall -funbox-strict-fields
  build-depends:
    , aeson                 >=2.0     && <3
    , base                  >=4.16    && <5
    , base64-bytestring     >=1.0.0   && <2
    , bytestring            >=0.11.0  && <1
    , case-insensitive      >=1.2     && <2
    , containers            >=0.6     && <0.8
    , deepseq               >=1.4     && <1.6
    , exceptions            >=0.10    && <1
    , http-api-data         >=0.4     && <0.7
    , http-client           >=0.7     && <0.8
    , http-client-tls       >=0.3     && <1
    , http-media            >=0.8     && <0.9
    , http-types            >=0.12    && <0.13
    , iso8601-time          >=0.1.3   && <0.2
    , microlens             >=0.4.3   && <1
    , mtl                   >=2.2.1   && <3
    , network               >=3.0     && <3.9
    , random                >=1.1     && <2
    , safe-exceptions       >=0.1     && <0.2
    , text                  >=1.2     && <3
    , time                  >=1.5     && <2
    , transformers          >=0.5.0.0 && <1
    , unordered-containers  >=0.2     && <1
    , vector                >=0.12    && <0.14

  other-modules:    Paths_haskell_google_genai_client
  autogen-modules:  Paths_haskell_google_genai_client
  exposed-modules:
    GenAI.Client
    GenAI.Client.API
    GenAI.Client.API.Generativelanguage
    GenAI.Client.Client
    GenAI.Client.Core
    GenAI.Client.Logging
    GenAI.Client.MimeTypes
    GenAI.Client.Model
    GenAI.Client.ModelLens

  default-language: GHC2021

  if flag(usekatip)
    build-depends: katip >=0.8 && <1.0
    other-modules: GenAI.Client.LoggingKatip
    cpp-options:   -DUSE_KATIP

  else
    build-depends: monad-logger >=0.3 && <0.4
    other-modules: GenAI.Client.LoggingMonadLogger
    cpp-options:   -DUSE_MONAD_LOGGER

test-suite tests
  type:             exitcode-stdio-1.0
  main-is:          Test.hs
  hs-source-dirs:   tests
  ghc-options:      -Wall -fno-warn-orphans
  build-depends:
    , aeson
    , base
    , bytestring
    , containers
    , haskell-google-genai-client
    , hspec
    , iso8601-time
    , mtl
    , QuickCheck
    , semigroups
    , text
    , time
    , transformers
    , unordered-containers
    , vector

  other-modules:
    ApproxEq
    Instances
    PropMime

  default-language: GHC2021