v0.4.0
Overview
This release restructures the search backend architecture and adds isolated backend test sandboxes.
Screen.Recording.2026-06-14.at.11.01.38.mov
Highlights
- Split backend implementation into dedicated files:
ast-grep-core.elast-grep-sync.elast-grep-consult.elast-grep-ivy.el
- Added
ast-grep-search-backendto choose betweenauto,sync,consult, andivy. - Added
ast-grep-describe-backendto show the configured and resolved backend. - Added Eask-based test sandboxes for sync, consult, ivy, and full backend coverage.
Backend Behavior
autouses counsel/ivy whenivy-modeis active and ivy/counsel are available.- Otherwise,
autouses consult when available. - Falls back to synchronous
completing-readwhen async backends are unavailable. - Consult backend is tested on Emacs 29+.
- Sync and ivy remain available on Emacs 28.1+.
Ivy Fixes
- Fixed ivy/counsel async results not appearing in the candidate list.
- Fixed ivy live preview support.
- Ensured the ivy backend uses counsel's default async process lifecycle.
- Added real counsel/ivy sandbox tests so ivy support is actually load-bearing.
Testing and CI
- Added
Eask. - Added backend-specific commands:
eask run script test:synceask run script test:consulteask run script test:ivyeask run script test:full
- Updated GitHub Actions to run backend-specific matrices across supported Emacs versions.
Notes
No configuration change is required for existing users. The default backend remains auto.