Since 1.27:
- `csv-end-of-field' no longer errors out in the presence of
   unclosed quotes.

Since 1.26:
- `csv-guess-separator' will no longer guess the comment-start
   character as a potential separator character.

Since 1.25:
- The ASCII control character 31 Unit Separator can now be
  recognized as a CSV separator by `csv-guess-separator'.

Since 1.24:
- New function `csv--unquote-value'.
- New function `csv-parse-current-row'.

Since 1.21:
- New command `csv-insert-column'.
- New config var `csv-align-min-width' for `csv-align-mode'.
- New option `csv-confirm-region'.

Since 1.20:
- New command `csv-guess-set-separator' that automatically guesses
  and sets the CSV separator of the current buffer.
- New command `csv-set-separator' for setting the CSV separator
  manually.

Since 1.9:
- `csv-align-mode' auto-aligns columns dynamically (on screen).

Before that:
Begun on 15 November 2003 to provide lexicographic sorting of
simple CSV data by field and released as csv.el.  Facilities to
kill multiple fields and customize separator added on 9 April 2004.
Converted to a major mode and renamed csv-mode.el on 10 April 2004,
partly at the suggestion of Stefan Monnier <monnier at
IRO.UMontreal.CA> to avoid conflict with csv.el by Ulf Jasper.
Field alignment, comment support and CSV mode customization group
added on 1 May 2004.  Support for index ranges added on 6 June
2004.  Multiple field separators added on 12 June 2004.
Transposition added on 22 June 2004.  Separator invisibility added
on 23 June 2004.