Release Notes
0.0.576 - 7 dec 2025
Major changes
JSONL now available with all backends
External custom functions are found before internals, allowing overriding
13 new CsvPath Validation Language functions. See the CLI functions look up for usage.
headers_stack(): returns the names of the current headersclear(var|var-name): removes a variableindex_of(stack-var|stack-name, value): returns the int position of the valuetrack_any(): tracks typed values, optionally collecting values in a stack or summing themroll(date|datetime, number, unit-name): returns a date/datetime that is N-units in the future or pastday(date): returns the date of the month as an intmonth(date): returns the month of the year as an intyear(date): returns the year as an intformat_date(date|datetime, str): formats a date/datetime as a stringfingerprint(Optional[Header], ...): returns the hash of the line or the indicated header valuesformat(str-value, str-format): formats a value according to a Python string templateinterpolate(str-value, str-format): formats a value within a longer string using Python formattingxpath(xml-str, xpath-str): extracts a value from an XML document using an XPath expression
Fixes and Updates
15 function updates:
Number of times
reset_headers()has been called and on what lines tracked in variablesWildcard max length in
string()usingnone()track(): added 3rd argaddorcollect, essentially the same function as fortrack_any()push()andget()now able to take both stack vars and stack var names.get(x)creates and returns a dict var if the variable named x is not foundAdded an optional default arg to
get()concat()able to take a stack var of values to concatinateApply
regex()to all headers using theheaders()function like:regex( headers(), /…/ )size()now takes thenotnonequalifier and either a stack var or name of a stack vareq()accepts None-valued vars, as well asnone()
Other minor user-facing changes
Removed function name limitations disallowing numbers, '_', and '.' after an inital alpha char.
Made an alias to header_names_mismatch for clarity.
Added ability for transfer mode to append, rather than overwrite, using a target path ending in
+
Last updated