Skip to content

rutis v0.9.1

Choose a tag to compare

@github-actions github-actions released this 11 Oct 12:39
· 236 commits to main since this release
ebf0711

rutis 0.9.1

中文 · 0.9.0 release notes

0.9.1 fixes the launcher in the npm package @arcships/rutis-host: one Ctrl-C in a terminal made rutis-host exit at once without running cleanups (#267). The other packages have no changes and move to 0.9.1 only to stay on the train.

Fixes

  • The npm launcher no longer forwards Ctrl-C: npx rutis-host … and a project's node_modules/.bin/rutis-host are a Node launcher, which forwarded every signal it got to rutis-host. A terminal already sends Ctrl-C to the whole process group, so rutis-host got it twice and took the second as "exit at once": plugin cleanups did not run, runtime processes were killed, and the exit code was 2. The launcher now leaves SIGINT and SIGHUP to rutis-host (it gets them itself) and forwards only SIGTERM (which service managers and docker stop send to the main process alone). On Windows, forwarding Ctrl-C used to terminate rutis-host outright; the launcher now forwards nothing, and rutis-host handles the console events itself.
  • A SIGINT or SIGHUP sent to the launcher's pid alone (kill -INT <pid>) no longer reaches rutis-host; send SIGTERM instead.

uvx rutis-host, rutis-host installed from PyPI, and the binaries on the release page are not affected.

Packages

All of these are at 0.9.1: on crates.io rutis, rutis-bridge, rutis-loader, rutis-host, rutis-sdk, rutis-dylib, rutis-dylib-meta, rutis-dylib-launcher; on npm @arcships/rutis, @arcships/rutis-runtime, @arcships/rutis-bun, @arcships/rutis-host and the five platform packages; on PyPI rutis, rutis-host; the Go module github.com/arcships/rutis/go/rutis (tag go/rutis/v0.9.1); the rutis-host binaries on the release page.

Compatibility

  • Fully compatible with 0.9.0: no API, protocol or configuration changes; 0.9.0 and 0.9.1 hosts and runtimes work together.
  • Projects that install rutis-host from npm should upgrade; other setups can stay on 0.9.0.
  • Dylib: the SDK identity includes the package versions in its dependency tree. After rebuilding the SDK and the host with 0.9.1, dylib plugins built for 0.9.0 must be rebuilt with the new SDK; keeping the existing SDK bundle is unaffected.