cabal-version: 3.0 name: io-sim version: 1.6.0.0 x-revision: 1 synopsis: A pure simulator for monadic concurrency with STM. description: A pure simulator monad with support of concurrency (base & async style), stm, synchronous and asynchronous exceptions, timeouts & delays, dynamic traces, partial order reduction, and more. license: Apache-2.0 license-files: LICENSE NOTICE copyright: 2022-2024 Input Output Global Inc (IOG) author: Alexander Vieth, Duncan Coutts, John Hughes, Marcin Szamotulski maintainer: Duncan Coutts duncan@well-typed.com, Marcin Szamotulski coot@coot.me category: Testing build-type: Simple extra-doc-files: CHANGELOG.md README.md bug-reports: https://github.com/input-output-hk/io-sim/issues tested-with: GHC == { 8.10, 9.2, 9.4, 9.6, 9.8, 9.10 } flag asserts description: Enable assertions manual: False default: False source-repository head type: git location: https://github.com/input-output-hk/io-sim subdir: io-sim common test-warnings ghc-options: -Wall -Wcompat -Wincomplete-uni-patterns -Widentities -Wunused-packages -Wredundant-constraints -Wno-unticked-promoted-constructors common warnings import: test-warnings ghc-options: -Wincomplete-record-updates -Wpartial-fields library import: warnings hs-source-dirs: src exposed-modules: Data.List.Trace, Control.Monad.IOSim other-modules: Control.Monad.IOSim.CommonTypes, Control.Monad.IOSim.Types, Control.Monad.IOSim.Internal, Control.Monad.IOSim.InternalTypes, Control.Monad.IOSim.STM, Control.Monad.IOSimPOR.Internal, Control.Monad.IOSimPOR.Types, Control.Monad.IOSimPOR.QuickCheckUtils, Control.Monad.IOSimPOR.Timeout, Data.Deque.Strict default-language: Haskell2010 default-extensions: ImportQualifiedPost other-extensions: BangPatterns, CPP, DeriveFunctor, DeriveGeneric, DerivingVia, ExistentialQuantification, ExplicitNamespaces, FlexibleContexts, FlexibleInstances, GADTSyntax, GeneralizedNewtypeDeriving, MultiParamTypeClasses, NamedFieldPuns, NumericUnderscores, RankNTypes, ScopedTypeVariables, TypeFamilies build-depends: base >=4.9 && <4.21, io-classes:{io-classes,strict-stm,si-timers} ^>=1.6 || ^>= 1.7, exceptions >=0.10, containers, deepseq, nothunks, primitive >=0.7 && <0.11, psqueues >=0.2 && <0.3, time >=1.9.1 && <1.13, quiet, QuickCheck, parallel if flag(asserts) ghc-options: -fno-ignore-asserts test-suite test import: test-warnings type: exitcode-stdio-1.0 hs-source-dirs: test main-is: Main.hs other-modules: Test.Control.Concurrent.Class.MonadMVar Test.Control.Concurrent.Class.MonadMVar.Strict Test.Control.Monad.STM Test.Control.Monad.Utils Test.Control.Monad.IOSim Test.Control.Monad.IOSimPOR default-language: Haskell2010 default-extensions: ImportQualifiedPost build-depends: base, array, containers, io-classes:{io-classes,strict-stm,si-timers,testlib}, io-sim, QuickCheck, tasty, tasty-quickcheck, tasty-hunit, time ghc-options: -fno-ignore-asserts -rtsopts if impl(ghc >= 9.8) ghc-options: -Wno-x-partial benchmark bench import: warnings type: exitcode-stdio-1.0 hs-source-dirs: bench main-is: Main.hs default-language: Haskell2010 default-extensions: ImportQualifiedPost build-depends: base, criterion ^>= 1.6, io-classes:io-classes, io-sim, ghc-options: -Wall -Wcompat -Wincomplete-uni-patterns -Wincomplete-record-updates -Wpartial-fields -Widentities -Wredundant-constraints