packages feed

distributed-process 0.7.6 → 0.7.7

raw patch · 11 files changed

+85/−126 lines, 11 filesdep −old-localedep ~basedep ~binarydep ~bytestringsetup-changednew-uploaderPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies removed: old-locale

Dependency ranges changed: base, binary, bytestring, containers, deepseq, exceptions, hashable, network-transport-tcp, random, time

API changes (from Hackage documentation)

- Control.Distributed.Process: catchExit :: (Show a, Serializable a) => Process b -> (ProcessId -> a -> Process b) -> Process b
+ Control.Distributed.Process: catchExit :: forall a b. (Show a, Serializable a) => Process b -> (ProcessId -> a -> Process b) -> Process b
- Control.Distributed.Process: data Closure a
+ Control.Distributed.Process: data () => Closure a
- Control.Distributed.Process: data RemoteTable
+ Control.Distributed.Process: data () => RemoteTable
- Control.Distributed.Process: data Static a
+ Control.Distributed.Process: data () => Static a
- Control.Distributed.Process: expect :: Serializable a => Process a
+ Control.Distributed.Process: expect :: forall a. Serializable a => Process a
- Control.Distributed.Process: expectTimeout :: Serializable a => Int -> Process (Maybe a)
+ Control.Distributed.Process: expectTimeout :: forall a. Serializable a => Int -> Process (Maybe a)
- Control.Distributed.Process: handleMessage :: (Monad m, Serializable a) => Message -> (a -> m b) -> m (Maybe b)
+ Control.Distributed.Process: handleMessage :: forall m a b. (Monad m, Serializable a) => Message -> (a -> m b) -> m (Maybe b)
- Control.Distributed.Process: handleMessageIf :: (Monad m, Serializable a) => Message -> (a -> Bool) -> (a -> m b) -> m (Maybe b)
+ Control.Distributed.Process: handleMessageIf :: forall m a b. (Monad m, Serializable a) => Message -> (a -> Bool) -> (a -> m b) -> m (Maybe b)
- Control.Distributed.Process: handleMessageIf_ :: (Monad m, Serializable a) => Message -> (a -> Bool) -> (a -> m ()) -> m ()
+ Control.Distributed.Process: handleMessageIf_ :: forall m a. (Monad m, Serializable a) => Message -> (a -> Bool) -> (a -> m ()) -> m ()
- Control.Distributed.Process: handleMessage_ :: (Monad m, Serializable a) => Message -> (a -> m ()) -> m ()
+ Control.Distributed.Process: handleMessage_ :: forall m a. (Monad m, Serializable a) => Message -> (a -> m ()) -> m ()
- Control.Distributed.Process: mask :: ((forall a. () => Process a -> Process a) -> Process b) -> Process b
+ Control.Distributed.Process: mask :: ((forall a. Process a -> Process a) -> Process b) -> Process b
- Control.Distributed.Process: match :: Serializable a => (a -> Process b) -> Match b
+ Control.Distributed.Process: match :: forall a b. Serializable a => (a -> Process b) -> Match b
- Control.Distributed.Process: matchAny :: (Message -> Process b) -> Match b
+ Control.Distributed.Process: matchAny :: forall b. (Message -> Process b) -> Match b
- Control.Distributed.Process: matchAnyIf :: Serializable a => (a -> Bool) -> (Message -> Process b) -> Match b
+ Control.Distributed.Process: matchAnyIf :: forall a b. Serializable a => (a -> Bool) -> (Message -> Process b) -> Match b
- Control.Distributed.Process: matchIf :: Serializable a => (a -> Bool) -> (a -> Process b) -> Match b
+ Control.Distributed.Process: matchIf :: forall a b. Serializable a => (a -> Bool) -> (a -> Process b) -> Match b
- Control.Distributed.Process: monitorPort :: Serializable a => SendPort a -> Process MonitorRef
+ Control.Distributed.Process: monitorPort :: forall a. Serializable a => SendPort a -> Process MonitorRef
- Control.Distributed.Process: spawnChannel :: Serializable a => Static (SerializableDict a) -> NodeId -> Closure (ReceivePort a -> Process ()) -> Process (SendPort a)
+ Control.Distributed.Process: spawnChannel :: forall a. Serializable a => Static (SerializableDict a) -> NodeId -> Closure (ReceivePort a -> Process ()) -> Process (SendPort a)
- Control.Distributed.Process: unwrapMessage :: (Monad m, Serializable a) => Message -> m (Maybe a)
+ Control.Distributed.Process: unwrapMessage :: forall m a. (Monad m, Serializable a) => Message -> m (Maybe a)
- Control.Distributed.Process.Closure: [SerializableDict] :: forall a. Serializable a => SerializableDict a
+ Control.Distributed.Process.Closure: [SerializableDict] :: Serializable a => SerializableDict a
- Control.Distributed.Process.Closure: bindCP :: (Typeable a, Typeable b) => Closure (Process a) -> CP a b -> Closure (Process b)
+ Control.Distributed.Process.Closure: bindCP :: forall a b. (Typeable a, Typeable b) => Closure (Process a) -> CP a b -> Closure (Process b)
- Control.Distributed.Process.Closure: call' :: Serializable a => NodeId -> Closure (Process a) -> Process a
+ Control.Distributed.Process.Closure: call' :: forall a. Serializable a => NodeId -> Closure (Process a) -> Process a
- Control.Distributed.Process.Closure: cpSend :: Typeable a => Static (SerializableDict a) -> ProcessId -> CP a ()
+ Control.Distributed.Process.Closure: cpSend :: forall a. Typeable a => Static (SerializableDict a) -> ProcessId -> CP a ()
- Control.Distributed.Process.Closure: mkClosureValSingle :: (Serializable a, Typeable b, MkTDict b) => String -> (a -> b) -> (a -> Closure b, RemoteRegister)
+ Control.Distributed.Process.Closure: mkClosureValSingle :: forall a b. (Serializable a, Typeable b, MkTDict b) => String -> (a -> b) -> (a -> Closure b, RemoteRegister)
- Control.Distributed.Process.Closure: returnCP :: Serializable a => Static (SerializableDict a) -> a -> Closure (Process a)
+ Control.Distributed.Process.Closure: returnCP :: forall a. Serializable a => Static (SerializableDict a) -> a -> Closure (Process a)
- Control.Distributed.Process.Closure: type CP a b = Closure a -> Process b
+ Control.Distributed.Process.Closure: type CP a b = Closure (a -> Process b)
- Control.Distributed.Process.Debug: withFlags :: TraceFlags -> Process a -> Process (Either SomeException a)
+ Control.Distributed.Process.Debug: withFlags :: forall a. TraceFlags -> Process a -> Process (Either SomeException a)
- Control.Distributed.Process.Debug: withTracer :: (MxEvent -> Process ()) -> Process a -> Process (Either SomeException a)
+ Control.Distributed.Process.Debug: withTracer :: forall a. (MxEvent -> Process ()) -> Process a -> Process (Either SomeException a)
- Control.Distributed.Process.Internal.CQueue: dequeue :: CQueue m -> BlockSpec -> [MatchOn m a] -> IO (Maybe a)
+ Control.Distributed.Process.Internal.CQueue: dequeue :: forall m a. CQueue m -> BlockSpec -> [MatchOn m a] -> IO (Maybe a)
- Control.Distributed.Process.Internal.Closure.BuiltIn: bindCP :: (Typeable a, Typeable b) => Closure (Process a) -> CP a b -> Closure (Process b)
+ Control.Distributed.Process.Internal.Closure.BuiltIn: bindCP :: forall a b. (Typeable a, Typeable b) => Closure (Process a) -> CP a b -> Closure (Process b)
- Control.Distributed.Process.Internal.Closure.BuiltIn: cpSend :: Typeable a => Static (SerializableDict a) -> ProcessId -> CP a ()
+ Control.Distributed.Process.Internal.Closure.BuiltIn: cpSend :: forall a. Typeable a => Static (SerializableDict a) -> ProcessId -> CP a ()
- Control.Distributed.Process.Internal.Closure.BuiltIn: returnCP :: Serializable a => Static (SerializableDict a) -> a -> Closure (Process a)
+ Control.Distributed.Process.Internal.Closure.BuiltIn: returnCP :: forall a. Serializable a => Static (SerializableDict a) -> a -> Closure (Process a)
- Control.Distributed.Process.Internal.Closure.BuiltIn: type CP a b = Closure a -> Process b
+ Control.Distributed.Process.Internal.Closure.BuiltIn: type CP a b = Closure (a -> Process b)
- Control.Distributed.Process.Internal.Closure.Explicit: call' :: Serializable a => NodeId -> Closure (Process a) -> Process a
+ Control.Distributed.Process.Internal.Closure.Explicit: call' :: forall a. Serializable a => NodeId -> Closure (Process a) -> Process a
- Control.Distributed.Process.Internal.Closure.Explicit: mkClosureValSingle :: (Serializable a, Typeable b, MkTDict b) => String -> (a -> b) -> (a -> Closure b, RemoteRegister)
+ Control.Distributed.Process.Internal.Closure.Explicit: mkClosureValSingle :: forall a b. (Serializable a, Typeable b, MkTDict b) => String -> (a -> b) -> (a -> Closure b, RemoteRegister)
- Control.Distributed.Process.Internal.Primitives: catchExit :: (Show a, Serializable a) => Process b -> (ProcessId -> a -> Process b) -> Process b
+ Control.Distributed.Process.Internal.Primitives: catchExit :: forall a b. (Show a, Serializable a) => Process b -> (ProcessId -> a -> Process b) -> Process b
- Control.Distributed.Process.Internal.Primitives: expect :: Serializable a => Process a
+ Control.Distributed.Process.Internal.Primitives: expect :: forall a. Serializable a => Process a
- Control.Distributed.Process.Internal.Primitives: expectTimeout :: Serializable a => Int -> Process (Maybe a)
+ Control.Distributed.Process.Internal.Primitives: expectTimeout :: forall a. Serializable a => Int -> Process (Maybe a)
- Control.Distributed.Process.Internal.Primitives: handleMessage :: (Monad m, Serializable a) => Message -> (a -> m b) -> m (Maybe b)
+ Control.Distributed.Process.Internal.Primitives: handleMessage :: forall m a b. (Monad m, Serializable a) => Message -> (a -> m b) -> m (Maybe b)
- Control.Distributed.Process.Internal.Primitives: handleMessageIf :: (Monad m, Serializable a) => Message -> (a -> Bool) -> (a -> m b) -> m (Maybe b)
+ Control.Distributed.Process.Internal.Primitives: handleMessageIf :: forall m a b. (Monad m, Serializable a) => Message -> (a -> Bool) -> (a -> m b) -> m (Maybe b)
- Control.Distributed.Process.Internal.Primitives: handleMessageIf_ :: (Monad m, Serializable a) => Message -> (a -> Bool) -> (a -> m ()) -> m ()
+ Control.Distributed.Process.Internal.Primitives: handleMessageIf_ :: forall m a. (Monad m, Serializable a) => Message -> (a -> Bool) -> (a -> m ()) -> m ()
- Control.Distributed.Process.Internal.Primitives: handleMessage_ :: (Monad m, Serializable a) => Message -> (a -> m ()) -> m ()
+ Control.Distributed.Process.Internal.Primitives: handleMessage_ :: forall m a. (Monad m, Serializable a) => Message -> (a -> m ()) -> m ()
- Control.Distributed.Process.Internal.Primitives: mask :: ((forall a. () => Process a -> Process a) -> Process b) -> Process b
+ Control.Distributed.Process.Internal.Primitives: mask :: ((forall a. Process a -> Process a) -> Process b) -> Process b
- Control.Distributed.Process.Internal.Primitives: match :: Serializable a => (a -> Process b) -> Match b
+ Control.Distributed.Process.Internal.Primitives: match :: forall a b. Serializable a => (a -> Process b) -> Match b
- Control.Distributed.Process.Internal.Primitives: matchAny :: (Message -> Process b) -> Match b
+ Control.Distributed.Process.Internal.Primitives: matchAny :: forall b. (Message -> Process b) -> Match b
- Control.Distributed.Process.Internal.Primitives: matchAnyIf :: Serializable a => (a -> Bool) -> (Message -> Process b) -> Match b
+ Control.Distributed.Process.Internal.Primitives: matchAnyIf :: forall a b. Serializable a => (a -> Bool) -> (Message -> Process b) -> Match b
- Control.Distributed.Process.Internal.Primitives: matchIf :: Serializable a => (a -> Bool) -> (a -> Process b) -> Match b
+ Control.Distributed.Process.Internal.Primitives: matchIf :: forall a b. Serializable a => (a -> Bool) -> (a -> Process b) -> Match b
- Control.Distributed.Process.Internal.Primitives: monitorPort :: Serializable a => SendPort a -> Process MonitorRef
+ Control.Distributed.Process.Internal.Primitives: monitorPort :: forall a. Serializable a => SendPort a -> Process MonitorRef
- Control.Distributed.Process.Internal.Primitives: unwrapMessage :: (Monad m, Serializable a) => Message -> m (Maybe a)
+ Control.Distributed.Process.Internal.Primitives: unwrapMessage :: forall m a. (Monad m, Serializable a) => Message -> m (Maybe a)
- Control.Distributed.Process.Internal.Spawn: spawnChannel :: Serializable a => Static (SerializableDict a) -> NodeId -> Closure (ReceivePort a -> Process ()) -> Process (SendPort a)
+ Control.Distributed.Process.Internal.Spawn: spawnChannel :: forall a. Serializable a => Static (SerializableDict a) -> NodeId -> Closure (ReceivePort a -> Process ()) -> Process (SendPort a)
- Control.Distributed.Process.Management: mxDeactivate :: String -> MxAgent s MxAction
+ Control.Distributed.Process.Management: mxDeactivate :: forall s. String -> MxAgent s MxAction
- Control.Distributed.Process.Management: mxReady :: MxAgent s MxAction
+ Control.Distributed.Process.Management: mxReady :: forall s. MxAgent s MxAction
- Control.Distributed.Process.Management: mxReceive :: MxAgent s MxAction
+ Control.Distributed.Process.Management: mxReceive :: forall s. MxAgent s MxAction
- Control.Distributed.Process.Management: mxReceiveChan :: MxAgent s MxAction
+ Control.Distributed.Process.Management: mxReceiveChan :: forall s. MxAgent s MxAction
- Control.Distributed.Process.Management: mxSkip :: MxAgent s MxAction
+ Control.Distributed.Process.Management: mxSkip :: forall s. MxAgent s MxAction
- Control.Distributed.Process.Management: type MxSink s = Message -> MxAgent s Maybe MxAction
+ Control.Distributed.Process.Management: type MxSink s = Message -> MxAgent s (Maybe MxAction)
- Control.Distributed.Process.Management.Internal.Agent: type AgentConfig = (Tracer, Weak CQueue Message, (TChan Message, TChan Message) -> Process () -> IO ProcessId)
+ Control.Distributed.Process.Management.Internal.Agent: type AgentConfig = (Tracer, Weak (CQueue Message), (((TChan Message, TChan Message) -> Process ()) -> IO ProcessId))
- Control.Distributed.Process.Management.Internal.Types: type Fork = Process () -> IO ProcessId
+ Control.Distributed.Process.Management.Internal.Types: type Fork = (Process () -> IO ProcessId)
- Control.Distributed.Process.Management.Internal.Types: type MxSink s = Message -> MxAgent s Maybe MxAction
+ Control.Distributed.Process.Management.Internal.Types: type MxSink s = Message -> MxAgent s (Maybe MxAction)
- Control.Distributed.Process.Serializable: [SerializableDict] :: forall a. Serializable a => SerializableDict a
+ Control.Distributed.Process.Serializable: [SerializableDict] :: Serializable a => SerializableDict a
- Control.Distributed.Process.Serializable: [TypeableDict] :: forall a. Typeable a => TypeableDict a
+ Control.Distributed.Process.Serializable: [TypeableDict] :: Typeable a => TypeableDict a
- Control.Distributed.Process.Serializable: data Fingerprint
+ Control.Distributed.Process.Serializable: data () => Fingerprint

Files

ChangeLog view
@@ -1,3 +1,8 @@+2024-09-03 Laurent P. René de Cotret <laurent.decotret@outlook.com> 0.7.7++* Bumped dependency bounds to support GHC 8.10.7 - GHC 9.10.1+* Updated links to point to Distributed Haskell monorepo+ 2024-04-03 David Simmons-Duffin <dsd@caltech.edu> 0.7.6  * Bumped hashable upper bound.
− Setup.hs
@@ -1,2 +0,0 @@-import Distribution.Simple-main = defaultMain
distributed-process.cabal view
@@ -1,90 +1,95 @@+cabal-version: 3.0 Name:          distributed-process-Version:       0.7.6-Cabal-Version: >=1.10+Version:       0.7.7 Build-Type:    Simple-License:       BSD3+License:       BSD-3-Clause License-File:  LICENSE Copyright:     Well-Typed LLP, Tweag I/O Limited Author:        Duncan Coutts, Nicolas Wu, Edsko de Vries-Maintainer:    Tim Watson <watson.timothy@gmail.com>+maintainer:    The Distributed Haskell team Stability:     experimental-Homepage:      http://haskell-distributed.github.com/+Homepage:      https://haskell-distributed.github.io/ Bug-Reports:   https://github.com/haskell-distributed/distributed-process/issues Synopsis:      Cloud Haskell: Erlang-style concurrency in Haskell Description:   This is an implementation of Cloud Haskell, as described in                /Towards Haskell in the Cloud/ by Jeff Epstein, Andrew Black,                and Simon Peyton Jones-               (<http://research.microsoft.com/en-us/um/people/simonpj/papers/parallel/>),+               (<https://simon.peytonjones.org/haskell-cloud/>),                although some of the details are different. The precise message                passing semantics are based on /A unified semantics for future Erlang/                by Hans Svensson, Lars-&#xc5;ke Fredlund and Clara Benac Earle.                 You will probably also want to install a Cloud Haskell backend such                as distributed-process-simplelocalnet.-Tested-With:   GHC==7.10.3 GHC==8.0.2 GHC==8.2.2 GHC==8.4.4+tested-with:   GHC==8.10.7 GHC==9.0.2 GHC==9.2.8 GHC==9.4.5 GHC==9.6.4 GHC==9.8.2 GHC==9.10.1 Category:      Control-extra-source-files: ChangeLog+extra-doc-files: ChangeLog -Source-Repository head+common warnings+    ghc-options: -Wall+                 -Wcompat+                 -Widentities+                 -Wincomplete-uni-patterns+                 -Wincomplete-record-updates+                 -Wredundant-constraints+                 -fhide-source-paths+                 -Wpartial-fields++source-repository head   Type:     git   Location: https://github.com/haskell-distributed/distributed-process-  SubDir:   distributed-process+  SubDir:   packages/distributed-process  flag th   description: Build with Template Haskell support   default: True -flag old-locale- description: If false then depend on time >= 1.5.-              .-              If true then depend on time < 1.5 together with old-locale.- default: False- Library-  Build-Depends:     base >= 4.9 && < 5,-                     binary >= 0.6.3 && < 0.10,-                     hashable >= 1.2.0.5 && < 1.5,+  import:            warnings+  Build-Depends:     base >= 4.14 && < 5,+                     binary >= 0.8 && < 0.10,+                     hashable >= 1.2.0.5 && < 1.6,                      network-transport >= 0.4.1.0 && < 0.6,                      stm >= 2.4 && < 2.6,                      transformers >= 0.2 && < 0.7,                      mtl >= 2.0 && < 2.4,                      data-accessor >= 0.2 && < 0.3,-                     bytestring >= 0.9 && < 0.13,+                     bytestring >= 0.10 && < 0.13,                      random >= 1.0 && < 1.3,                      distributed-static >= 0.2 && < 0.4,                      rank1dynamic >= 0.1 && < 0.5,                      syb >= 0.3 && < 0.8,-                     exceptions >= 0.5,-                     containers >= 0.5 && < 0.7,-                     deepseq >= 1.3.0.1 && < 1.6-  Exposed-modules:   Control.Distributed.Process,-                     Control.Distributed.Process.Closure,-                     Control.Distributed.Process.Debug,-                     Control.Distributed.Process.Internal.BiMultiMap,-                     Control.Distributed.Process.Internal.Closure.BuiltIn,-                     Control.Distributed.Process.Internal.Closure.Explicit,-                     Control.Distributed.Process.Internal.CQueue,-                     Control.Distributed.Process.Internal.Messaging,-                     Control.Distributed.Process.Internal.Primitives,-                     Control.Distributed.Process.Internal.Spawn,-                     Control.Distributed.Process.Internal.StrictContainerAccessors,-                     Control.Distributed.Process.Internal.StrictList,-                     Control.Distributed.Process.Internal.StrictMVar,-                     Control.Distributed.Process.Internal.Types,-                     Control.Distributed.Process.Internal.WeakTQueue,-                     Control.Distributed.Process.Management,-                     Control.Distributed.Process.Node,-                     Control.Distributed.Process.Serializable,+                     exceptions >= 0.10,+                     containers >= 0.6 && < 0.8,+                     deepseq >= 1.4 && < 1.6,+                     time >= 1.9+  Exposed-modules:   Control.Distributed.Process+                     Control.Distributed.Process.Closure+                     Control.Distributed.Process.Debug+                     Control.Distributed.Process.Internal.BiMultiMap+                     Control.Distributed.Process.Internal.Closure.BuiltIn+                     Control.Distributed.Process.Internal.Closure.Explicit+                     Control.Distributed.Process.Internal.CQueue+                     Control.Distributed.Process.Internal.Messaging+                     Control.Distributed.Process.Internal.Primitives+                     Control.Distributed.Process.Internal.Spawn+                     Control.Distributed.Process.Internal.StrictContainerAccessors+                     Control.Distributed.Process.Internal.StrictList+                     Control.Distributed.Process.Internal.StrictMVar+                     Control.Distributed.Process.Internal.Types+                     Control.Distributed.Process.Internal.WeakTQueue+                     Control.Distributed.Process.Management+                     Control.Distributed.Process.Node+                     Control.Distributed.Process.Serializable                      Control.Distributed.Process.UnsafePrimitives-                     Control.Distributed.Process.Management.Internal.Agent,-                     Control.Distributed.Process.Management.Internal.Bus,-                     Control.Distributed.Process.Management.Internal.Types,-                     Control.Distributed.Process.Management.Internal.Trace.Primitives,-                     Control.Distributed.Process.Management.Internal.Trace.Remote,-                     Control.Distributed.Process.Management.Internal.Trace.Types,+                     Control.Distributed.Process.Management.Internal.Agent+                     Control.Distributed.Process.Management.Internal.Bus+                     Control.Distributed.Process.Management.Internal.Types+                     Control.Distributed.Process.Management.Internal.Trace.Primitives+                     Control.Distributed.Process.Management.Internal.Trace.Remote+                     Control.Distributed.Process.Management.Internal.Trace.Types                      Control.Distributed.Process.Management.Internal.Trace.Tracer   default-language:  Haskell2010-  ghc-options:       -Wall   HS-Source-Dirs:    src   other-extensions:  BangPatterns                      CPP@@ -106,10 +111,6 @@                      TypeSynonymInstances                      UnboxedTuples                      UndecidableInstances-  if flag(old-locale)-     Build-Depends:   time < 1.5, old-locale >= 1.0 && <1.1-  else-     Build-Depends:   time >= 1.5   if flag(th)      other-extensions: TemplateHaskell      Build-Depends: template-haskell >= 2.6@@ -119,56 +120,57 @@ -- Tests are in distributed-process-test package, for convenience.  benchmark distributed-process-throughput+  import:           warnings   Type:             exitcode-stdio-1.0-  Build-Depends:    base >= 4.9 && < 5,+  Build-Depends:    base >= 4.14 && < 5,                     distributed-process,-                    network-transport-tcp >= 0.3 && <= 0.81,-                    bytestring >= 0.9 && < 0.13,-                    binary >= 0.6.3 && < 0.10+                    network-transport-tcp >= 0.3 && <= 0.9,+                    bytestring >= 0.10 && < 0.13,+                    binary >= 0.8 && < 0.10   Main-Is:          benchmarks/Throughput.hs   default-language: Haskell2010-  ghc-options:      -Wall  benchmark distributed-process-latency+  import:           warnings   Type:             exitcode-stdio-1.0-  Build-Depends:    base >= 4.9 && < 5,+  Build-Depends:    base >= 4.14 && < 5,                     distributed-process,-                    network-transport-tcp >= 0.3 && <= 0.81,-                    bytestring >= 0.9 && < 0.13,-                    binary >= 0.6.3 && < 0.10+                    network-transport-tcp >= 0.3 && <= 0.9,+                    bytestring >= 0.10 && < 0.13,+                    binary >= 0.8 && < 0.10   Main-Is:          benchmarks/Latency.hs   default-language: Haskell2010-  ghc-options:      -Wall  benchmark distributed-process-channels+  import:           warnings   Type:             exitcode-stdio-1.0-  Build-Depends:    base >= 4.9 && < 5,+  Build-Depends:    base >= 4.14 && < 5,                     distributed-process,-                    network-transport-tcp >= 0.3 && <= 0.81,-                    bytestring >= 0.9 && < 0.13,-                    binary >= 0.6.3 && < 0.10+                    network-transport-tcp >= 0.3 && <= 0.9,+                    bytestring >= 0.10 && < 0.13,+                    binary >= 0.8 && < 0.10   Main-Is:          benchmarks/Channels.hs   default-language: Haskell2010-  ghc-options:      -Wall  benchmark distributed-process-spawns+  import:           warnings   Type:             exitcode-stdio-1.0-  Build-Depends:    base >= 4.9 && < 5,+  Build-Depends:    base >= 4.14 && < 5,                     distributed-process,-                    network-transport-tcp >= 0.3 && <= 0.81,-                    bytestring >= 0.9 && < 0.13,-                    binary >= 0.6.3 && < 0.10+                    network-transport-tcp >= 0.3 && <= 0.9,+                    bytestring >= 0.10 && < 0.13,+                    binary >= 0.8 && < 0.10   Main-Is:          benchmarks/Spawns.hs   default-language: Haskell2010-  ghc-options:      -Wall  benchmark distributed-process-ring+  import:           warnings   Type:             exitcode-stdio-1.0-  Build-Depends:    base >= 4.9 && < 5,+  Build-Depends:    base >= 4.14 && < 5,                     distributed-process,-                    network-transport-tcp >= 0.3 && <= 0.81,-                    bytestring >= 0.9 && < 0.13,-                    binary >= 0.6.3 && < 0.10+                    network-transport-tcp >= 0.3 && <= 0.9,+                    bytestring >= 0.10 && < 0.13,+                    binary >= 0.8 && < 0.10   Main-Is:          benchmarks/ProcessRing.hs   default-language: Haskell2010-  ghc-options:      -Wall -threaded -O2 -rtsopts+  ghc-options:      -threaded -O2 -rtsopts
src/Control/Distributed/Process.hs view
@@ -322,11 +322,7 @@   ) import qualified Control.Monad.Catch as Catch -#if MIN_VERSION_base(4,6,0) import Prelude-#else-import Prelude hiding (catch)-#endif import qualified Control.Exception as Exception (onException) import Data.Accessor ((^.)) import Data.Foldable (forM_)
src/Control/Distributed/Process/Internal/CQueue.hs view
@@ -288,11 +288,7 @@ -- | Weak reference to a CQueue mkWeakCQueue :: CQueue a -> IO () -> IO (Weak (CQueue a)) mkWeakCQueue m@(CQueue (StrictMVar (MVar m#)) _ _) f = IO $ \s ->-#if MIN_VERSION_base(4,9,0)   case mkWeak# m# m (unIO f) s of (# s1, w #) -> (# s1, Weak w #)-#else-  case mkWeak# m# m f s of (# s1, w #) -> (# s1, Weak w #)-#endif  queueSize :: CQueue a -> IO Int queueSize (CQueue _ _ size) = readTVarIO size
src/Control/Distributed/Process/Internal/Primitives.hs view
@@ -124,19 +124,11 @@   , sendCtrlMsg   ) where -#if ! MIN_VERSION_base(4,6,0)-import Prelude hiding (catch)-#endif- import Data.Binary (Binary(..), Put, Get, decode) import Data.Time.Clock (getCurrentTime, UTCTime(..)) import Data.Time.Calendar (Day(..)) import Data.Time.Format (formatTime)-#if MIN_VERSION_time(1,5,0) import Data.Time.Format (defaultTimeLocale)-#else-import System.Locale (defaultTimeLocale)-#endif import System.Timeout (timeout) import Control.Monad (when, void) import Control.Monad.Reader (ask)
src/Control/Distributed/Process/Internal/StrictMVar.hs view
@@ -71,8 +71,4 @@  mkWeakMVar :: StrictMVar a -> IO () -> IO (Weak (StrictMVar a)) mkWeakMVar q@(StrictMVar (MVar m#)) f = IO $ \s ->-#if MIN_VERSION_base(4,9,0)   case mkWeak# m# q (unIO f) s of (# s', w #) -> (# s', Weak w #)-#else-  case mkWeak# m# q f s of (# s', w #) -> (# s', Weak w #)-#endif
src/Control/Distributed/Process/Internal/Types.hs view
@@ -118,9 +118,6 @@ import Control.Monad.Catch (MonadThrow(..), MonadCatch(..), MonadMask(..)) import qualified Network.Transport as NT (EndPoint, EndPointAddress, Connection) import Control.Applicative-#if !MIN_VERSION_base(4,13,0) && MIN_VERSION_base(4,9,0)-import Control.Monad.Fail (MonadFail)-#endif import Control.Monad.Fix (MonadFix) import Control.Monad.Reader (MonadReader(..), ReaderT, runReaderT) import Control.Monad.IO.Class (MonadIO(..))@@ -356,9 +353,7 @@   deriving ( Applicative            , Functor            , Monad-#if MIN_VERSION_base(4,9,0)            , MonadFail-#endif            , MonadFix            , MonadIO            , MonadReader LocalProcess@@ -372,14 +367,13 @@     lproc <- ask     liftIO $ catch (runLocalProcess lproc p) (runLocalProcess lproc . h) instance MonadMask Process where-#if MIN_VERSION_exceptions(0,10,0)   generalBracket acquire release inner = do     lproc <- ask     liftIO $       generalBracket (runLocalProcess lproc acquire)                      (\a e -> runLocalProcess lproc $ release a e)                      (runLocalProcess lproc . inner)-#endif+   mask p = do       lproc <- ask       liftIO $ mask $ \restore ->@@ -477,11 +471,7 @@   deriving (Typeable)  instance NFData Message where-#if MIN_VERSION_bytestring(0,10,0)   rnf (EncodedMessage _ e) = rnf e `seq` ()-#else-  rnf (EncodedMessage _ e) = BSL.length e `seq` ()-#endif   rnf (UnencodedMessage _ a) = e `seq` ()     where e = BSL.length (encode a) 
src/Control/Distributed/Process/Internal/WeakTQueue.hs view
@@ -100,8 +100,4 @@  mkWeakTQueue :: TQueue a -> IO () -> IO (Weak (TQueue a)) mkWeakTQueue q@(TQueue _read (TVar write#)) f = IO $ \s ->-#if MIN_VERSION_base(4,9,0)   case mkWeak# write# q (unIO f) s of (# s', w #) -> (# s', Weak w #)-#else-  case mkWeak# write# q f s of (# s', w #) -> (# s', Weak w #)-#endif
src/Control/Distributed/Process/Management/Internal/Trace/Tracer.hs view
@@ -77,10 +77,6 @@ import Debug.Trace (traceEventIO) import Prelude -#if ! MIN_VERSION_base(4,6,0)-import Prelude hiding (catch)-#endif- import System.Environment (getEnv) import System.IO   ( Handle@@ -91,11 +87,7 @@   , hPutStrLn   , hSetBuffering   )-#if MIN_VERSION_time(1,5,0) import Data.Time.Format (defaultTimeLocale)-#else-import System.Locale (defaultTimeLocale)-#endif import System.Mem.Weak   ( Weak   )
src/Control/Distributed/Process/Node.hs view
@@ -38,11 +38,7 @@   , foldlWithKey   ) import Data.Time.Format (formatTime)-#if MIN_VERSION_time(1,5,0) import Data.Time.Format (defaultTimeLocale)-#else-import System.Locale (defaultTimeLocale)-#endif import Data.Set (Set) import qualified Data.Set as Set   ( empty