# Changelog

## 0.5.0

- Add `when(condition, then, else?)`, a lazy expression-level conditional.

## 0.4.0

- Prefer `$` as the current-value scope marker while keeping legacy `@`
  parsing for compatibility.
- Add jq-style current access with leading `.` paths, including `.field`,
  `.[index]`, and `..field`.
- Add top-level `const` declarations and first-class `-> expr` function
  literals with lexical binding capture.
- Add jq-friendly aliases and stages: `length`, `select`, `map`, `sort_by`,
  `reverse`, and `add`.
- Require whitespace before postfix projections so `items {id}` is projection
  syntax and `items{id}` is rejected.

## 0.3.0

- Export `JsonValue` alongside `JsonObject`.

## 0.2.0

- First npm release.

## 0.1.0

- Initial public package shape for AsterQL.
- Includes parser, scanner, lazy synchronous evaluator, conformance fixtures,
  TypeScript declarations, and a source specification.
- Adds an implementation-driven grammar reference and expanded conformance,
  parser, scanner, and laziness coverage.
