# Change Log

Change history of the project. All the feature updates, bug fixes, breaking changes will be documented here.

## [0.0.24]

- Feature: Support for handling csv files without header row via columns option `parse-csv --columns 'false'`
- Feature: [Handled](https://github.com/yesoreyeram/uql/blob/2182a5bb5d011e2f495bd1b8e31878ec86e5eb99/src/tests/uql.test.ts#L33-L40) escape characters in `replace_string` method
- Fix: Implemented missing `asin`, `acos` and `atan` methods introduced in v0.0.23
- Chore: Added github workflows for testing
- Chore: Added more unit tests
- Chore: Updated dependencies

## [0.0.23]

- Feature: new methods `sinh`, `cosh`, `tanh`, `asin`, `acos`, `atan`, `asinh`, `acosh`, `acosh`, `atan2` and `abs` were added

## [0.0.22]

- Chore: Updated dependencies
- CHore: Moved from the package `nearley` to the fork `@yesoreyeram/nearley`

## [0.0.21]

- Chore: Updated dependencies including JSONata

## [0.0.20]

- Chore: Updated outdated dependencies

## [0.0.19]

- Feature: new root level command `pivot` added

## [0.0.18]

- Feature: new method `atob` and `btoa` added
- Feature: new method `substring` added

## [0.0.17]

- Feature: new methods `percentage`,`split`,`replace_string`,`reverse`,`pack`,`array_to_map` and `array_from_entries`

## [0.0.16]

- Feature: new root level command `where` added to support basic filters
- Feature: new root level command `project-reorder` added
- Feature: new method `extract` added to extract part of the string using regex
- Feature: new summarize methods `countif`, `sumif`, `minif` and `maxif`

## [0.0.15]

- Feature: new root level command `jsonata`
- Feature: `extend` command now support aliasing for ref fields

## [0.0.14]

- Feature: Support for comments at the end of the line. Everything that stay after `#` will consider as comment

## [0.0.13]

- Feature: More math functions added. (floor/ceil/round/sign/pow/sin/cos/tan/log/log2/log10)
- Feature: New function `kv` which converts object into array of key value pairs
- Feature: New root level command `distinct` which returns uniq values

## [0.0.12]

- Feature: `parse_url` support added
- Feature: `parse_urlquery` support added
- Bug fix: Fixed a bug by which the `project` command should work correctly on non-array objects

## [0.0.8]

- Feature: new lines starting with `#` will be considered comments
- New command: `mv-expand` added. This expand multi value array into multiple records
- Bug fix: fixed a bug where new lines in windows (`\r\n`) doesn't work

## [0.0.7]

- `parse-yaml` support added

## [0.0.6]

- Summarize by multiple props
- New summarize functions added - `first`, `last`

## [ 0.0.5 ]

- Date utils added (`tounixtime`,`format_datetime`,`add_datetime`,`startofminute`,`startofhour`,`startofday`,`startofmonth`,`startofweek`,`startofyear`)
- Bug fixes

## [ 0.0.4 ]

- Basic parsing functions added via `parse-json`, `parse-csv` and `parse-xml`
- Bug fixes

## [ 0.0.3 ]

- Basic conversion functions added in `project` and `extend` commands. (`toint`, `tolong`, `tobool`, `tostring`,`todouble`, `tofloat`, `todatetime`, `unixtime_seconds_todatetime`, `unixtime_nanoseconds_todatetime`, `unixtime_milliseconds_todatetime` and `unixtime_microseconds_todatetime` )

## [ 0.0.2 ]

- Basic commands added. (`hello`,`ping`,`echo`,`count`,`project`,`project-away`,`limit` and `order by`)

## [ 0.0.1 ]

- Initial placeholder version
