Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ and this project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.ht

## [Unreleased]

## [0.9.0] - 2026-07-23

### Added

* **`generate` runs until stopped when no `--count` is given, `cangen`-style (#477).** `canarchy generate <interface>` with no `--count` previously sent a single frame and exited, unlike the reference `cangen` tool from can-utils, which streams continuously by default. `--count` now defaults to unbounded: omitting it generates and transmits frames continuously, spaced by `--gap`, until interrupted (Ctrl-C / SIGINT); `--count N` keeps its existing exact-`N`-frames behaviour. Frame generation streams one frame at a time (`iter_generated_frames`, `LocalTransport.generate_stream_events`) rather than materializing an unbounded list, and the CLI dispatches an unbounded live run to a streaming emitter — mirroring the existing `capture` / `gateway --text` pattern — so both text and JSON/JSONL output stream per-frame and SIGINT exits cleanly (exit 0). `--dry-run` without `--count` plans a single frame rather than requiring or attempting an unbounded plan. Entry points that cannot deliver Ctrl-C, such as the MCP server, get a structured `MISSING_COUNT` error instead of hanging on an unbounded live run. Closes #477.
Expand Down
2 changes: 1 addition & 1 deletion src/canarchy/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

__all__ = ["__version__"]

__version__ = "0.8.1.dev0"
__version__ = "0.9.0"