[v1.116.0] - 2026-06-16
New Features
- Added a
process-compose process send-keyscommand to inject keystrokes into a running interactive process's stdin, plus ashutdown.send_keysoption to cleanly stop programs that only quit on a keypress, addresses issue #507. - Added per-process
success_exit_codesto treat selected non-zero exit codes (e.g.130from a signal-driven shutdown) as a success, addresses issue #506. - Added process-level
extendsso a process can inherit and override the configuration of another process in the same project. - Added automatic replica name expansion in
depends_on, letting processes depend on a replicated group or on a specific replica, addresses issue #496, by @pcastellazzi. - Added a
PC_NAMESPACESenvironment variable as an alternative to--namespace/-nfor selecting which namespaces to run, addresses issue #491, by @ddanier. - Added the
pc_process_logs_search(BM25 log search) andpc_project_dependency_graphbuilt-in MCP control tools, by @jeanlucthumm .
Bug Fixes
- Fixed unfocused interactive processes blocking on a full PTY buffer by ensuring background drainage, addresses issue #508.
- Fixed a readiness cascade where dependents of an updated or restarted process could spuriously fail on a stale, cancelled process object, by @hebo6.
- Fixed a deadlock that wedged the logs WebSocket for an entire process under backpressure, by @hebo6.
- Fixed reloading a project that uses file-level
extends, which previously failed with an "already specified in files to load" error after the first successful load, by @eike-hass.
Changelog
- b9b8820 Add BM25 search and dependency graph as tools in the MCP server (#479)
- a4038d6 Add macOS runner to Go CI and optimize linter (#486)
- 0be8ab4 Fix log websocket backpressure
- 85686e5 Fix update readiness cascade (#497)
- 5e62578 Merge pull request #487 from eike-hass/fix/loader-filenames-mutation-on-reload
- a92cb36 Merge pull request #495 from hebo6/fix/logs-ws-deadlock
- 6a79994 Merge pull request #498 from ddanier/add-namespace-env
- cd7f6af chore: bump process-compose version to 1.110.0
- 1057510 chore: bump version to v1.116.0 and update release notes
- 5412c4e chore: modernize go
- 4970c98 chore: update project dependencies and nix vendor hash
- f0218ac feat: Add ability to define namespaces via environment variable
- fa951a0 feat: Automate replica names expansion in DependsOn (#496)
- 3f76f51 feat: add process level extend
- 60372ae feat: add support for custom success_exit_codes per process to allow non-zero exit statuses to be treated as success Addresses issue #506
- 9923ea3 feat: implement send-keys command to inject input into interactive processes addresses issue #507
- 3360bb4 fix(loader): persist user-supplied FileNames, not the extends-mutated slice
- c01127e fix: prevent PTY blocking for unfocused interactive processes by ensuring background drainage Addresses issue #508
- bcf2468 test(loader): regression test for reload-after-extends
- 8dcb6e1 修复日志ws死锁