Skip to content

v0.1.5

Choose a tag to compare

@ZtaMDev ZtaMDev released this 25 Dec 22:06
· 33 commits to main since this release

Release Notes - v0.1.5

round-core v0.1.5

Improved keyed list reconciliation for better performance and state preservation.

New Features

  • Keyed for loops: Use key=expr to enable efficient DOM reconciliation:
    {for(todo in todos()) key=todo.id {
        <TodoItem todo={todo} />
    }}
    • Preserves input focus and cursor position during list reordering
    • Minimizes DOM mutations by reusing existing nodes
  • ForKeyed component: New runtime component for keyed iteration with a "minimal-move" algorithm.

VS Code Extension v0.1.5

Major fixes to hover, diagnostics, and JSX superset parsing.

Bug Fixes

  • catch(e) hover now works correctly: Fixed a bug where hovering over catch showed "Fragment" instead of TypeScript info.
  • FOR loops now transform properly: Fixed a parsing bug where for(item in list) loops would show "Expression expected" errors.
  • Accurate offset mapping: Improved surgical gap preservation for try, catch, for, if, and switch transformations.
  • NaN guard in edits: Added protection against invalid edit ranges that caused offset drift.

Improvements

  • extractCondition now returns start: Fixes offset calculations for all control-flow handlers.
  • Keyed FOR loop support: The LSP now correctly parses key=expr syntax and maps it to ForKeyed.