Changes from v4.7.2:
- Add
escape()
expression helper to "escape" JavaScript functions and values from internal parsing. - Add
names()
selection helper for renaming columns by index. (#195) - Add support for array literals and escaped values in expression parsing.
- Fix
rollup()
output early exit condition to support literal expressions without aggregate operations. - Improve TypeScript types. (#182)
Description
This version adds the aq.escape()
expression helper: this allows users to pass in JavaScript functions that are invoked as-is to process row objects: no internal parsing and rewriting, thus supporting closures! The helper can be applied anywhere Arquero accepts single-table table expressions, though note that it sidesteps internal optimizations and breaks portability (serialization) of Arquero queries to worker threads or other data sources. The escape()
function also accepts literal values, for example allowing Date
or Map
instances to be assigned directly as a column values.
This version also adds the aq.names()
selection helper that makes it easier to select and rename columns based on their integer column indices.