Skip to content

Who Supervises the Supervisor?

Compare
Choose a tag to compare
@roman roman released this 01 Feb 16:03
· 49 commits to master since this release
b0b473b

BREAKING CHANGES

  • Introduction of the Process type which is composed of both Supervisor and
    Worker types
  • Replace defWorkerSpec in favor of workerSpec and workerSpecWithDefaults
    to build static workers
  • Replace of defWorkerOptions in favor of buildWorkerOptions and
    buildWorkerOptionsWithDefaults to build dynamic workers
  • Replace terminateWorker in favor of terminateProcess
  • Add supervisorSpec, supervisorSpecWithDefaults to build static supervision
    trees
  • Add forkSupervisor, buildSupervisorOptions and
    buildSupervisorOptionsWithDefaults to build dynamic supervision trees
  • Replace usage of default records semantics in favor of Lenses
  • Add joinCapatazThread to avoid providing direct access to async of root
    supervision tree
  • Add getSupervisorProcessId to access the ProcessId of a given Supervisor
    record (for dynamic termination)
  • Add getSupervisorAsync to access the Async () record of a supervisor
    process thread
  • Add getCapatazTeardown to access the Teardown record of the capataz system
  • Move CapatazEvent records to new module Control.Concurrent.Capataz.Event
    to avoid requiring DuplicateRecordFields extension on API users
  • Remove WorkerAction alias as it is used for library development
    documentation
  • Add capataz-repo-watcher example to showcase static supervision trees
  • Update capataz-simple-example unix-process example
  • forkCapataz signature now requires name for root supervisor