What's new in csvtk (CSV Tool Kit) 0.30.0
Mar 15, 2024
- csvtk:
- grouping subcommands in help message.
- add a new global flag --quiet. #261
- add a new global flag -U, --delete-header for disable outputing the header row. Supported commands: concat, csv2tab/tab2csv, csv2xlsx/xlsx2csv, cut, filter, filter2, freq, fold/unfold, gather, fmtdate, grep, head, join, mutate, mutate2, replace, round, sample. #258
- support more commands with -Z/--show-row-number: head.
- csvtk dim:
- fix duplicated rows for multiple input files, this bug was introduced in v0.27.0.
- csvtk concat:
- fix panic when no data found. #259
- csvtk spread:
- fix flag checking of -k and -v.
- csvtk sort:
- fix ordering when given multiple custom levels.
- csvtk filter/filter2:
- fix printing row number with -Z.
- csvtk xls2csv:
- output raw data. #262
- csvtk pretty:
- change the default value of -n/--buf-rows from 128 to 1024, and 0 for loading all data.
- csvtk join:
- new flag -s/--suffix for adding suffixes to colnames from each file. #263
New in csvtk (CSV Tool Kit) 0.29.0 (Nov 27, 2023)
- New commands:
- Fix-quotes: fix malformed CSV/TSV caused by double-quotes. #260
- Del-quotes: remove extra double-quotes added by fix-quotes.
- Csvtk del-header:
- Fix deleting headers of 2nd and later files. #257
- Csvtk concat:
- Fix panic when no data found.
- Csvtk sort:
- Support column names containing colons. #254
- Csvtk filter2:
- Update doc: add the in keyword. #195
- Fix specifying the position for the new column containing only a constant string. #252
- Csvtk plot:
- Add a new flag --tick-label-size.
- Csvtk pretty:
- Fix showing cell data containing "tabs", by replacing tabs with spaces.
New in csvtk (CSV Tool Kit) 0.28.0 (Sep 22, 2023)
- csvtk:
- Add the shortcut -X for the flag --infile-list.
- csvtk pretty:
- Support field ranges for -m/--align-center and -r/--align-right.
- csvtk spread:
- Support values sharing the same keys.
- csvtk join:
- A new flag -P/--prefix-duplicates: add filenames as colname prefixes only for duplicated colnames.
- csvtk mutate2:
- Fix changing the order of the header row, the code was accidentally missing during code refactoring in v0.27.0.
- csvtk xlsx2csv:
- Fix open /tmp/excelize-: no such file or directory error for big .xlsx files.
- csvtk comb:
- Fix the empty result bug for alphabet sizes greater than 64.
New in csvtk (CSV Tool Kit) 0.27.2 (Aug 20, 2023)
- Csvtk pretty:
- Fix the bug of empty first row with -H/--no-header-row, introduced in v0.27.0.
- New style 3line for three-line table.
- Csvtk csv2xlsx:
- Binaries compiled with go1.21 would result in a broken xlsx file.
- Csvtk splitxlsx:
- Fix the error of invalid worksheet index.
New in csvtk (CSV Tool Kit) 0.27.1 (Aug 17, 2023)
- csvtk filter2/mutate2:
- Fix the bug of selecting with field numbers. #242
New in csvtk (CSV Tool Kit) 0.27.0 (Aug 15, 2023)
- csvtk:
- code refactoring and simplifying code, with 16% less code.
- most commands support open column range syntax, e.g., csvtk grep -f 2-. #120
- only selected column names are not allowed to be duplicated in the input data: box, corr, filter, filter2, fold, freq, gather, historysort, inter, join, line, mutate, mutate2, rename, replace, sep, split, summary, unfold, uniq, watch. Other commands do not have the restriction. #235
- add a new global flag -Z/--show-row-number, supported commands: cut, csv2tab, csv2xlsx, tab2csv, pretty.
- the colum name of row number changes from "n" to "row": csv2xlsx, csv2tab, cut, filter, filter2, grep, pretty, sample, tab2csv.
- new command:
- csvtk spread: spread a key-value pair across multiple columns, like tidyr::spread/pivot_wider.
- #91, #236, #239
- csvtk mutate/mutate2:
- new flags --at, --before, --after for specifying the position of the new column. #193
- csvtk cut:
- fix unselect range error. #234
- fix -i/--ignore-case.
- csvtk pretty:
- allow align-center and align-right for specific columns. #240
- csvtk round:
- fix bug of failing to round scientific notation with value small than one, e.g., 7.1E-1.
- csvtk summary:
- fix duplicated columns.
- fix result error when multiple stats applied to the same column.
- csvtk corr/watch:
- rewrite and fix bug, support choosing fields with column names.
New in csvtk (CSV Tool Kit) 0.26.0 (Jun 29, 2023)
- Near all commands skip empty files now.
- The global flag --infile-list accepts stdin "-".
- New command csvtk fix: fix CSV/TSV with different numbers of columns in rows.
- csvtk pretty: rewrite to support wrapping cells.
- csvtk cut/fmtdate/freq/grep/rename/rename2/replace/round: allow duplicated column names.
- csvtk csv2xlsx: optionally stores numbers as float.
- csvtk xlsx2csv: fix bug where xlsx2csv treats small number (padj < 1e-25) as 0. It's solved by updating the excelize package.
- csvtk join: a new flag for adding filename as column name prefix. by @tetedange13
- csvtk mutate2: fix wrongly treating strings like E10 as numbers in scientific notation.
- csvtk sep: fix the logic. #
- csvtk space2tab: fix "bufio.Scanner: token too long".
New in csvtk (CSV Tool Kit) 0.25.0 (Sep 22, 2022)
- csvtk: report empty files.
- csvtk join: fix loading file with no records.
- csvtk filter2/muate2:
- support variable format of ${var} with special charactors including commas, spaces, and parentheses, e.g., ${a,b}, ${a b}, or ${a (b)}.
- csvtk sort: fix checking non-existed fileds.
- csvtk plot box/hist/line: new flag --skip-na for skipping missing data.
- csvtk csv2xlsx: stores number as float.
- csvtk summary: new functions argmin and argmax.
New in csvtk (CSV Tool Kit) 0.24.0 (Nov 24, 2021)
- Incompatible changes:
- csvtk mutate2/summary:
- mutate2: remove the option -L/--digits.
- use the same option -w/--decimal-width to limit floats to N decimal points.
- new command csvtk fmtdate: format date of selected fields. #159
- csvtk grep: fix bug for searching with -r -p ..
- csvtk csv2rst: fix bug for data containing unicode. #137
- csvtk filter2: fix bug for date expression. #146
- csvtk mutate2/filter2:
- change the way of rexpression evaluation.
- add custom functions: len(). #153
- fix bug when using two or more columns with common prefixes in column names. #173
- fix value with single or double quotes. #174
- csvtk cut: new flags -m/--allow-missing-col and -b/--blank-missing-col. #156
- csvtk pretty: still add header row for empty column.
- csvtk csv2md: better format.
- csvtk join: new flag -n/--ignore-null. #163
New in csvtk (CSV Tool Kit) 0.23.0 (Apr 16, 2021)
- Changes
- csvtk v0.23.0 Github Releases (by Release)
- new comand: csvtk csv2rst for converting CSV to reStructuredText format. #137
- csvtk pretty: add header separator line. #123
- csvtk mutate2/summary: fix message and doc. Thanks @VladimirAlexiev #127
- csvtk mutate2: fix null coalescence: ??. #129
- csvtk genautocomplete: supports bash|zsh|fish|powershell. #126
- csvtk cat: fix progress bar. #130
- csvtk grep: new flag immediate-output.
- csvtk csv2xlsx: fix bug for table with > 26 columns. 138
New in csvtk (CSV Tool Kit) 0.22.0 RC 2 (Jan 10, 2021)
- Csvtk:
- Global flag -t does not overide -D anymore. #114
- If the executable/symlink name is tsvtk the -t/--tabs option for tab input is set. Thanks @bsipos. #117
- New command: csvtk csv2xlsx for converting CSV/TSV file(s) to a single .xlsx file.
- New command: csvtk unfold for unfolding multiple values in cells of a field. #103
- Rename csvtk collapse to csvtk fold, for folding multiple values of a field into cells of groups.
- Csvtk cut: support range format 2- to choose 2nd column to the end. #106
New in csvtk (CSV Tool Kit) 0.21.0 (Jan 5, 2021)
- new command: csvtk nrow/ncol for printing number of rows or columns
- new command: round to round float to n decimal places. #112
- csvtk headers: file name and column index is optional outputted with new flag -v/--verbose
- csvtk dim: new flags --tabluar, --cols, --rows, -n/--no-files
- csvtk dim/ncol/nrow: can handle empty files now. #108
- csvtk csv2json #104
- new flag -b/--blank: do not convert "", "na", "n/a", "none", "null", "." to null
- new flag -n/--parse-num: parse numeric values for nth column(s), multiple values are supported and "a"/"all" for all columns
- csvtk xlsx2csv: fix output for ragged table. #110
- csvtk join: fix bug for joining >2 files
- csvtk uniq: new flag -n/--keep-n for keeping first N records of every key
- csvtk cut: support repeatedly selecting columns. #106