packages feed

cgroup-rts-threads-0.2.1.0: cgroup-rts-threads.cabal

cabal-version:      3.0
name:               cgroup-rts-threads
version:            0.2.1.0
synopsis:
  A container-/cgroup-aware substitute for the GHC RTS `-N` flag

description:
  This library provides a container-/cgroup-aware substitute for the GHC RTS
  `-N` flag. See the README for details.

homepage:           https://github.com/cnr/cgroup-rts-threads
bug-reports:        https://github.com/cnr/cgroup-rts-threads/issues
license:            MPL-2.0
license-file:       LICENSE
category:           Concurrency
author:             Connor James
maintainer:         connornjames@gmail.com
extra-source-files:
  CHANGELOG.md
  README.md

source-repository head
  type:     git
  location: https://github.com/cnr/cgroup-rts-threads.git

common lang
  default-language:   Haskell2010
  default-extensions:
    OverloadedStrings
    ScopedTypeVariables

  ghc-options:
    -Wall -Wincomplete-uni-patterns -Wcompat
    -Wincomplete-record-updates -Wmissing-home-modules
    -Wmissing-export-lists -Wredundant-constraints

library
  import:          lang

  -- cabal-fmt: expand src
  exposed-modules:
    Control.Concurrent.CGroup
    System.CGroup.Types
    System.CGroup.V1.CPU
    System.CGroup.V1.Controller
    System.CGroup.V2.CGroup
    System.CGroup.V2.CPU

  build-depends:
    , base        >=4.13    && <5
    , directory   ^>=1.3.4.0
    , megaparsec  >=8       && <10
    , path        >=0.7     && <0.10
    , text

  hs-source-dirs:  src

test-suite test
  import:         lang
  type:           exitcode-stdio-1.0
  hs-source-dirs: test
  main-is:        Main.hs
  other-modules:
    System.CGroup.V1.CPUSpec
    System.CGroup.V1.ControllerSpec
    System.CGroup.V2.CGroupSpec
    System.CGroup.V2.CPUSpec

  build-depends:
    , base
    , cgroup-rts-threads
    , hspec-core          ^>=2.8.3
    , hspec-expectations  ^>=0.8.2
    , path
    , path-io