extensible-effects-concurrent v0.30.0 Release Notes

Release Date: 2019-07-21 // almost 5 years ago
    • 👌 Improve inline code documentation
    • Supervisor:
      • Rename to [Broker](./src/Control/Eff/Concurrent/Protocol/Broker.hs)
      • Add the ChildEvent needed by the new watchdog
      • Add callById and castById
    • [Process](./src/Control/Eff/Concurrent/Process.hs)
      • Introduce a new Interrupt NoRecovery clause: ExitOtherProcessNotRunning
      • Change the second parameter of ProcessDown from SomeExitReason to Interrupt NoRecovery
      • Introduce new Interrupt reasons for all categories with an existential parameter, that must have NFData, Show and Typeable constraints.
      • Introduce a new timing primitive: Delay
    • [StatefulServer](./src/Control/Eff/Concurrent/Protocol/StatefulServer.hs)
      • Upgrade the associated type alias Model to an associated type.
      • Add mapEffects
      • Add coerceEffects
    • Export the TimeoutMicros constructor
    • Add [Watchdog](./src/Control/Eff/Concurrent/Protocol/Watchdog.hs) a server that watches a [Broker](./src/Control/Eff/Concurrent/Protocol/Broker.hs) and restarts crashed processes registered at the broker.

    • 🌲 [Logging](./src/Control/Eff/Log.hs)

      • Add logCallStack
      • Add logMultiLine
    • [Timer](./src/Control/Eff/Concurrent/Process/Timer.hs)

      • Allow timers to have custom titles via:
        • sendAfterWithTitle
        • startTimerWithTitle
      • Switch to use the new Delay primitive