Changelog
All notable changes to PeppyOS will be documented on this page.
Subscribe to the Atom feed for updates.
v0.10.5 (Alpha): Fix `node stop` and daemon kill graceful shutdowns
What's Changed
- Switch to Zenoh peer sessions for direct peer-to-peer data paths by @godardt in #236
- docs: sync with PR #234 by @godardt in #235
- Fix zombie processes of nodes in the node stack by @godardt in #237
- Refactor build helpers by @godardt in #238
- Release v0.10.5 by @godardt in #239
Full Changelog: v0.10.4...v0.10.5
v0.10.3 (Alpha): Add support for shared datastore
What's Changed
- Remove deferred binding support by @godardt in #229
- Add from_any bidirectional guide with robot arm snippets by @godardt in #230
- Add memory store by @godardt in #228
- Extract router feature flag and split zenohd submodules by @godardt in #232
- Release v0.10.3 by @godardt in #231
Full Changelog: v0.10.2...v0.10.3
v0.10.2 (Alpha): Fix bidirectional communication design
What's Changed
- docs: sync with PR #221 by @godardt in #222
- Remove external consumed topics, all consumed topics now require a link_id by @godardt in #223
- Rework bidirectional comm by @godardt in #224
- Add bidirectional communication via interfaces by @godardt in #225
- Release v0.10.2 by @godardt in #226
Full Changelog: v0.10.1...v0.10.2
v0.10.1 (Alpha): Fix stack list display as well as --force flag on node build
What's Changed
- fix: release gate slot before completing goal to eliminate "action already in progress" race by @godardt in #217
- Fix zenohd stdout/stderr to file to prevent pipe buffer deadlock by @godardt in #218
- Improve the output of the
stack listcommand by @godardt in #219 - Fix zombie processes by @godardt in #220
- Release v0.10.1 by @godardt in #221
Full Changelog: v0.10.0...v0.10.1
v0.10.0 (Alpha): Add interface conformance along with fixes to action
What's Changed
- Improve install script by @godardt in #192
- Variants removal by @godardt in #191
- Release v0.9.3 by @godardt in #196
- Interfaces conformances 1 by @godardt in #197
- Interfaces conformances: standard structures by @godardt in #198
- Replace semver tags with non-dotted tags by @godardt in #199
- Refactor pmi-internal by @godardt in #201
- Implement the
conforms_tobusiness logic for interface conformance by @godardt in #200 - Fix interfaces & nodes on the wire by @godardt in #202
- Add depends.on.interfaces business logic by @godardt in #203
- Add launcher bindings business logic by @godardt in #204
- Throw warnings on missing
link_idduringpeppy runby @godardt in #205 - Fix launcher and
node runbindings by @godardt in #206 - Add instance_ids fetch by node name + node tag by @godardt in #207
- docs: sync with PR #209 by @godardt in #210
- Fix action communication by goal ID by @godardt in #214
- Replace raw cancel/result payloads with typed ResultStatus and CancelState by @godardt in #215
- Revision release v0.10.0 by @godardt in #211
- Release v0.10.0 by @godardt in #216
Full Changelog: v0.9.3...v0.10.0
v0.9.3 (Alpha): Fix peppy actions misalignment
What's Changed
- feat: bundle gocryptfs alongside apptainer for encrypted overlay support by @godardt in #193
- Fix action communication misalignment by @godardt in #195
Full Changelog: v0.9.2...v0.9.3
v0.9.2 (Alpha): Add documentation for actions with optional fields
What's Changed
Full Changelog: v0.9.1...v0.9.2
v0.9.1 (Alpha): Fix cancel token during action feedback when the action ends
What's Changed
- docs: sync with PR #184 by @godardt in #185
- Fix Action feedback deadlock by @godardt in #187
- Release v0.9.1 by @godardt in #188
Full Changelog: v0.9.0...v0.9.1
v0.9.0 (Alpha): Add support for launchers repositories
Main changes
schema_versionis nowpeppy_schema: "node_v1"orpeppy_schema: "launcher_v1"depending if it's a node or a launcherpeppy stack launch <launcher_filename>now works with remote launchers. The https://github.com/Peppy-bot/launchers_hub repository is added by default. Runningpeppy stack launch ./<launcher_filename>defaults to a local path, whilepeppy stack launch <launcher_filename>defaults to a launcher in the repositories
What's Changed
Full Changelog: v0.8.5...v0.9.0
v0.8.5 (Alpha): Add ability to use `peppy node sync -r` to use repositories
What's Changed
- Add
node sync -rto synchronize with repositories by @godardt in #181 - Release v0.8.5 by @godardt in #182
Full Changelog: v0.8.4...v0.8.5
v0.8.3 (Alpha): Add wall & sim clock support
What's Changed
- Feature clock sync by @godardt in #176
- Add sim-clock mode with per-instance framework overrides by @godardt in #177
- Release v0.8.3 by @godardt in #178
Full Changelog: v0.8.2...v0.8.3
v0.8.2 (Alpha): Add core node information available to peppylib
What's Changed
- Extract capnp encoding types into new core-node-api crate by @godardt in #172
- Peppylib stack list command implementation by @godardt in #173
- docs: sync with PR #174 by @godardt in #175
- Release v0.8.2 by @godardt in #174
Full Changelog: v0.8.1...v0.8.2
v0.8.0 (Alpha): Add support for repositories
What's Changed
✨ Highlight: Repositories. This release introduces first-class repositories, a new way to tell peppy where to discover nodes. Register local directories, git repositories (with optional branch/tag pinning via --ref), or HTTP endpoints with peppy repo add, then run peppy repo refresh to build a cached index of every available node. Once indexed, nodes can be added by their short name:tag form (e.g. peppy node add uvc_camera:0.1.0) and launched in the node stack without pointing at a path or URL.
- Add repositories feature by @godardt in #161
- Automatically test for docs drift by @godardt in #163
node addcommand now works with node name + tag from repositories by @godardt in #162- Add ability to use
stack launchwith nodes from repositories by @godardt in #164 - docs: sync with PR #165 by @godardt in #166
- docs: sync with PR #165 by @godardt in #167
- docs: sync with PR #165 by @godardt in #168
- Release v0.8.0 by @godardt in #165
Full Changelog: v0.7.0...v0.8.0
v0.7.0 (Alpha): Separate `node add/start` into `node add/build/run`
What's Changed
- Add
node buildstep to workflow by @godardt in #153 - Separate
node addfromnode buildcommands by @godardt in #155 - refactor: rename
start_cmdtorun_cmdby @godardt in #156 - Fix standalone integration by @godardt in #157
- Change
node infoto look up nodes by name:tag by @godardt in #158 - Add
nodecommand shorthands by @godardt in #159 - Release v0.7.0 by @godardt in #160
Full Changelog: v0.6.2...v0.7.0
v0.6.2 (Alpha): Add code and command optimizations
What's Changed
- Code cleanup & optimization by @godardt in #149
- Node sync path by @godardt in #150
- Core node name is now fixed across reboot/reinstallation by @godardt in #151
- Release v0.6.2 by @godardt in #152
Full Changelog: v0.6.1...v0.6.2
v0.6.1 (Alpha): Add support for arrays of objects in message format schemas
What's Changed
- Support arrays of objects in message format schemas by @godardt in #147
- Release v0.6.1 by @godardt in #148
Full Changelog: v0.6.0...v0.6.1
v0.6.0 (Alpha): Add support for node variants
What's Changed
- Create a dedicated
runtimesection to holdlanguage,container,parametersandadd_cmd/start_cmdby @godardt in #136 - Node variants by @godardt in #137
- Docker base images by @godardt in #143
- Fix variants by @godardt in #142
- Add more meaningful output to the
node addoperation by @godardt in #144 - Add variant launchers support by @godardt in #145
- Release v0.6.0 by @godardt in #146
Full Changelog: v0.5.10...v0.6.0
v0.5.10 (Alpha): Add support for installation in containers
What's Changed
Full Changelog: v0.5.9...v0.5.10
v0.5.8 (Alpha): Fix architecture mismatch in Apptainer binary
What's Changed
Full Changelog: v0.5.7...v0.5.8
v0.5.7 (Alpha): Official support for more Linux distros
What's Changed
Full Changelog: v0.5.6...v0.5.7
v0.5.6 (Alpha): Add support for mounted devices in containers
What's Changed
- refactor: simplify PR 128 by @claude[bot] in #131
- Add extra args support for apptainer build/run and lima shell by @godardt in #128
- Add documentation for llms by @godardt in #132
- v0.5.6 by @godardt in #133
Full Changelog: v0.5.5...v0.5.6
v0.5.5 (Alpha): Fix issues with installation script on some systems
What's Changed
- Improve install scripts by @godardt in #126
- Containers mounts with runtime vars by @godardt in #125
- fix: switch container images to standard registries by @godardt in #129
- v0.5.5 by @godardt in #130
Full Changelog: v0.5.4...v0.5.5
v0.5.0 (Alpha): Bidirectional communication support
What's Changed
- Rework peppy structure by @godardt in #102
- Separate DAG from communication by @godardt in #104
- Fix/actions revamp by @godardt in #106
- Add bidirectional communication by @godardt in #107
- Fix node add with existing instances by @godardt in #109
- Improvement launch files by @godardt in #112
- Fix yanked file by @godardt in #114
- Optimize modules by @godardt in #113
- Release 0.5.0 by @godardt in #115
Full Changelog: v0.4.0...v0.5.0
v0.5.1 (Alpha): Add more explanatory logs for add_cmd and start_cmd failures
What's Changed
- Include command name in spawn and execution failure error messages by @godardt in #116
- Add more explanatory logs for add_cmd and start_cmd failures by @godardt in #117
Full Changelog: v0.5.0...v0.5.1
v0.5.3 (Alpha): Fix Linux .so Python lib not available for x86_64 systems
What's Changed
- Fix Linux .so Python lib not available for x86_64 systems by @godardt in #121
- Release v0.5.3 by @godardt in #122
Full Changelog: v0.5.2...v0.5.3
v0.5.4 (Alpha): Add various fixes to the install script
What's Changed
- Various fixes to the install script by @godardt in #123
- Add various fixes to the install script by @godardt in #124
Full Changelog: v0.5.3...v0.5.4
v0.4.0 (Alpha): Containers support
What's Changed
- Feature/fix cross compilation by @godardt in #90
- Add fakeroot pre-flight check and service stop/uninstall commands by @godardt in #91
- Final implementation for containers by @godardt in #88
- fix: auto-create host-side bind mount source directories by @godardt in #92
- Replace fixed timeouts with idle + max timeout model for node by @godardt in #93
- Fix python libs by @godardt in #95
- Optimize codegen by @godardt in #96
- Fix containers warnings by @godardt in #97
- fix: move DEBIAN_FRONTEND export to %post section in apptainer templates by @godardt in #98
- rename: daemon-node crate and related identifiers renamed to core-node by @godardt in #99
- Add Lima VM cross-compilation for multi-target releases by @godardt in #100
- Release v0.4.0 by @godardt in #101
Full Changelog: https://github.com/Peppy-bot/peppy/commits/v0.4.0
v0.3.6 (Alpha): Optimize PeppyOS internal behavior
- sccache support
- Optimize
node addcommand - Update Python node template to use direct venv execution
- Add external JSON parameter loading for standalone nodes in Python and Rust
v0.3.5 (Alpha): Trim Rust nodes size
v0.3.4 (Alpha): Optimize crates boundary crossing with Rust nodes
v0.3.0 (Alpha): Python support
- Add python support
- Rust codegen refactor
- Rename master-node to daemon-node
- Remove extra deps in nodes
v0.3.1 (Alpha): Add Python support with macOS (aarch64) and Linux (x86_64/aarch64) support
- Add python support
- Rust codegen refactor
- Rename master-node to daemon-node
- Remove extra deps in nodes
v0.3.2 (Alpha): Fix missing binaries for Python
v0.3.3 (Alpha): Support dataclass instances in with_parameters method in Python
v0.2.17 (Alpha): Fix for names-generator
v0.2.18 (Alpha): Update all dependencies
v0.2.15 (Alpha): Add interfaces integrity
v0.2.13 (Alpha): Add dependency check to add command
v0.2.14 (Alpha): Add user defined timeouts to add/start and launch cmd
v0.2.12 (Alpha): Fix add_cmd and start_cmd user vars
Fixed user variables not being properly applied in add_cmd and start_cmd operations.
v0.2.11 (Alpha): Update docs & add optimizations
Implement internal code optimizations
v0.2.10 (Alpha): Initial alpha release of PeppyOS
Features
- Core node system with Rust support
- Topic-based communication between nodes
- Service and action patterns
- Parameter system for node configuration
- Launch files for multi-node orchestration
- Node stack management
- Standalone node execution mode
- CLI tools for project management