# Changelog

## [v0.1.1] - 2025-08-22

### Added

- NDJSON input mode: --ndjson (supports - stdin). Lines are wrapped into a JSON array for querying. Currently incompatible with `--stream`.. prints a friendly message if combined

### Fixed

- Properly await aclose()/close() to eliminate RuntimeWarning: coroutine ... was never awaited etc etc.
- Schema validation now allows nested paths (e.g., items[].price) by validating only the top level head
- Better handling of comparisons (`== != >= <= > <`), numbers (ints/floats), and `contains`

### Changed

- CSV pipeline. Convert JSON -> CSV before applying `--limit`
- Pretty printing applies only to JSON output

## [v0.1.0] - 2025-06-22

### Added
- Concurrent chunk processing for 2-5x performance improvement on large files
- Prevents freezing on large datasets
- New `run_jq_async()` and `run_jq_streaming_async()` functions for concurrent processing
- Streaming mode now processes chunks in parallel

### Improved  
- Tool remains responsive during large file processing

### Technical
- Added `aiofiles` dependency for async file operations
- Internal async architecture for streaming operations

## [v0.0.1]  
- Prototype implementation
- Initial public release
- SQL-like query syntax for JSON files
- Support for field selection, filtering, sorting, and limiting results
- Support for aggregation functions (sum, avg, count, max, min)
- Support for nested JSON traversal with dot notation
- Support for array indexing with [n] syntax
- Support for complex boolean expressions with AND, OR, and parentheses
- Support for grouping and aggregation with GROUP BY
- Support for handling special characters in field names
- Comprehensive test suite