Changelog of @hackage/distributed-process 0.6.1

2016-03-03 Facundo Domínguez facundo.dominguez@tweag.io 0.6.1

  • Implement MonadCatch, MonadThrow, MonadMask for Process.

2016-02-18 Facundo Domínguez facundo.dominguez@tweag.io 0.6.0

  • Have nsendRemote skip the transport for local communication.
  • Unsafe primitives for usend and nsendRemote.
  • Stop using the transport for local communication.
  • Skip the transport for whereisRemoteAsync and registerRemoteAsync.
  • Have nsendRemote skip the transport for local communication.
  • Have runProcess forward exceptions.
  • Reimport distributed-process-tests. d-p and d-p-test now can be kept in sync.
  • Add a stack.yaml file for building tests and d-p all at once conveniently.
  • Implement unreliable forward (uforward).
  • Add Functor instance for Match data type
  • Have spawnAsync not use the transport in the local case.
  • Fix monitor race in 'call'.
  • Add compatibility with ghc-7.10: support new typeable, loosen deps, write proper NFData instances, support new TH.
  • Kill processes on a local node upon closeLocalNode.
  • Fix getNodeStats function, see DP-97
  • Return size of the queue in ProcessInfo.
  • Implement unreliable send (usend).
  • Implement MonadFix instance for Process.
  • Introduce callLocal primitive.
  • Prevent message loss due to timeouts in CQueue.
  • More informative ProcessRegistrationException. Now includes the identifier of the process that owns the name, if any.
  • Avoid message loop between threads when tracing received messages.

2015-06-15 Facundo Domínguez facundo.dominguez@tweag.io 0.5.5

  • Fix dependencies.
  • Add compatibility with GHC-7.10.
  • Fix various race conditions (DP-99, DP-103).

2014-12-09 Tim Watson watson.timothy@gmail.com 0.5.2

  • Fix docstring for register
  • Added Data instance to ProcessId, LocalProcessId and NodeId
  • Add static serialiation dictionary for 'Static', for completeness
  • Add Closure static serialization dictionary
  • Replacement for modifyMVarMasked for GHC <= 7.4
  • Document the use of built-in trace flags
  • Make forkProcess exception-safe
  • Make -Wall clean

2014-08-13 Tim Watson watson.timothy@gmail.com 0.5.1

  • Fix cabal docs (thanks Markus Barenhoff)
  • Expose lifted version of Control.Exception.mask_ (thanks Alexander Vershilov)

2014-05-30 Tim Watson watson.timothy@gmail.com 0.5.0

  • Dependency on STM implicitly changed from 1.3 to 1.4, but was not reflected in the cabal file
  • Race condition in local monitoring when using call
  • mask now works correctly if unmask is called by another process
  • Improve efficiency of local message passing
  • nsend uses local communication channels
  • Link Node Controller and Network Listener
  • Label spawned processes using labelThread
  • Relaxed upper bound on syb in the cabal manifest
  • Bump binary version to include 0.7.*
  • Exposed process info
  • Exposed node statistics
  • Moved tests to https://github.com/haskell-distributed/distributed-process-tests
  • Added "polymorphic expect"
  • Exposed Message type and broaden scope of polymorphic expect
  • Added Management API (for working with internal/system events)
  • Tracing can no longer be disabled
  • We now report node statistics for monitoring/management
  • Node.runProcess now propagates exceptions to its caller
  • Added simple micro benchmarks

2013-01-27 Tim Watson watson.timothy@gmail.com 0.4.2

  • Improved exception handling for deferred type checked exit reasons
  • Add matchChan primitive (thanks Simon Marlow)
  • Expose deferred message handling/checking for AbstractMessage
  • Add `getProcessInfo' API
  • Add `trace' API backed by the GHC eventlog

2012-11-22 Edsko de Vries edsko@well-typed.com 0.4.1

  • Make behaviour of 'register' more Erlang-like (register will now fail if the name is already registered). Patch by Jeff Epstein.
  • Functor, Applicative, Alternative and Monad instances for ReceivePort
  • Add support for receiveChanTimeout
  • Improved documentation
  • Avoid name clashes in the TH generation for closures
  • Relax package bounds to allow for Binary 0.6

2012-10-23 Edsko de Vries edsko@well-typed.com 0.4.0.2

  • Fix race condition in spawn

2012-10-04 Edsko de Vries edsko@well-typed.com 0.4.0.1

  • Relax package boundaries

2012-10-03 Edsko de Vries edsko@well-typed.com 0.4.0

  • Improved treatment of network failure, using new failure semantics of Network.Transport.
  • Make NodeId Typeable
  • Extend Template Haskell support with "remotableDec" so that you can refer to $(mkClosure 'f) within the body of "f".
  • Fix bug in spawnChannelLocal
  • Numerous memory leaks plugged
  • Relax upper bound on dependency on 'network'
  • New primitive 'matchAny'
  • Remove 'whereisRemote' (see comment of 'whereisRemoteAsync')

2012-08-16 Edsko de Vries edsko@well-typed.com 0.3.1

  • Fix memory leaks
  • Make Template Haskell support optional
  • Relax dependency constraints

2012-08-07 Edsko de Vries edsko@well-typed.com 0.3.0

  • Extract 'static' into a separate package (C.D.Static)
  • Use new package rank1dynamic to proper runtime checks for polymorphic values

2012-08-02 Edsko de Vries edsko@well-typed.com 0.2.3.0

  • Expose the constructors of Closure
  • Add instance (Typeable a => Serializable (Static a)) and make sure we only use the internal representation of Static where really necessary
  • Improved docs

2012-07-31 Edsko de Vries edsko@well-typed.com 0.2.2.0

  • Add exception handling primitives
  • Fix runProcess: if the process threw an exception, a 'waiting indefinitely on MVar' exception would be thrown.

2012-07-21 Edsko de Vries edsko@well-typed.com 0.2.1.4

  • Bugfix in the node controller (one way this bug materialized: when using the SimpleLocalnet backend, slave nodes could not be reused)
  • Improved documentation in Control.Distributed.Process.Closure

2012-07-20 Edsko de Vries edsko@well-typed.com 0.2.1.3

  • Improve docs
  • Local versions of spawn

2012-07-16 Edsko de Vries edsko@well-typed.com 0.2.1.2

  • Base 4.6 compatibility
  • Relax constraints on bytestring and containers

2012-07-16 Edsko de Vries edsko@well-typed.com 0.2.1.1

  • Relax upper bound on 'time' dependency

2012-07-11 Edsko de Vries edsko@well-typed.com 0.2.1

  • Complete redesign of the underlying implementation of static values and closures.

  • Add support for 'spawnChannel'

2012-07-09 Edsko de Vries edsko@well-typed.com 0.2.0.1

  • Bugfix: Continue processing messages when a connection breaks.

2012-07-07 Edsko de Vries edsko@well-typed.com 0.2.0

  • Initial release.