chore: cleaned historical changelog entries and added validation to release script
- Removed historical version entries from multiple package CHANGELOG files. - Added changelog validation functions to release script. - Prevented creation of empty version entries in changelog generation.
This commit is contained in:
@@ -2,44 +2,12 @@
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [5.6.70] - 2026-01-18
|
||||
|
||||
## [5.6.7] - 2026-01-18
|
||||
### Fixed
|
||||
|
||||
- Added proper tool result messages for tool calls that are aborted or error out
|
||||
- Ensured tool_use/tool_result pairing is maintained when tool execution fails
|
||||
|
||||
## [5.5.0] - 2026-01-18
|
||||
|
||||
## [5.4.2] - 2026-01-16
|
||||
|
||||
## [5.4.0] - 2026-01-15
|
||||
|
||||
## [5.3.1] - 2026-01-15
|
||||
|
||||
## [5.3.0] - 2026-01-15
|
||||
|
||||
## [5.2.1] - 2026-01-14
|
||||
|
||||
## [5.2.0] - 2026-01-14
|
||||
|
||||
## [5.1.1] - 2026-01-14
|
||||
|
||||
## [5.1.0] - 2026-01-14
|
||||
|
||||
## [5.0.1] - 2026-01-12
|
||||
|
||||
## [5.0.0] - 2026-01-12
|
||||
|
||||
## [4.9.0] - 2026-01-12
|
||||
|
||||
## [4.8.3] - 2026-01-12
|
||||
|
||||
## [4.8.0] - 2026-01-12
|
||||
|
||||
## [4.7.0] - 2026-01-12
|
||||
|
||||
## [4.6.0] - 2026-01-12
|
||||
### Changed
|
||||
|
||||
@@ -49,40 +17,12 @@
|
||||
|
||||
- Fixed tool result ordering in Cursor mode by buffering results and emitting them at the correct position within assistant messages
|
||||
|
||||
## [4.5.0] - 2026-01-12
|
||||
|
||||
## [4.4.9] - 2026-01-12
|
||||
|
||||
## [4.4.8] - 2026-01-12
|
||||
|
||||
## [4.4.6] - 2026-01-11
|
||||
|
||||
## [4.4.5] - 2026-01-11
|
||||
|
||||
## [4.4.4] - 2026-01-11
|
||||
|
||||
## [4.3.2] - 2026-01-11
|
||||
|
||||
## [4.3.1] - 2026-01-11
|
||||
|
||||
## [4.3.0] - 2026-01-11
|
||||
### Added
|
||||
|
||||
- Added `cursorExecHandlers` and `cursorOnToolResult` options for local tool execution with cursor-based streaming
|
||||
- Added `emitExternalEvent` method to allow external event injection into the agent state
|
||||
|
||||
## [4.2.3] - 2026-01-11
|
||||
|
||||
## [4.2.2] - 2026-01-11
|
||||
|
||||
## [4.2.1] - 2026-01-11
|
||||
|
||||
## [4.2.0] - 2026-01-10
|
||||
|
||||
## [4.1.0] - 2026-01-10
|
||||
|
||||
## [4.0.1] - 2026-01-10
|
||||
|
||||
## [4.0.0] - 2026-01-10
|
||||
### Added
|
||||
|
||||
@@ -94,16 +34,6 @@
|
||||
|
||||
- `minimal` thinking level now maps to `minimal` reasoning effort instead of being treated as `low`
|
||||
|
||||
## [3.37.1] - 2026-01-10
|
||||
|
||||
## [3.37.0] - 2026-01-10
|
||||
|
||||
## [3.36.0] - 2026-01-10
|
||||
|
||||
## [3.35.0] - 2026-01-09
|
||||
|
||||
## [3.34.0] - 2026-01-09
|
||||
|
||||
## [3.33.0] - 2026-01-08
|
||||
|
||||
### Fixed
|
||||
@@ -111,16 +41,6 @@
|
||||
- Ensured aborted assistant responses always include an error message for callers.
|
||||
- Filtered thinking blocks from Cerebras request context to keep multi-turn prompts compatible.
|
||||
|
||||
## [3.32.0] - 2026-01-08
|
||||
|
||||
## [3.31.0] - 2026-01-08
|
||||
|
||||
## [3.30.0] - 2026-01-07
|
||||
|
||||
## [3.25.0] - 2026-01-07
|
||||
|
||||
## [3.24.0] - 2026-01-07
|
||||
|
||||
## [3.21.0] - 2026-01-06
|
||||
|
||||
### Changed
|
||||
@@ -132,8 +52,6 @@
|
||||
- Added `sessionId` option for provider caching (e.g., OpenAI Codex session-based prompt caching)
|
||||
- Added `sessionId` getter/setter on Agent class for runtime session switching
|
||||
|
||||
## [3.20.1] - 2026-01-06
|
||||
|
||||
## [3.20.0] - 2026-01-06
|
||||
|
||||
### Breaking Changes
|
||||
@@ -150,24 +68,6 @@
|
||||
|
||||
- `prompt()` and `continue()` now throw when the agent is already streaming; use steering or follow-up queues instead
|
||||
|
||||
## [3.15.1] - 2026-01-05
|
||||
|
||||
## [3.15.0] - 2026-01-05
|
||||
|
||||
## [3.14.0] - 2026-01-04
|
||||
|
||||
## [3.13.1337] - 2026-01-04
|
||||
|
||||
## [3.9.1337] - 2026-01-04
|
||||
|
||||
## [3.8.1337] - 2026-01-04
|
||||
|
||||
## [3.7.1337] - 2026-01-04
|
||||
|
||||
## [3.6.1337] - 2026-01-03
|
||||
|
||||
## [3.5.1337] - 2026-01-03
|
||||
|
||||
## [3.4.1337] - 2026-01-03
|
||||
|
||||
### Added
|
||||
@@ -179,22 +79,6 @@
|
||||
|
||||
- Fixed abort handling to properly return aborted message state when stream is interrupted mid-response
|
||||
|
||||
## [3.3.1337] - 2026-01-03
|
||||
|
||||
## [3.1.1337] - 2026-01-03
|
||||
|
||||
## [3.0.1337] - 2026-01-03
|
||||
|
||||
## [2.3.1337] - 2026-01-03
|
||||
|
||||
## [2.2.1337] - 2026-01-03
|
||||
|
||||
## [2.1.1337] - 2026-01-03
|
||||
|
||||
## [2.0.1337] - 2026-01-03
|
||||
|
||||
## [1.500.0] - 2026-01-03
|
||||
|
||||
## [1.341.0] - 2026-01-03
|
||||
|
||||
### Added
|
||||
@@ -204,8 +88,6 @@
|
||||
- Implemented "wait" mode to defer queue processing until the entire turn completes.
|
||||
- Added getter and setter methods for `interruptMode` on Agent class.
|
||||
|
||||
## [1.338.0] - 2026-01-03
|
||||
|
||||
## [1.337.1] - 2026-01-02
|
||||
|
||||
### Changed
|
||||
@@ -216,8 +98,6 @@
|
||||
|
||||
Initial release under @oh-my-pi scope. See previous releases at [badlogic/pi-mono](https://github.com/badlogic/pi-mono).
|
||||
|
||||
## [0.31.1] - 2026-01-02
|
||||
|
||||
## [0.31.0] - 2026-01-02
|
||||
|
||||
### Breaking Changes
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [5.6.70] - 2026-01-18
|
||||
|
||||
## [5.6.7] - 2026-01-18
|
||||
### Added
|
||||
|
||||
@@ -35,24 +33,12 @@
|
||||
- Simplified Codex system prompt instructions
|
||||
- Removed bridge text override from Codex system prompt builder
|
||||
|
||||
## [5.4.2] - 2026-01-16
|
||||
|
||||
## [5.4.0] - 2026-01-15
|
||||
|
||||
## [5.3.1] - 2026-01-15
|
||||
|
||||
## [5.3.0] - 2026-01-15
|
||||
### Changed
|
||||
|
||||
- Replaced detailed Codex system instructions with simplified pi assistant instructions
|
||||
- Updated internal documentation references to use pi-internal:// protocol
|
||||
|
||||
## [5.2.1] - 2026-01-14
|
||||
|
||||
## [5.2.0] - 2026-01-14
|
||||
|
||||
## [5.1.1] - 2026-01-14
|
||||
|
||||
## [5.1.0] - 2026-01-14
|
||||
|
||||
### Added
|
||||
@@ -66,8 +52,6 @@
|
||||
- Fixed Gemini CLI provider retries with proper error handling, retry delays from headers, and empty stream retry logic
|
||||
- Fixed numbered list items showing "1." for all items when code blocks break list continuity (via `start` property)
|
||||
|
||||
## [5.0.1] - 2026-01-12
|
||||
|
||||
## [5.0.0] - 2026-01-12
|
||||
### Added
|
||||
|
||||
@@ -79,14 +63,6 @@
|
||||
- Changed Google thinking token budgets: minimal (1024), low (2048→4096), medium (8192), high (16384), xhigh (24575)
|
||||
- Changed `supportsXhigh()` to return true for all Anthropic models
|
||||
|
||||
## [4.9.0] - 2026-01-12
|
||||
|
||||
## [4.8.3] - 2026-01-12
|
||||
|
||||
## [4.8.0] - 2026-01-12
|
||||
|
||||
## [4.7.0] - 2026-01-12
|
||||
|
||||
## [4.6.0] - 2026-01-12
|
||||
### Fixed
|
||||
|
||||
@@ -94,8 +70,6 @@
|
||||
- Fixed thought signature handling in Google Gemini CLI and Vertex AI streaming to properly preserve signatures across text deltas
|
||||
- Fixed Google schema sanitization stripping property names that match schema keywords (e.g., "pattern", "format") from tool definitions
|
||||
|
||||
## [4.5.0] - 2026-01-12
|
||||
|
||||
## [4.4.9] - 2026-01-12
|
||||
### Fixed
|
||||
|
||||
@@ -128,10 +102,6 @@
|
||||
|
||||
- Fixed Cursor todo updates to bridge update_todos tool calls to the local todo_write tool
|
||||
|
||||
## [4.3.2] - 2026-01-11
|
||||
|
||||
## [4.3.1] - 2026-01-11
|
||||
|
||||
## [4.3.0] - 2026-01-11
|
||||
|
||||
### Added
|
||||
@@ -157,10 +127,6 @@
|
||||
|
||||
- Fixed Cursor conversation history serialization so subagents retain task context and can call complete
|
||||
|
||||
## [4.2.3] - 2026-01-11
|
||||
|
||||
## [4.2.2] - 2026-01-11
|
||||
|
||||
## [4.2.1] - 2026-01-11
|
||||
### Changed
|
||||
|
||||
@@ -172,12 +138,6 @@
|
||||
|
||||
- Fixed Cloud Code Assist tool schema conversion to avoid unsupported `const` fields
|
||||
|
||||
## [4.2.0] - 2026-01-10
|
||||
|
||||
## [4.1.0] - 2026-01-10
|
||||
|
||||
## [4.0.1] - 2026-01-10
|
||||
|
||||
## [4.0.0] - 2026-01-10
|
||||
### Added
|
||||
|
||||
@@ -234,29 +194,17 @@
|
||||
|
||||
- Enabled type coercion in JSON schema validation to automatically convert compatible types
|
||||
|
||||
## [3.36.0] - 2026-01-10
|
||||
|
||||
## [3.35.0] - 2026-01-09
|
||||
### Added
|
||||
|
||||
- Enhanced error messages to include retry-after timing information from API rate limit headers
|
||||
|
||||
## [3.34.0] - 2026-01-09
|
||||
|
||||
## [0.42.0] - 2026-01-09
|
||||
|
||||
### Added
|
||||
|
||||
- Added OpenCode Zen provider support with 26 models (Claude, GPT, Gemini, Grok, Kimi, GLM, Qwen, etc.). Set `OPENCODE_API_KEY` env var to use.
|
||||
|
||||
## [0.41.0] - 2026-01-09
|
||||
|
||||
## [0.40.1] - 2026-01-09
|
||||
|
||||
## [0.40.0] - 2026-01-08
|
||||
|
||||
## [0.39.1] - 2026-01-08
|
||||
|
||||
## [0.39.0] - 2026-01-08
|
||||
|
||||
### Fixed
|
||||
@@ -281,20 +229,12 @@
|
||||
- Fixed Codex SSE error events to surface message, code, and status. ([#551](https://github.com/badlogic/pi-mono/pull/551) by [@tmustier](https://github.com/tmustier))
|
||||
- Fixed context overflow detection for `context_length_exceeded` error codes.
|
||||
|
||||
## [0.37.8] - 2026-01-07
|
||||
|
||||
## [0.37.7] - 2026-01-07
|
||||
|
||||
## [0.37.6] - 2026-01-06
|
||||
|
||||
### Added
|
||||
|
||||
- Exported OpenAI Codex utilities: `CacheMetadata`, `getCodexInstructions`, `getModelFamily`, `ModelFamily`, `buildCodexPiBridge`, `buildCodexSystemPrompt`, `CodexSystemPrompt` ([#510](https://github.com/badlogic/pi-mono/pull/510) by [@mitsuhiko](https://github.com/mitsuhiko))
|
||||
|
||||
## [0.37.5] - 2026-01-06
|
||||
|
||||
## [0.37.4] - 2026-01-06
|
||||
|
||||
## [0.37.3] - 2026-01-06
|
||||
|
||||
### Added
|
||||
@@ -307,8 +247,6 @@
|
||||
|
||||
- Codex provider now always includes `reasoning.encrypted_content` even when custom `include` options are passed ([#484](https://github.com/badlogic/pi-mono/pull/484) by [@kim0](https://github.com/kim0))
|
||||
|
||||
## [0.37.1] - 2026-01-05
|
||||
|
||||
## [0.37.0] - 2026-01-05
|
||||
|
||||
### Breaking Changes
|
||||
@@ -334,26 +272,12 @@
|
||||
|
||||
- Vertex AI dummy value for `getEnvApiKey()`: Returns `"<authenticated>"` when Application Default Credentials are configured (`~/.config/gcloud/application_default_credentials.json` exists) and both `GOOGLE_CLOUD_PROJECT` (or `GCLOUD_PROJECT`) and `GOOGLE_CLOUD_LOCATION` are set. This allows `streamSimple()` to work with Vertex AI without explicit `apiKey` option. The ADC credentials file existence check is cached per-process to avoid repeated filesystem access.
|
||||
|
||||
## [0.35.0] - 2026-01-05
|
||||
|
||||
## [0.34.2] - 2026-01-04
|
||||
|
||||
## [0.34.1] - 2026-01-04
|
||||
|
||||
## [0.34.0] - 2026-01-04
|
||||
|
||||
## [0.33.0] - 2026-01-04
|
||||
|
||||
## [0.32.3] - 2026-01-03
|
||||
|
||||
### Fixed
|
||||
|
||||
- Google Vertex AI models no longer appear in available models list without explicit authentication. Previously, `getEnvApiKey()` returned a dummy value for `google-vertex`, causing models to show up even when Google Cloud ADC was not configured.
|
||||
|
||||
## [0.32.2] - 2026-01-03
|
||||
|
||||
## [0.32.1] - 2026-01-03
|
||||
|
||||
## [0.32.0] - 2026-01-03
|
||||
|
||||
### Added
|
||||
@@ -364,8 +288,6 @@
|
||||
|
||||
- **Gemini CLI rate limit handling**: Added automatic retry with server-provided delay for 429 errors. Parses delay from error messages like "Your quota will reset after 39s" and waits accordingly. Falls back to exponential backoff for other transient errors. ([#370](https://github.com/badlogic/pi-mono/issues/370))
|
||||
|
||||
## [0.31.1] - 2026-01-02
|
||||
|
||||
## [0.31.0] - 2026-01-02
|
||||
|
||||
### Breaking Changes
|
||||
|
||||
@@ -119,10 +119,6 @@
|
||||
- Improved system prompt guidance for position-addressed vs content-addressed file edits
|
||||
- Enhanced edit tool documentation with clear use cases for bash alternatives
|
||||
|
||||
## [5.4.0] - 2026-01-15
|
||||
|
||||
## [5.3.1] - 2026-01-15
|
||||
|
||||
## [5.3.0] - 2026-01-15
|
||||
### Changed
|
||||
|
||||
@@ -185,8 +181,6 @@
|
||||
|
||||
- Implemented `xhigh` thinking level for Anthropic models with increased reasoning limits
|
||||
|
||||
## [4.9.0] - 2026-01-12
|
||||
|
||||
## [4.8.3] - 2026-01-12
|
||||
|
||||
### Changed
|
||||
@@ -229,18 +223,12 @@
|
||||
- Component `invalidate()` now properly rebuilds content on theme changes
|
||||
- Force full re-render after returning from external editor
|
||||
|
||||
## [4.5.0] - 2026-01-12
|
||||
|
||||
## [4.4.9] - 2026-01-12
|
||||
|
||||
## [4.4.8] - 2026-01-12
|
||||
### Changed
|
||||
|
||||
- Changed review finding priority format from numeric (0-3) to string labels (P0-P3) for clearer severity indication
|
||||
- Replaced Type.Union with Type.Literal patterns with StringEnum helper across tool schemas for cleaner enum definitions
|
||||
|
||||
## [4.4.6] - 2026-01-11
|
||||
|
||||
## [4.4.5] - 2026-01-11
|
||||
|
||||
### Changed
|
||||
@@ -521,8 +509,6 @@
|
||||
- Ctrl+V clipboard image paste works on Wayland sessions
|
||||
- Extension directories in `settings.json` respect `package.json` manifests
|
||||
|
||||
## [3.37.1] - 2026-01-10
|
||||
|
||||
## [3.37.0] - 2026-01-10
|
||||
### Changed
|
||||
|
||||
@@ -980,8 +966,6 @@
|
||||
|
||||
- Changed status line to display usage statistics more efficiently by using centralized session statistics instead of recalculating from entries
|
||||
|
||||
## [3.13.1337] - 2026-01-04
|
||||
|
||||
## [3.9.1337] - 2026-01-04
|
||||
|
||||
### Changed
|
||||
@@ -1024,8 +1008,6 @@
|
||||
|
||||
- Fixed potential text decoding issues in bash executor by using streaming TextDecoder instead of Buffer.toString()
|
||||
|
||||
## [3.6.1337] - 2026-01-03
|
||||
|
||||
## [3.5.1337] - 2026-01-03
|
||||
|
||||
### Added
|
||||
@@ -1104,10 +1086,6 @@
|
||||
- Renamed environment variables from `PI_*` to `OMP_*` prefix (e.g., `OMP_SMOL_MODEL`, `OMP_SLOW_MODEL`)
|
||||
- Changed model role alias prefix from `pi/` to `omp/` (e.g., `omp/slow` instead of `pi/slow`)
|
||||
|
||||
## [2.3.1337] - 2026-01-03
|
||||
|
||||
## [2.2.1337] - 2026-01-03
|
||||
|
||||
## [2.1.1337] - 2026-01-03
|
||||
|
||||
### Added
|
||||
|
||||
@@ -2,100 +2,6 @@
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [5.6.70] - 2026-01-18
|
||||
|
||||
## [5.6.7] - 2026-01-18
|
||||
|
||||
## [5.5.0] - 2026-01-18
|
||||
|
||||
## [5.4.2] - 2026-01-16
|
||||
|
||||
## [5.4.0] - 2026-01-15
|
||||
|
||||
## [5.3.1] - 2026-01-15
|
||||
|
||||
## [5.3.0] - 2026-01-15
|
||||
|
||||
## [5.2.1] - 2026-01-14
|
||||
|
||||
## [5.2.0] - 2026-01-14
|
||||
|
||||
## [5.1.1] - 2026-01-14
|
||||
|
||||
## [5.1.0] - 2026-01-14
|
||||
|
||||
## [5.0.1] - 2026-01-12
|
||||
|
||||
## [5.0.0] - 2026-01-12
|
||||
|
||||
## [4.9.0] - 2026-01-12
|
||||
|
||||
## [4.8.3] - 2026-01-12
|
||||
|
||||
## [4.8.0] - 2026-01-12
|
||||
|
||||
## [4.7.0] - 2026-01-12
|
||||
|
||||
## [4.6.0] - 2026-01-12
|
||||
|
||||
## [4.5.0] - 2026-01-12
|
||||
|
||||
## [4.4.9] - 2026-01-12
|
||||
|
||||
## [4.4.8] - 2026-01-12
|
||||
|
||||
## [4.4.6] - 2026-01-11
|
||||
|
||||
## [4.4.5] - 2026-01-11
|
||||
|
||||
## [4.4.4] - 2026-01-11
|
||||
|
||||
## [4.3.2] - 2026-01-11
|
||||
|
||||
## [4.3.1] - 2026-01-11
|
||||
|
||||
## [4.3.0] - 2026-01-11
|
||||
|
||||
## [4.2.3] - 2026-01-11
|
||||
|
||||
## [4.2.2] - 2026-01-11
|
||||
|
||||
## [4.2.1] - 2026-01-11
|
||||
|
||||
## [4.2.0] - 2026-01-10
|
||||
|
||||
## [4.1.0] - 2026-01-10
|
||||
|
||||
## [4.0.1] - 2026-01-10
|
||||
|
||||
## [4.0.0] - 2026-01-10
|
||||
|
||||
## [3.37.1] - 2026-01-10
|
||||
|
||||
## [3.37.0] - 2026-01-10
|
||||
|
||||
## [3.36.0] - 2026-01-10
|
||||
|
||||
## [3.35.0] - 2026-01-09
|
||||
|
||||
## [3.34.0] - 2026-01-09
|
||||
|
||||
## [3.33.0] - 2026-01-08
|
||||
|
||||
## [3.32.0] - 2026-01-08
|
||||
|
||||
## [3.31.0] - 2026-01-08
|
||||
|
||||
## [3.30.0] - 2026-01-07
|
||||
|
||||
## [3.25.0] - 2026-01-07
|
||||
|
||||
## [3.24.0] - 2026-01-07
|
||||
|
||||
## [3.21.0] - 2026-01-06
|
||||
|
||||
## [3.20.1] - 2026-01-06
|
||||
|
||||
## [3.20.0] - 2026-01-06
|
||||
|
||||
### Breaking Changes
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [5.6.70] - 2026-01-18
|
||||
|
||||
## [5.6.7] - 2026-01-18
|
||||
|
||||
### Added
|
||||
@@ -31,25 +29,11 @@
|
||||
- Fixed backspace handling with additional codepoint support
|
||||
- Fixed Alt+letter key combinations for better recognition
|
||||
|
||||
## [5.5.0] - 2026-01-18
|
||||
|
||||
## [5.4.2] - 2026-01-16
|
||||
|
||||
## [5.4.0] - 2026-01-15
|
||||
|
||||
## [5.3.1] - 2026-01-15
|
||||
### Fixed
|
||||
|
||||
- Fixed rendering issues on Windows by preventing re-entrant renders
|
||||
|
||||
## [5.3.0] - 2026-01-15
|
||||
|
||||
## [5.2.1] - 2026-01-14
|
||||
|
||||
## [5.2.0] - 2026-01-14
|
||||
|
||||
## [5.1.1] - 2026-01-14
|
||||
|
||||
## [5.1.0] - 2026-01-14
|
||||
|
||||
### Added
|
||||
@@ -72,16 +56,6 @@
|
||||
- Fixed numbered list items showing "1." for all items when code blocks break list continuity
|
||||
- Fixed width overflow protection in overlay compositing to prevent TUI crashes
|
||||
|
||||
## [5.0.1] - 2026-01-12
|
||||
|
||||
## [5.0.0] - 2026-01-12
|
||||
|
||||
## [4.9.0] - 2026-01-12
|
||||
|
||||
## [4.8.3] - 2026-01-12
|
||||
|
||||
## [4.8.0] - 2026-01-12
|
||||
|
||||
## [4.7.0] - 2026-01-12
|
||||
|
||||
### Fixed
|
||||
@@ -100,31 +74,11 @@
|
||||
- Rendering optimizations: only re-render changed lines
|
||||
- Refactor input component to use keybindings manager
|
||||
|
||||
## [4.5.0] - 2026-01-12
|
||||
|
||||
## [4.4.9] - 2026-01-12
|
||||
|
||||
## [4.4.8] - 2026-01-12
|
||||
|
||||
## [4.4.6] - 2026-01-11
|
||||
|
||||
## [4.4.5] - 2026-01-11
|
||||
|
||||
## [4.4.4] - 2026-01-11
|
||||
### Fixed
|
||||
|
||||
- Fixed Ctrl+Enter sequences to insert new lines in the editor
|
||||
|
||||
## [4.3.2] - 2026-01-11
|
||||
|
||||
## [4.3.1] - 2026-01-11
|
||||
|
||||
## [4.3.0] - 2026-01-11
|
||||
|
||||
## [4.2.3] - 2026-01-11
|
||||
|
||||
## [4.2.2] - 2026-01-11
|
||||
|
||||
## [4.2.1] - 2026-01-11
|
||||
### Changed
|
||||
|
||||
@@ -135,15 +89,11 @@
|
||||
- Fixed editor redraw glitch when canceling autocomplete suggestions
|
||||
- Fixed `fd` tool detection to automatically find `fd` or `fdfind` in PATH when not explicitly configured
|
||||
|
||||
## [4.2.0] - 2026-01-10
|
||||
|
||||
## [4.1.0] - 2026-01-10
|
||||
### Added
|
||||
|
||||
- Added persistent prompt history storage support via `setHistoryStorage()` method, allowing history to be saved and restored across sessions
|
||||
|
||||
## [4.0.1] - 2026-01-10
|
||||
|
||||
## [4.0.0] - 2026-01-10
|
||||
### Added
|
||||
|
||||
@@ -168,36 +118,12 @@
|
||||
- `matchesKey()` now correctly matches Kitty protocol sequences for unmodified letter keys
|
||||
- Crash when pasting text with trailing whitespace exceeding terminal width through Markdown rendering
|
||||
|
||||
## [3.37.1] - 2026-01-10
|
||||
|
||||
## [3.37.0] - 2026-01-10
|
||||
|
||||
## [3.36.0] - 2026-01-10
|
||||
|
||||
## [3.35.0] - 2026-01-09
|
||||
|
||||
## [3.34.0] - 2026-01-09
|
||||
|
||||
## [3.33.0] - 2026-01-08
|
||||
|
||||
## [3.32.0] - 2026-01-08
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed text wrapping allowing long whitespace tokens to exceed line width
|
||||
|
||||
## [3.31.0] - 2026-01-08
|
||||
|
||||
## [3.30.0] - 2026-01-07
|
||||
|
||||
## [3.25.0] - 2026-01-07
|
||||
|
||||
## [3.24.0] - 2026-01-07
|
||||
|
||||
## [3.21.0] - 2026-01-06
|
||||
|
||||
## [3.20.1] - 2026-01-06
|
||||
|
||||
## [3.20.0] - 2026-01-06
|
||||
### Added
|
||||
|
||||
@@ -229,10 +155,6 @@
|
||||
- Added `SymbolTheme` interface for customizing UI symbols including cursors, borders, spinners, and box-drawing characters
|
||||
- Added support for custom spinner frames in the Loader component
|
||||
|
||||
## [3.14.0] - 2026-01-04
|
||||
|
||||
## [3.13.1337] - 2026-01-04
|
||||
|
||||
## [3.9.1337] - 2026-01-04
|
||||
### Added
|
||||
|
||||
@@ -245,39 +167,11 @@
|
||||
- Changed Editor component to use proper box borders with vertical side borders instead of horizontal-only borders
|
||||
- Changed cursor style from block to thin blinking bar (▏) at end of line
|
||||
|
||||
## [3.8.1337] - 2026-01-04
|
||||
|
||||
## [3.7.1337] - 2026-01-04
|
||||
|
||||
## [3.6.1337] - 2026-01-03
|
||||
|
||||
## [3.5.1337] - 2026-01-03
|
||||
|
||||
## [3.4.1337] - 2026-01-03
|
||||
|
||||
## [3.3.1337] - 2026-01-03
|
||||
|
||||
## [3.1.1337] - 2026-01-03
|
||||
|
||||
## [3.0.1337] - 2026-01-03
|
||||
|
||||
## [2.3.1337] - 2026-01-03
|
||||
|
||||
## [2.2.1337] - 2026-01-03
|
||||
|
||||
## [2.1.1337] - 2026-01-03
|
||||
|
||||
## [2.0.1337] - 2026-01-03
|
||||
|
||||
## [1.500.0] - 2026-01-03
|
||||
### Added
|
||||
|
||||
- Added `getText()` method to Text component for retrieving current text content
|
||||
|
||||
## [1.341.0] - 2026-01-03
|
||||
|
||||
## [1.338.0] - 2026-01-03
|
||||
|
||||
## [1.337.1] - 2026-01-02
|
||||
|
||||
### Added
|
||||
|
||||
+19
-4
@@ -56,6 +56,18 @@ async function watchCI(): Promise<boolean> {
|
||||
}
|
||||
}
|
||||
|
||||
function hasUnreleasedContent(content: string): boolean {
|
||||
const unreleasedMatch = content.match(/## \[Unreleased\]\s*\n([\s\S]*?)(?=## \[\d|$)/);
|
||||
if (!unreleasedMatch) return false;
|
||||
const sectionContent = unreleasedMatch[1].trim();
|
||||
return sectionContent.length > 0;
|
||||
}
|
||||
|
||||
function removeEmptyVersionEntries(content: string): string {
|
||||
// Remove version entries that have no content (just whitespace until next ## [ or EOF)
|
||||
return content.replace(/## \[\d+\.\d+\.\d+\] - \d{4}-\d{2}-\d{2}\s*\n(?=## \[|\s*$)/g, "");
|
||||
}
|
||||
|
||||
async function updateChangelogsForRelease(version: string): Promise<void> {
|
||||
const date = new Date().toISOString().split("T")[0];
|
||||
|
||||
@@ -67,11 +79,14 @@ async function updateChangelogsForRelease(version: string): Promise<void> {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Replace [Unreleased] with version and date
|
||||
content = content.replace("## [Unreleased]", `## [${version}] - ${date}`);
|
||||
// Only create version entry if [Unreleased] has content
|
||||
if (hasUnreleasedContent(content)) {
|
||||
content = content.replace("## [Unreleased]", `## [${version}] - ${date}`);
|
||||
content = content.replace(/^(# Changelog\n\n)/, `$1## [Unreleased]\n\n`);
|
||||
}
|
||||
|
||||
// Add new [Unreleased] section after # Changelog header
|
||||
content = content.replace(/^(# Changelog\n\n)/, `$1## [Unreleased]\n\n`);
|
||||
// Clean up any existing empty version entries
|
||||
content = removeEmptyVersionEntries(content);
|
||||
|
||||
await Bun.write(changelog, content);
|
||||
console.log(` Updated ${changelog}`);
|
||||
|
||||
Reference in New Issue
Block a user