Changelog of @hackage/polysemy-process 0.14.0.0

0.14.0.0

Breaking

  • Move Interrupt here from polysemy-conc.

0.10.0.0

  • Add oneshot variants of Process interpreters that send Stop to the individual actions inside the scope, modeling a process that is expected to terminate.
  • Refactor interpreters to use Scoped as the basis and specialize unparameterized ones. Don't provide loads of specializations for I/O types, rather offer interpreters that handle ProcessOutput and ProcessInput only.
  • Add constructors for SysProcConf that use Path and Text.
  • Add the newtype Pid for SystemProcess.
  • Add currentPid.
  • Catch exceptions when starting a system process and send them to the scope.
  • Change the process config constructor expected by interpretSystemProcessNative to return Either Text SysProcConf, throwing the error as SystemProcessScopeError.

0.9.0.0

  • Remove stderr from the Process abstraction so that stdout and stderr must be unified after parsing (potentially as Either to emulate the previous behaviour).
  • Make default ProcessOutput interpreters discard all stderr output.
  • Add re-interpreter from Input/Output to Process.
  • Add interpretProcessOutputIncremental, a stateful interpreter using a supplied parser that may produce partial results.
  • Add interpretProcessCurrent et al, treating the program's process's stdio as the (mirrored) stdio of an external process.
  • Add interpretProcessOutputLeft and interpretProcessOutputRight, lifting results of another interpreter into Either.

0.8.0.0

  • Add ProcessOptions, replacing the primitive parameters of Process interpreters.
  • Add an option for Process that determines whether to kill the process after exiting the scope.

0.6.0.0

  • Allow Process to emit custom chunks constructed by an interpreter of ProcessOutput instead of ByteStrings containing whatever the Handle produced.
  • Rename stdio interpreters.
  • Add helper resolveExecutable that looks up names in $PATH and ensures the files are executable.
  • Add effect Pty for interacting with pseudo terminals.
  • Add low-level process abstraction effect, SystemProcess.

0.5.0.0

  • Add the effect Process, wrapping System.Process.Typed using Scoped.