Skip to content

Releases: quangdang46/hashline

v0.9.12

Choose a tag to compare

@github-actions github-actions released this 17 Aug 23:24

🚀 Hashline v0.9.12 — MCP Auto-Agent Adoption

MCP instructions field now returned in initialize response (fixes #107).
AI agents (Claude, Codex, Cursor, etc.) can auto-discover Hashline as an MCP server — no manual AGENTS.md needed.

What changed

  • instructions field in MCP initialize response for seamless agent onboarding
  • Code formatted via cargo fmt

Verified

  • ✅ CI passing — all checks green on this release

Upgrade: cargo install hashline --version 0.9.12

Full Changelog: v0.9.11...v0.9.12

v0.9.11

Choose a tag to compare

@quangdang46 quangdang46 released this 17 Aug 16:25

Hashline v0.9.11

Bug Fixes

  • Fix #106: Translate insert and block anchors through shift table — INS.PRE/INS.POST previously used original line numbers directly as live buffer indices, causing compounding drift in multi-edit patches with inserts at different anchors. Block ops (INS.BLK.PRE/POST, SWAP.BLK, DEL.BLK) had the same defect.

What Changed

  • INS.PRE/INS.POST: translate anchor via shift before computing insert position
  • INS.POST uses insert_count keyed by original anchor for repeated-at-same-anchor stacking
  • Block ops: translate block_start/block_end through shift after resolve_block_span
  • DEL.BLK now removes in descending order

Tests

  • 4 regression tests covering exact reproduction cases from #106

Install

curl -fsSL https://github.com/quangdang46/hashline/releases/latest/install.sh | bash

Full changelog: https://github.com/quangdang46/hashline/blob/main/CHANGELOG.md

v0.9.10

Choose a tag to compare

@quangdang46 quangdang46 released this 11 Aug 06:09

What's Changed

  • Low-breakage accuracy improvements (snapshot collision, noop guard, symbol seeding, recovery, boundary repair) by @quangdang46 in #105

Full Changelog: v0.9.1...v0.9.10

What's Changed

  • Low-breakage accuracy improvements (snapshot collision, noop guard, symbol seeding, recovery, boundary repair) by @quangdang46 in #105

Full Changelog: v0.9.1...v0.9.10

v0.9.1

Choose a tag to compare

@github-actions github-actions released this 06 Aug 23:58

Hashline v0.9.1

Bug Fixes

  • Fix #104: DEL after bodied SWAP silently deleted wrong lines — the SWAP arm consumed every following Edit::Delete into its removal range, discarding their anchors and applying deletes at the SWAP position instead
  • Gate consuming loop on line_num so only deletes from the same parsed op belong to that SWAP

Tests

  • 8 regression tests: DEL after SWAP (single/multi-line/range), interleaved SWAPs, two DELs after one SWAP, DEL.BLK after SWAP, stale-hash guard

Install

curl -fsSL https://github.com/quangdang46/hashline/releases/latest/install.sh | bash

Full changelog: https://github.com/quangdang46/hashline/blob/main/CHANGELOG.md

v0.9.0

Choose a tag to compare

@quangdang46 quangdang46 released this 30 Jul 03:10

Hashline v0.9.0

New Features

  • Add .=(oh-my-pi) range separator support forSWAP 2.=4:` syntax

Bug Fixes

  • Fix #96: A.=B range syntax broken — tokenizer now handles standalone .= as range separator
  • Fix #102: *** Abort not canceling prior operations
  • Fix #103: find-block rejecting bare line numbers
  • Fix #101: read/patch line numbering mismatch (no more invisible line edits)
  • Fix INS.POST/INS.PRE/INS.BLK accepting line 0
  • Fix CRLF dry-run diff showing spurious \r characters

Improvements

  • Add rename --force flag

Install

curl -fsSL https://github.com/quangdang46/hashline/releases/latest/install.sh | bash

Full changelog: https://github.com/quangdang46/hashline/blob/main/CHANGELOG.md

v0.8.9

Choose a tag to compare

@github-actions github-actions released this 29 Jul 14:12

Hashline v0.8.9

Bug Fixes

  • Fix #95: SWAP.BLK/DEL.BLK range format silently corrupts files
    • Accept two-anchor format (SWAP.BLK N M) as concrete range
    • Add reversed range warning (previously silent ignore)
    • Add 9 regression tests for all edge cases

Install

curl -fsSL https://github.com/quangdang46/hashline/releases/latest/install.sh | bash

Full changelog: https://github.com/quangdang46/hashline/blob/main/CHANGELOG.md

v0.8.8

Choose a tag to compare

@quangdang46 quangdang46 released this 29 Jul 05:17
482a68f

What's Changed

  • feat: Editor API with injectable SnapshotStore/BlockResolver by @quangdang46 in #94

Full Changelog: v0.8.7...v0.8.8

What's Changed

  • feat: Editor API with injectable SnapshotStore/BlockResolver by @quangdang46 in #94

Full Changelog: v0.8.7...v0.8.8

v0.8.7

Choose a tag to compare

@github-actions github-actions released this 25 Jul 18:03

Hashline v0.8.7

Documentation

  • Overhaul README to Dicklesworthstone-class style with agent quickstart, comparison tables, architecture diagram, troubleshooting, FAQ
  • Refresh hero illustration: PNG → WEBP, robot workshop style

Bug Fixes

  • Fix #93: Preserve interior blank lines and bare - rows in patch/INS body
    • Deferred blanks now flush correctly into payloads before each new line
    • Bare - rows produce a warning AND are preserved as content

Improvements

  • Refactor code structure for improved readability and maintainability

Install

curl -fsSL https://github.com/quangdang46/hashline/releases/latest/install.sh | bash

Full changelog: https://github.com/quangdang46/hashline/blob/main/CHANGELOG.md

v0.8.6

Choose a tag to compare

@quangdang46 quangdang46 released this 10 Jul 01:21

Hashline v0.8.6

Bug Fixes

  • Accept bare INS <N>: as shorthand for INS.POST <N>: (#92) — previously bare INS was silently ignored, causing patches to only apply the DEL while the insert content was never written
  • Replace byte-slicing with UTF-8-safe truncation to prevent panic on multi-byte lines — new truncate_utf8_safe() helper walks back to the last safe char boundary

Install

curl -fsSL https://github.com/quangdang46/hashline/releases/latest/install.sh | bash

Full changelog: https://github.com/quangdang46/hashline/blob/main/CHANGELOG.md

v0.8.5

Choose a tag to compare

@github-actions github-actions released this 04 Jul 05:46

What's Changed

  • fix: find-block off-by-one line_count for files with trailing newline (Issue #90) by @quangdang46 in #91

Full Changelog: v0.8.4...v0.8.5