packages feed

ki-1.0.1.2: ki.cabal

cabal-version: 2.2

author: Mitchell Dalvi Rosen, Travis Staton
bug-reports: https://github.com/awkward-squad/ki/issues
category: Concurrency
copyright: Copyright (C) 2020-2024 Mitchell Dalvi Rosen, Travis Staton
homepage: https://github.com/awkward-squad/ki
license: BSD-3-Clause
license-file: LICENSE
maintainer: Mitchell Dalvi Rosen <mitchellwrosen@gmail.com>, Travis Staton <hello@travisstaton.com>
name: ki
stability: stable
synopsis: A lightweight structured concurrency library
tested-with: GHC == 9.6.5, GHC == 9.8.2, GHC == 9.10.1
version: 1.0.1.2

description:
  A lightweight structured concurrency library.
  .
  For a variant of this API generalized to
  @<https://hackage.haskell.org/package/unliftio-core/docs/Control-Monad-IO-Unlift.html#t:MonadUnliftIO MonadUnliftIO>@,
  see @<https://hackage.haskell.org/package/ki-unlifted ki-unlifted>@.
  .
  Remember to link your program with @-threaded@ to use the threaded runtime!

extra-doc-files:
  CHANGELOG.md
  README.md

source-repository head
  type: git
  location: https://github.com/awkward-squad/ki.git
  subdir: ki

common component
  build-depends:
    base ^>= 4.12 || ^>= 4.13 || ^>= 4.14 || ^>= 4.15 || ^>= 4.16 || ^>= 4.17 || ^>= 4.18 || ^>= 4.19 || ^>= 4.20,
  default-extensions:
    AllowAmbiguousTypes
    BangPatterns
    BlockArguments
    ConstraintKinds
    DeriveAnyClass
    DeriveDataTypeable
    DeriveFunctor
    DeriveGeneric
    DerivingStrategies
    DuplicateRecordFields
    ExistentialQuantification
    GeneralizedNewtypeDeriving
    InstanceSigs
    LambdaCase
    NamedFieldPuns
    NumericUnderscores
    PartialTypeSignatures
    PatternSynonyms
    RankNTypes
    RoleAnnotations
    ScopedTypeVariables
    TypeApplications
    ViewPatterns
  default-language: Haskell2010
  ghc-options:
    -Weverything
    -Wno-all-missed-specialisations
    -Wno-implicit-prelude
    -Wno-missed-specialisations
    -Wno-missing-import-lists
    -Wno-safe
    -Wno-unsafe
  if impl(ghc >= 8.10)
    ghc-options:
      -Wno-missing-safe-haskell-mode
      -Wno-prepositive-qualified-module
  if impl(ghc >= 9.2)
    ghc-options:
      -Wno-missing-kind-signatures
  if impl(ghc >= 9.8)
    ghc-options:
      -Wno-missing-role-annotations

library
  import: component
  build-depends:
    containers ^>= 0.6 || ^>= 0.7,
    int-supply ^>= 1.0.0,
  exposed-modules:
    Ki
  hs-source-dirs: src
  other-modules:
    Ki.Internal.ByteCount
    Ki.Internal.IO
    Ki.Internal.NonblockingSTM
    Ki.Internal.Propagating
    Ki.Internal.Scope
    Ki.Internal.Thread
    Ki.Internal.ThreadAffinity
    Ki.Internal.ThreadOptions

test-suite tests
  import: component
  build-depends:
    ki,
    stm ^>= 2.5,
    tasty ^>= 1.4.2 || ^>= 1.5,
    tasty-hunit ^>= 0.10,
  ghc-options: -rtsopts -threaded
  hs-source-dirs: test
  main-is: Tests.hs
  type: exitcode-stdio-1.0