Skip to content

v0.19.0

Choose a tag to compare

@oribarilan oribarilan released this 02 Oct 22:03
· 1 commit to main since this release
b18877e

OpenCode v2 rollout

v0.19.0 begins the gradual rollout of OpenCode v2 support. It is experimental today; future maintenance will move to v2 only. This release still includes v1 compatibility, and no v1 removal date is set.

  • OpenCode v1: the recommended legacy pin remains v0.18.1. You can opt into v0.19.0 for the shared fixes, or keep the older pin and set updateCheck: false to suppress upgrade notifications.
  • OpenCode v2: install v0.19.0 through cli.json. For a custom leader, the plugin's experimentalV2Leader must match the host keybind. To roll back, remove the plugin entry; the v1-only v0.18.1 release does not work on v2.

See the version-specific installation instructions.

Added

  • Experimental OpenCode v2 TUI support through one dual v1/v2 package entry, without duplicating the Vim engine or adding runtime dependencies.
  • An optional installed-package compatibility harness with exact editor-state checks; lightweight harness regressions run in CI.
  • just dev2 for pinned OpenCode v2 development with isolated settings and history.

Fixed

  • Visual h/l selection now includes the cursor on both tested hosts, including backward motions and empty-buffer/EOF/EOL boundaries, while preserving the native anchor for subsequent word and line motions.
  • Visual mode re-anchors when the focused prompt editor changes.
  • The v2 form leader guard and Vim controller share the same per-activation disabled setting.
  • Compatibility checks reject JSONC project-config ancestors, ignore user tmux configuration and retain bounded form/permission completion and cleanup-failure evidence.
  • Selection normalization forwards host-owned colors without requiring an installed @opentui/core type dependency.

Validation and limits

The final v0.19.0 Git tag passed cold and warm installation on macOS ARM64, including byte-for-byte verification of installed source files and the package manifest:

Host Exact-state checks passed Named known gaps
OpenCode 1.18.33 39 2
OpenCode 2.0.15 48 2

CI passed with 337 Bun tests and 16 Python tests. Tests used isolated state and synthetic text, with no model requests or permission approvals.

This is not a full-parity or all-platforms support promise. v2 still relies on raw renderer listener ordering and explicit leader mirroring. Shared tab/wide/combining-character offset issues, snapshot-backed redo, and native nonhorizontal selection differences remain. The harness reports its tab-offset and snapshot-redo probes as known gaps rather than passes. Newer v2 versions and non-macOS runtime behavior have not been validated.

Implementation: #82. Release preparation: #84.