Skip to main content

## Change Log

Changes from Version 1.6 to 1.7

- Added split_regex command to split a field using regular expressions.
- Added pivot command to perform simple table pivoting.
- Added rowsort command to perform sorting fields within CSV records.
- Added erase command to remove fields from records using regex.
- Added squash command to reduce rows with same key fields to single row.
- Added -ix option to exec command to ignore exit codes from program being executed.
- The stat command now supports -fs and -fn options for more detailed reports.
- Added errorif() function to expression language.
- The printf command now understands backspace escaped characters like \t and \n.
- Added -csv option to printf command to force output to be CSV.
- The -skip and -pass options now can use $line and $file variables.
- The split_fixed command can now split on variable field length.
- Added -a and -s options to trim command to remove embedded spaces.

Changes from Version 1.5 to 1.6

- Added number command to convert formatted numbers to arithmetic values.
- Added write_multi command to write multi-line master/detail records.
- Added -hdr option to allow CSV header record to be specified.
- Added isint, find and round functions to expression language.
- Added -q option to printf command to support quoting of internal double-quotes.
- Added -ec option to validate command to allow for error return value on validation failure.
- Added -me option to flatten command to support master/detail flattening.
- Added -if option to eval command to mitigate problems with the expression language if() function.
- Added -en option to the SQL generation commands to convert empty fields to NULLs.
- Added -k option to join command to retain all join fields on output.

Changes from Version 1.4 to 1.5

- Added -skip and -pass options to filter command input and output
- Added ability to specify default options and aliases via configuration files.
- Actual config file in use is displayed if CSVfix is run with no command line parameters.
- Added head and tail commands to display first/last CSV records in file.
- Added -ic option to join command to ignore case of joined fields.
- Added -f option to printf command to specify order.
- Added -s option to asci_table command to add separator after each record.
- The template command now allows expressions in templates.
- Added -fn option to template command to allow for templated output file names.
- Add -f option to shuffle command to allow shuffling of fields.
- Added several new functions for use by expression language.
- The random number generator used by the expression language can be seeded with the -seed option.
- Can now use != as well as <> for not-equal operator in expression language.
- Output of help now goes to standard output, not standard error.
- Removed the -rin option as the idea behind it was basically wrong.

Changes from Version 1.3 to 1.4

- Added timestamp command.
- Added call command to call function in external DLL.
- Added money command to do currency formatting.
- Added -rf option to exclude command to allow specifying of fields from end of record.
- Added -d option to eval command to discard input data
- Added -h option to odbc_get command to get column names as CSV header record
- Fixed -s option bug for find and remove commands
- The validate command now supports multiple error reports for the same record.
- Added -rin flag to make use of expressions mixing numbers and strings a bit easier.
- Added -rh flag to sort command to retain header record on output
- Various updates to the manual.

Changes from Version 1.2 to 1.3

- Added block command to mark blocks of records.
- Added stat command to produce CSV file record/field counts.
- Improved error reporting for commands using the expression language.
- Many bug fixes.

Changes from Version 1.1 to 1.2

- Command abbreviations are now supported.
- Added check command to do CSV syntactic validation.
- The odbc_get command now has a -dir option to simplify using the ODBC text driver.
- The map command now supports dynamically mapping to other fields in the input record.
- Added match() function to match regular expressions to eval command.
- Added -r flag to eval command to allow field replacement as well as appending.
- The find and remove commands now support field testing via eval-style expressions.
- The exclude command now supports excluding fields based on an eval-style expression.
- The -si flag in the find and remove commands now works correctly.

Changes from Version 1.0 to 1.1

- The find and remove commands now support non-regular expression strings.
- Added diff command for comparing CSV files.
- Added file_merge command for merging sorted files.
- The split_char command now supports splitting on character type transitions.
- Added rmnew command to remove newlines inside CSV fields.
- Help now implemented using HelpNDoc - looks nicer & spelling mistakes all (?) fixed.

Changes from Version 0.97 to 1.0

- Added the from_xml command to convert XML data to CSV. This is a much improved facility over the original read_xml command, which was removed a while back.
- Added ability to search for ranges and lengths with the find and remove commands.
- Commands like order now support field indexes specified as ranges.
- Fixed problem with trailing empty fields being ignored.
- Added -nc flag to order command to allow skipping of non-existent input fields
- Added new functions to eval command.
- Added -d flag to allow decremented numbers for sequence command.
- Added -fc flag to find and remove commands to allow search on CSV field counts.
- The put command can now output field counts.

Older change log entries removed for clarity.

Created with the Personal Edition of HelpNDoc: Produce Kindle eBooks easily

####