Skip to content

Release v0.14.2

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Oct 04:25
· 1 commit to main since this release

A fix for services that run an external command.

Bug fixes

  • A service whose external command exits non-zero now stops with .fin.error (#165). xs dropped the exit status of a service's external commands, so a failed run drained like a clean one. Under the default restart: "on-success" such a service restarted every second, emitting .active each time, and never reported the failure. It now emits xs.service.<name>.fin.error with the exit code in the message and stays down, as it already did for an error raised in nu. This holds mid-pipeline too, as in ^my-tool | lines | each { from json }, the same check nu applies for pipefail. A SIGPIPE is not an error, and a service stopped by .term, a hot-replace or xs.stopping still ends with .fin.term, .replaced or .stopped. Embedders get Engine::run_closure_in_job_with_exit, which returns the exit status guards alongside the body; run_closure_in_job is unchanged.

  • The macOS release build recovers from its known libproc failure again. The build looked for the old wording of rustc's error, which has since changed, so it now matches the file name alone.

Changelog

  • fix: a service whose external exits non-zero stops with .fin.error