0.21.0
MAJOR NEW FEATURES
- added
apply geocode
caching, more than doubling performance in the geocode benchmark. - added
--random
and--seed
options tosort
command from @pjsier, enabling reproducible, randomized "scrambling" of CSVs. - Bash shell qsv tab completion
- additional
apply operations
subcommands:- Match Trim operations - enables trimming of more than just whitespace, but also of multiple trim characters in one pass (Example):
- mtrim: Trims
--comparand
matches left & right of the string (trim_matches wrapper) - mltrim: Left trim
--comparand
matches (trim_start_matches wrapper) - mrtrim: Right trim
--comparand
matches (trim_end_matches wrapper)
- mtrim: Trims
- replace: Replace all matches of a pattern (using
--comparand
)
with a string (using--replacement
) (Std::String replace wrapper). - regex_replace: Replace the leftmost-first regex match with
--replacement
(regex replace wrapper). - titlecase - capitalizes English text using Daring Fireball titlecase style
https://daringfireball.net/2008/05/title_case - censor_check: check if profanity is detected (boolean) Examples
- censor: profanity filter
- Match Trim operations - enables trimming of more than just whitespace, but also of multiple trim characters in one pass (Example):
- added parameter validation to
apply operations
subcommands - added more robust parameter validation to
apply
command by leveraging docopt
More benchmark script improvements:
- allow binary to be changed, so users can benchmark xsv and other xsv forks by simply replacing the $bin shell variable
- now uses a much larger data file - a 1M row, 512 mb, 41 column sampling of NYC's 311 data
See CHANGELOG for details.