Skip to content

v0.99.17

Choose a tag to compare

@lkrms lkrms released this 03 May 14:28
· 845 commits to main since this release
v0.99.17
608d7ad

Added

  • Add Process methods pipeInput(), setCwd(), setEnv(), setTimeout (), disableOutputCollection(), enableOutputCollection(), isTerminatedBySignal()
  • Add Sys::isProcessRunning()

Changed

  • In Process and Sys::handleExitSignals(), use exit status 128 + <signal_number> when processes are terminated by signal
  • Review Process:
    • Update constructor and withShellCommand() parameters
    • Replace null input with an empty stream (STDIN must now be passed explicitly via pipeInput())
    • Improve robustness and precision of timeout handling and process termination
    • In runWithoutFail(), throw ProcessFailedException when a process returns a non-zero exit status
    • Throw ProcessTerminatedBySignalException when a process monitored by wait() is terminated by a signal that isn't a SIGTERM or SIGKILL sent after calling stop()
    • Throw LogicException instead of ProcessException where appropriate
    • Build out getStats() metrics
  • Create key-value pairs for CollectionInterface::CALLBACK_USE_BOTH ([<key>, <value>] instead of [<key> => <value>])
  • Optionally return key from CollectionInterface::find()
  • Throw PSR-18 compliant exceptions from Curler::sendRequest()

Removed

  • Remove unused Sys::sqliteHasUpsert()

Fixed

  • Fix Process output collection bugs