| Apache Commons CSV |
| Version 1.8 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.8 version of Apache Commons CSV. |
| Commons CSV reads and writes files in variations of the Comma Separated Value (CSV) format. |
| |
| Commons CSV requires at least Java 8. |
| |
| This release fixes serialization compatibility of CSVRecord with versions 1.0 to 1.6. New fields added since |
| 1.7 are not serialized. Support for Serializable is scheduled to be removed in version 2.0. |
| |
| Changes in this version include: |
| |
| NEW FEATURES |
| ============== |
| |
| o CSV-255: Add CSVRecord.isSet(int) method #52. Thanks to 0x100. |
| |
| FIXED BUGS |
| ============ |
| |
| o CSV-135: Char escape doesn't work properly with quoting. Thanks to Mateusz Zakarczemny. |
| o CSV-244: Test case failures following CSVFormat#equals() update. |
| o CSV-243: CSVFormat withTrim() and withIgnoreSurroundingSpaces() need better docs. |
| o CSV-242: CSVFormat equals() and hashCode() don't use all fields. |
| o CSV-241: CSVFormat#validate() does not account for allowDuplicateHeaderNames #43. Thanks to LuckyIlam, Gary Gregory. |
| o CSV-245: Post 1.7 release fixes. Thanks to Alex Herbert. |
| o CSV-252: Upgrade test framework to JUnit 5 Jupiter #49, #50. Thanks to Alex Herbert. |
| o CSV-247: A single empty header is allowed when not allowing empty column headers. #47. Thanks to Alex Herbert, Gary Gregory. |
| o CSV-248: CSVRecord is not Serializable. Thanks to Alex Herbert. |
| o Use test scope for supercsv #48. Thanks to Alex Herbert. |
| |
| CHANGES |
| ========= |
| |
| o Update tests from H2 1.4.199 to 1.4.200. Thanks to Gary Gregory. |
| o Update tests from Hamcrest 2.1 to 2.2. Thanks to Gary Gregory. |
| o Update tests from Mockito 3.1.0 to 3.2.4. Thanks to Gary Gregory. |
| o Fix typos in site and test #53. Thanks to Chen. |
| o Fix typo performance test #55. Thanks to Chen. |
| |
| |
| Historical list of changes: https://commons.apache.org/proper/commons-csv/changes-report.html |
| |
| For complete information on Apache Commons CSV, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons CSV website: |
| |
| https://commons.apache.org/proper/commons-csv/ |
| |
| Download page: https://commons.apache.org/proper/commons-csv/download_csv.cgi |
| |
| Have fun! |
| -Apache Commons CSV team |
| |
| ------------------------------------------------------------------------------ |
| |
| Apache Commons CSV |
| Version 1.7 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.7 version of Apache Commons CSV. |
| Commons CSV reads and writes files in variations of the Comma Separated Value (CSV) format. |
| |
| The Apache Commons CSV library provides a simple interface for reading and writing |
| CSV files of various types. |
| |
| Feature and bug fix release (Java 8) |
| |
| Changes in this version include: |
| |
| NEW FEATURES |
| ============== |
| |
| o CSV-233: Add predefined CSVFormats for printing MongoDB CSV and TSV. Thanks to Gary Gregory. |
| o CSV-234: Add support for java.sql.Clob. Thanks to Roberto Benedetti, Gary Gregory. |
| o CSV-239: Cannot get headers in column order from CSVRecord. Thanks to Gary Gregory, Dave Moten. |
| |
| FIXED BUGS |
| ============ |
| |
| o CSV-208: Fix escape character for POSTGRESQL_TEXT and POSTGRESQL_CSV formats. Thanks to Jurrie Overgoor. |
| o CSV-232: Site link "Source Repository" does not work. Thanks to Jurrie Overgoor, Gary Gregory. |
| o CSV-238: Escape quotes in CLOBs #39. Thanks to Stephen Olander-Waters. |
| |
| CHANGES |
| ========= |
| |
| o CSV-237: Update to Java 8. Thanks to Gary Gregory. |
| o Update tests from H2 1.4.198 to 1.4.199. Thanks to Gary Gregory. |
| |
| |
| Historical list of changes: https://commons.apache.org/proper/commons-csv/changes-report.html |
| |
| For complete information on Apache Commons CSV, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons CSV website: |
| |
| https://commons.apache.org/proper/commons-csv/ |
| |
| Download it from https://commons.apache.org/proper/commons-csv/download_csv.cgi |
| |
| Have fun! |
| -Apache Commons CSV team |
| |
| ------------------------------------------------------------------------------ |
| |
| Apache Commons CSV |
| Version 1.6 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.6 version of |
| Apache Commons CSV. Commons CSV reads and writes files in variations of the |
| Comma Separated Value (CSV) format. |
| |
| CSV requires at least Java 7. |
| |
| The Apache Commons CSV library provides a simple interface for reading and |
| writing CSV files of various types. |
| |
| Feature and bug fix release. |
| |
| Changes in this version include: |
| |
| NEW FEATURES |
| ============== |
| |
| o CSV-217: Add autoFlush option for CsvPrinter. PR #24. |
| Thanks to Korolyov Alexei. |
| o CSV-220: Add API org.apache.commons.csv.CSVFormat.withSystemRecordSeparator(). |
| Thanks to Gary Gregory. |
| |
| FIXED BUGS |
| ============ |
| |
| o CSV-219: The behavior of quote char using is not similar as Excel does when |
| the first string contains CJK char(s). Thanks to Zhang Hongda. |
| o CSV-172: Don't quote cells just because they have UTF-8 encoded characters. |
| Thanks to Andrew Pennebaker. |
| o CSV-223: Inconsistency between Javadoc of CSVFormat DEFAULT EXCEL. |
| Thanks to Samuel Martin. |
| o CSV-209: Create CSVFormat.ORACLE preset. Thanks to Gary Gregory. |
| o CSV-224: Some multi-iterator parsing peek sequences incorrectly consume |
| elements. Thanks to David Warshaw. |
| o CSV-225: Parse method should avoid creating a redundant BufferedReader. |
| Thanks to Anson Schwabecher. |
| |
| CHANGES |
| ========= |
| |
| o CSV-231: Add more documentation to CSVPrinter. |
| |
| |
| Have fun! |
| -Apache Commons CSV team |
| |
| ------------------------------------------------------------------------------ |
| |
| Apache Commons CSV |
| Version 1.5 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.5 version of Apache Commons CSV. |
| Commons CSV reads and writes files in variations of the Comma Separated Value (CSV) format. |
| |
| CSV requires at least Java 7. |
| |
| The Apache Commons CSV library provides a simple interface for reading and writing |
| CSV files of various types. |
| |
| Feature and bug fix release |
| |
| Changes in this version include: |
| |
| NEW FEATURES |
| ============== |
| |
| o CSV-189: CSVParser: Add factory method accepting InputStream. Thanks to Peter Holzwarth, Gary Gregory. |
| o CSV-190: Add convenience API CSVFormat.print(File, Charset). Thanks to Gary Gregory. |
| o CSV-191: Add convenience API CSVFormat.print(Path, Charset). Thanks to Gary Gregory. |
| o CSV-192: Add convenience API CSVParser.parse(Path, Charset, CSVFormat). Thanks to Gary Gregory. |
| o CSV-205: Add convenience API CSVFormat#printer() to print to System.out. Thanks to Gary Gregory. |
| o CSV-207: Provide a CSV Format for printing PostgreSQL CSV and Text formats. Thanks to Gary Gregory. |
| o CSV-214: Adding a placeholder in the Lexer and CSV parser to store the end-of-line string. Thanks to Nitin Mahendru, Gary Gregory. |
| |
| FIXED BUGS |
| ============ |
| |
| o CSV-203: withNullString value is printed without quotes when QuoteMode.ALL is specified; add QuoteMode.ALL_NON_NULL. PR #17. Thanks to Richard Wheeldon, Kai Paroth. |
| o CSV-194: Fix outdated comments about FileReader in CSVParser #13. Thanks to Marc Prud'hommeaux. |
| o CSV-193: Fix incorrect method name 'withFirstRowAsHeader' in user guide. Thanks to Matthias Wiehl. |
| o CSV-171: Negative numeric values in the first column are always quoted in minimal mode. Thanks to Gary Gregory, Michael Graessle, Adrian Bridgett. |
| |
| CHANGES |
| ========= |
| |
| o CSV-187: Update platform requirement from Java 6 to 7. Thanks to Gary Gregory. |
| o CSV-201: Do not use RuntimeException in CSVParser.iterator().new Iterator() {...}.getNextRecord(). Thanks to Benedikt Ritter, Gary Gregory. |
| |
| |
| Historical list of changes: https://commons.apache.org/proper/commons-csv/changes-report.html |
| |
| For complete information on Apache Commons CSV, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons CSV website: |
| |
| https://commons.apache.org/proper/commons-csv/ |
| |
| Have fun! |
| -Apache Commons CSV team |
| |
| ------------------------------------------------------------------------------ |
| |
| Apache Commons CSV |
| Version 1.4 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.4 version of Apache Commons CSV. |
| Commons CSV reads and writes files in variations of the Comma Separated Value (CSV) format. |
| |
| CSV requires at least Java 6. |
| |
| The Apache Commons CSV library provides a simple interface for reading and writing |
| CSV files of various types. |
| |
| Feature and bug fix release |
| |
| Changes in this version include: |
| |
| NEW FEATURES |
| ============== |
| |
| o CSV-182: Allow some printing operations directly from CSVFormat. Thanks to Gary Gregory. |
| |
| |
| CHANGES |
| ========= |
| |
| o CSV-181: Make CSVPrinter.print(Object) GC-free. Thanks to Gary Gregory. |
| o CSV-183: Drop ferc.gov tests. |
| |
| |
| Historical list of changes: https://commons.apache.org/proper/commons-csv/changes-report.html |
| |
| For complete information on Apache Commons CSV, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons CSV website: |
| |
| https://commons.apache.org/proper/commons-csv/ |
| |
| Have fun! |
| -Apache Commons CSV team |
| |
| ------------------------------------------------------------------------------ |
| |
| Apache Commons CSV |
| Version 1.3 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.3 version of Apache Commons CSV. |
| Commons CSV reads and writes files in variations of the Comma Separated Value (CSV) format. |
| |
| CSV requires at least Java 6. |
| |
| The Apache Commons CSV library provides a simple interface for reading and writing |
| CSV files of various types. |
| |
| Feature and bug fix release. |
| |
| Changes in this version include: |
| |
| NEW FEATURES |
| ============== |
| |
| o CSV-179: Add shortcut method for using first record as header to CSVFormat. |
| o CSV-180: Add withHeader(Class? extends Enum>) to CSVFormat. |
| o CSV-159: Add IgnoreCase option for accessing header names. Thanks to Yamil Medina. |
| o CSV-169: The null string should be case-sensitive when reading records. Thanks to Gary Gregory. |
| o CSV-175: Support for ignoring trailing delimiter. Thanks to Gary Gregory, Chris Jones. |
| o CSV-177: Support trimming leading and trailing blanks. Thanks to Gary Gregory. |
| o CSV-178: Create default formats for Informix UNLOAD and UNLOAD CSV. Thanks to Gary Gregory. |
| |
| FIXED BUGS |
| ============ |
| |
| o CSV-168: CSVFormat.nullString should not be escaped. Thanks to Gary Gregory, cornel creanga. |
| o CSV-170: CSVFormat.MYSQL nullString should be "\N". Thanks to Gary Gregory, cornel creanga. |
| o CSV-161: Fix Javadoc to say CSVFormat with() methods return a new CSVFormat. Thanks to Gary Gregory, Kristof Meixner, Emmanuel Bourg. |
| |
| CHANGES |
| ============ |
| |
| o CSV-167: Comment line hides next record; update Javadoc to make behavior clear. Thanks to Rene. |
| o CSV-153: CSVPrinter doesn't skip creation of header record if skipHeaderRecord is set to true. Thanks to Wren. |
| |
| |
| Have fun! |
| -Apache Commons CSV team |
| |
| ------------------------------------------------------------------------------ |
| |
| Apache Commons CSV |
| Version 1.2 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.2 version of Apache Commons CSV. |
| Commons CSV reads and writes files in variations of the Comma Separated Value (CSV) format. |
| |
| CSV requires at least Java 6. |
| |
| The Apache Commons CSV library provides a simple interface for reading and writing |
| CSV files of various types. |
| |
| Feature and bug fix release |
| |
| Changes in this version include: |
| |
| NEW FEATURES |
| ============== |
| |
| o CSV-157: Add enum CSVFormat.Predefined that contains the default CSVFormat values. |
| |
| FIXED BUGS |
| ============ |
| |
| o CSV-145: CSVFormat.with* methods clear the header comments. Thanks to Frank Ulbricht. |
| o CSV-156: Incorrect Javadoc on QuoteMode.NONE. Thanks to Jason Steenstra-Pickens. |
| |
| |
| Historical list of changes: https://commons.apache.org/proper/commons-csv/changes-report.html |
| |
| For complete information on Apache Commons CSV, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons CSV website: |
| |
| https://commons.apache.org/proper/commons-csv/ |
| |
| Have fun! |
| -Apache Commons CSV team |
| |
| ------------------------------------------------------------------------------ |
| |
| Apache Commons CSV |
| Version 1.1 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.1 version of Apache Commons CSV. |
| Commons CSV reads and writes files in variations of the Comma Separated Value (CSV) format. |
| |
| CSV requires at least Java 6. |
| |
| The Apache Commons CSV library provides a simple interface for reading and writing |
| CSV files of various types. |
| |
| This is our second release. |
| |
| Changes in this version include: |
| |
| New features: |
| o [CSV-129] Add CSVFormat#with 0-arg methods matching boolean arg methods. |
| o [CSV-131] Save positions of records to enable random access. Thanks to Holger Stratmann. |
| o [CSV-139] CSVPrinter.printRecord(ResultSet) with metadata. |
| |
| Fixed Bugs: |
| o [CSV-140] QuoteMode.NON_NUMERIC doesn't work with CSVPrinter.printRecords(ResultSet). Thanks to Damjan Jovanovic. |
| o [CSV-130] CSVFormat#withHeader doesn't work well with #printComment, add withHeaderComments(String...). Thanks to Sergei Lebedev. |
| o [CSV-128] CSVFormat.EXCEL should ignore empty header names. |
| o [CSV-132] Incorrect Javadoc referencing org.apache.commons.csv.CSVFormat withQuote(). Thanks to Sascha Szott. |
| |
| Changes: |
| o [CSV-124] Improve toString() implementation of CSVRecord. Thanks to Kalyan. |
| o [CSV-134] Unified parameter validation. Thanks to wu wen. |
| |
| Historical list of changes: https://commons.apache.org/proper/commons-csv/changes-report.html |
| |
| For complete information on Apache Commons CSV, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons CSV website: |
| |
| https://commons.apache.org/proper/commons-csv/ |
| |
| Have fun! |
| -Apache Commons CSV team |
| |
| ------------------------------------------------------------------------------- |
| |
| Apache Commons CSV |
| Version 1.0 |
| Release Notes |
| |
| |
| INTRODUCTION: |
| |
| This document contains the release notes for the 1.0 version of Apache Commons CSV. |
| Commons CSV reads and writes files in variations of the Comma Separated Value (CSV) format. |
| |
| CSV requires at least Java 6.0. |
| |
| The Apache Commons CSV library provides a simple interface for reading and writing |
| CSV files of various types. |
| |
| First release |
| |
| Changes in this version include: |
| |
| NEW FEATURES |
| ============ |
| |
| o CSV-121: IllegalArgumentException thrown when the header contains duplicate names when the column names are empty. |
| Thanks to Sebastian Hardt. |
| o CSV-120: CSVFormat#withHeader doesn't work with CSVPrinter Thanks to Sergei Lebedev. |
| o CSV-119: CSVFormat is missing a print(...) method Thanks to Sergei Lebedev. |
| o CSV-105: Add Map conversion API to CSVRecord |
| o CSV-52: Keep track of record number |
| o CSV-92: Need a way to extract parsed headers, e.g. for use in formatting |
| output |
| o CSV-65: Header support |
| o CSV-48: Predefined format for MYSQL |
| |
| FIXED BUGS |
| ========== |
| |
| o CSV-125: No longer works with Java 6 |
| o CSV-122: NullPointerException when empty header string and and null string of "". |
| Thanks to Mike Lewis. |
| o CSV-118: CSVRecord.toMap() throws NPE on formats with no |
| headers. Thanks to Enrique Lara. |
| o CSV-113: Check whether ISE/IAE are being used appropriately |
| o CSV-114: CSVFormat constructor should reject a header array with duplicate |
| entries |
| o CSV-112: HeaderMap is inconsistent when it is parsed from an input with |
| duplicate columns names |
| o CSV-111: CSVRecord.toMap() fails if row length shorter than header length |
| o CSV-106: CSVFormat.format allways append null |
| o CSV-100: CSVParser: getHeaderMap throws NPE |
| o CSV-53: CSVRecord does not verify that the length of the header mapping |
| matches the number of values |
| o CSV-54: Confusing semantic of the ignore leading/trailing spaces parameters |
| o CSV-34: CSVFormat describes itself as immutable, but it is not - in |
| particular it is not thread-safe |
| o CSV-36: Endless loops in CSV parser |
| o CSV-13: NullPointerException in CSVPrinter.print()/println() |
| o CSV-23: Excel strategy uses wrong separator |
| |
| CHANGES |
| ======= |
| |
| o CSV-117: Validate format parameters in constructor |
| o CSV-42: Lots of possible changes Thanks to Bob Smith. |
| o CSV-78: Use Character instead of char for char fields except delimiter |
| o CSV-99: Revert Builder implementation in CSVFormat |
| o CSV-93: Allow the handling of NULL values |
| o CSV-68: Use the Builder pattern for CSVFormat |
| o CSV-84: Clarify comment handling |
| o CSV-25: CSVParser.nextValue() seems pointless |
| o CSV-97: Allow the String value for null to be customized for the CSV |
| printer |
| o CSV-88: Not possible to create a CSVFormat from scratch |
| o CSV-94: Lexer should only use char fields |
| o CSV-71: Add convenience methods to CSVLexer |
| o CSV-59: Is CharBuffer really needed, now that StringBuilder is available? |
| o CSV-55: Replace while(true)-loop in CSVParser.getRecord with do-while-loop |
| o CSV-45: CSVPrinter overhaul |
| o CSV-49: CSVStrategy has modifiable public static variables Thanks to Bob Smith. |
| o CSV-46: Reduce visibility of methods in internal classes |
| o CSV-26: ExtendedBufferedReader does too much |
| o CSV-27: Decide whether to keep the csv.writer subpackage |
| |
| |
| Historical list of changes: https://commons.apache.org/proper/commons-csv/changes-report.html |
| |
| For complete information on Apache Commons CSV, including instructions on how to submit bug reports, |
| patches, or suggestions for improvement, see the Apache Apache Commons CSV website: |
| |
| https://commons.apache.org/proper/commons-csv/ |
| |
| Have fun! |
| -Apache Commons CSV team |
| |