Apache Commons logo Commons CSV™ logo

Release Notes

Release History

Version Date Description
1.0 2014-08-14 First release

Release 1.0 - 2014-08-14

Type Changes By
fix No longer works with Java 6 Fixes CSV-125. britter
fix NullPointerException when empty header string and and null string of "" Fixes CSV-122. Thanks to Mike Lewis. britter
update Validate format parameters in constructor Fixes CSV-117. sebb
add IllegalArgumentException thrown when the header contains duplicate names when the column names are empty. Fixes CSV-121. Thanks to Sebastian Hardt. ggregory
add CSVFormat#withHeader doesn't work with CSVPrinter Fixes CSV-120. Thanks to Sergei Lebedev. ggregory
add CSVFormat is missing a print(...) method Fixes CSV-119. Thanks to Sergei Lebedev. ggregory
fix CSVRecord.toMap() throws NPE on formats with no headers. Fixes CSV-118. Thanks to Enrique Lara. ggregory
fix Check whether ISE/IAE are being used appropriately Fixes CSV-113. sebb
fix CSVFormat constructor should reject a header array with duplicate entries Fixes CSV-114. sebb
fix HeaderMap is inconsistent when it is parsed from an input with duplicate columns names Fixes CSV-112. britter
fix CSVRecord.toMap() fails if row length shorter than header length Fixes CSV-111. ggregory
fix CSVFormat.format allways append null Fixes CSV-106. ggregory
add Add Map conversion API to CSVRecord Fixes CSV-105. ggregory
fix CSVParser: getHeaderMap throws NPE Fixes CSV-100. ggregory
update Lots of possible changes Fixes CSV-42. Thanks to Bob Smith. ebourg
update Use Character instead of char for char fields except delimiter Fixes CSV-78. sebb
update Revert Builder implementation in CSVFormat Fixes CSV-99. britter
fix CSVRecord does not verify that the length of the header mapping matches the number of values Fixes CSV-53. britter
update Allow the handling of NULL values Fixes CSV-93. ggregory
update Use the Builder pattern for CSVFormat Fixes CSV-68. ggregory
update Clarify comment handling Fixes CSV-84. sebb
update CSVParser.nextValue() seems pointless Fixes CSV-25. ebourg
update Allow the String value for null to be customized for the CSV printer Fixes CSV-97. ggregory
update Not possible to create a CSVFormat from scratch Fixes CSV-88. ggregory
add Keep track of record number Fixes CSV-52. ggregory
update Lexer should only use char fields Fixes CSV-94. sebb
add Need a way to extract parsed headers, e.g. for use in formatting output Fixes CSV-92. ggregory
add Header support Fixes CSV-65. ebourg
fix Confusing semantic of the ignore leading/trailing spaces parameters Fixes CSV-54. sebb
update Add convenience methods to CSVLexer Fixes CSV-71. sebb
update Is CharBuffer really needed, now that StringBuilder is available? Fixes CSV-59. ebourg
update Replace while(true)-loop in CSVParser.getRecord with do-while-loop Fixes CSV-55. britter
fix CSVFormat describes itself as immutable, but it is not - in particular it is not thread-safe Fixes CSV-34. sebb
fix Endless loops in CSV parser Fixes CSV-36. yonik
fix NullPointerException in CSVPrinter.print()/println() Fixes CSV-13. ebourg
update CSVPrinter overhaul Fixes CSV-45. yonik
fix Excel strategy uses wrong separator Fixes CSV-23. ebourg
update CSVStrategy has modifiable public static variables Fixes CSV-49. Thanks to Bob Smith. ebourg
add Predefined format for MYSQL Fixes CSV-48. ebourg
update Reduce visibility of methods in internal classes Fixes CSV-46. ebourg
update ExtendedBufferedReader does too much Fixes CSV-26. jacopoc
update Decide whether to keep the csv.writer subpackage Fixes CSV-27. ebourg