692 lines
31 KiB
Plaintext
692 lines
31 KiB
Plaintext
Apache Commons CSV
|
|
Version 1.10.0
|
|
Release Notes
|
|
|
|
|
|
INTRODUCTION:
|
|
|
|
This document contains the release notes for the 1.10.0 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.
|
|
|
|
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-291: Make CSVRecord#values() public. Thanks to Gary Gregory.
|
|
o CSV-264: Add DuplicateHeaderMode for flexibility with header strictness. #114. Thanks to Sagar Tiwari, Seth Falco, Alex Herbert, Gary Gregory.
|
|
o CSV-295: Support for parallelism in CSVPrinter. Thanks to Gary Gregory.
|
|
o CSV-295: Add CSVPrinter.printRecord[s](Stream). Thanks to Gary Gregory.
|
|
o CSV-304: Add accessors for header/trailer comments #257. Thanks to Peter Hull, Bruno P. Kinoshita, Gary Gregory.
|
|
o Add github/codeql-action.
|
|
|
|
FIXED BUGS
|
|
==========
|
|
|
|
o Minor changes #172. Thanks to Arturo Bernal.
|
|
o CSV-292: No Automatic-Module-Name prevents usage in JPMS projects without repacking the JAR. Thanks to Rob Vesse.
|
|
o CSV-288: Fix for multi-char delimiter not working as expected #218. Thanks to Santhsoh, Angus.
|
|
o CSV-269: CSVRecord.get(Enum) should use Enum.name() instead of Enum.toString(). Thanks to Auke te Winkel, Gary Gregory.
|
|
o Allow org.apache.commons.csv.IOUtils.copy(Reader, Appendable, CharBuffer) to compile on Java 11 and run on Java 8. Thanks to Gary Gregory.
|
|
o CSV-300: CSVRecord.toList() does not give write access to the new List. Thanks to Markus Spann, Gary Gregory.
|
|
o CSVParser.getRecords() now throws UncheckedIOException instead of IOException. Thanks to Gary Gregory.
|
|
o CSV-274: Add comments to iterator() and stream() #270. Thanks to Peter Hull, Bruno P. Kinoshita, Gary Gregory.
|
|
o CSV-290: Fix wrong assumptions in PostgreSQL formats #265. Thanks to angusdev, Gary Gregory.
|
|
o Validate input to setDelimiter(String) for empty string #266. Thanks to Mykola Faryma.
|
|
o Bump CSVFormat#serialVersionUID from 1 to 2. Thanks to Dependabot.
|
|
o CSVParser: Identify duplicates in null, empty and blank header names #279. Thanks to Alex Herbert.
|
|
|
|
CHANGES
|
|
=======
|
|
|
|
o Bump actions/cache from 2.1.6 to 3.0.10 #196, #233, #243, #267, #271. Thanks to Dependabot, Gary Gregory.
|
|
o Bump actions/checkout from 2.3.4 to 3.1.0 #188, #195, #220, #272. Thanks to Dependabot, Gary Gregory.
|
|
o Bump actions/setup-java from 2 to 3.5.1. Thanks to Gary Gregory.
|
|
o Bump actions/upload-artifact from 3.1.0 to 3.1.1 #280. Thanks to Dependabot.
|
|
o Bump commons-parent from 52 to 56 #264, #288, #298. Thanks to Gary Gregory.
|
|
o Bump checkstyle from 8.44 to 9.2.1 #180, #190, #194, #202, #207. Thanks to Dependabot.
|
|
o Bump junit-jupiter from 5.8.0-M1 to 5.9.1 #179, #186, #201, #244, #263. Thanks to Dependabot.
|
|
o Bump jmh-core from 1.32 to 1.36 #176, #208, #229, #285. Thanks to Dependabot.
|
|
o Bump jmh-generator-annprocess from 1.32 to 1.36 #175, #206, #226, #283. Thanks to Dependabot.
|
|
o Bump mockito-core from 3.11.2 to 4.11.0 #187, #197, #204, #212, #230, #237, #251, #259, #284, #292, #297. Thanks to Dependabot, Gary Gregory.
|
|
o Bump maven-pmd-plugin from 3.14.0 to 3.19.0 #184, #219, #238, #254, #258. Thanks to Dependabot.
|
|
o Bump pmd from 6.36.0 to 6.52.0 #173, #189, #193, #199, #227, #233, #214, #236, #240, #247, #255, #273. Thanks to Dependabot, Gary Gregory.
|
|
o Bump opencsv from 5.5.1 to 5.7.1 #182, #221, #260, #281. Thanks to Gary Gregory.
|
|
o Bump spotbugs-maven-plugin from 4.3.0 to 4.7.3.0 #192, #198, #203, #211, #225, #234, #242, #245, #261, #275, #282. Thanks to Dependabot.
|
|
o Bump com.github.spotbugs:spotbugs from 4.5.3 to 4.7.2. Thanks to Gary Gregory.
|
|
o Bump h2 from 1.4.200 to 2.1.214 #200, #205, #213, #239. Thanks to Dependabot.
|
|
o Bump maven-javadoc-plugin from 3.3.0 to 3.4.1. Thanks to Gary Gregory.
|
|
o Bump biz.aQute.bnd:biz.aQute.bndlib from 5.3.0 to 6.3.1. Thanks to Gary Gregory.
|
|
o Bump jacoco-maven-plugin from 0.8.7 to 0.8.8. Thanks to Gary Gregory.
|
|
o Bump japicmp-maven-plugin from 0.15.3 to 0.16.0. Thanks to Gary Gregory.
|
|
o Bump maven-checkstyle-plugin from 3.1.2 to 3.2.0 #253. Thanks to Dependabot.
|
|
|
|
Removed:
|
|
o Serialization in CSVFormat is not supported from one version to the next.
|
|
|
|
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 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.9.0
|
|
Release Notes
|
|
|
|
|
|
INTRODUCTION:
|
|
|
|
This document contains the release notes for the 1.9.0 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.
|
|
|
|
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-275: Make CSVRecord#toList() public. Thanks to Michael Wyraz, Gary Gregory.
|
|
o Add CSVRecord#stream(). Thanks to Gary Gregory.
|
|
o Add CSVParser#stream(). Thanks to Gary Gregory.
|
|
o CSV-184: Make the method CSVRecord.putIn(Map) public. Thanks to Gaurav Agarwal, M. Steiger, Gary Gregory.
|
|
o Add test cases for CSVRecord with get(Enum) and toString. #54. Thanks to dota17.
|
|
o Add and use CSVFormat.Builder, deprecated CSVFormat#with methods, based on #73. Thanks to Gary Gregory, dota17.
|
|
o CSV-206: Add support for String delimiters #76. Thanks to Gary Gregory, dota17.
|
|
|
|
FIXED BUGS
|
|
==========
|
|
|
|
o Replace FindBugs with SpotBugs #56. Thanks to Amey Jadiye.
|
|
o Javadoc typo in CSVFormat let's -> lets #57. Thanks to Chen.
|
|
o CSV-259: CSVFormat.printWithEscapes throws StringIndexOutOfBoundsException when value is Reader #61. Thanks to Chen.
|
|
o Improve CSVFormat test coverage #63. Thanks to Chen.
|
|
o Fix CSVFileParserTest.java to allow for a null return value from record.getComment() #62. Thanks to Chen.
|
|
o Improve test coverage in CSVFormatTest #65. Thanks to Chen.
|
|
o Removed invalid Javadoc markup for CSVFormat EXCEL #64. Thanks to Chen.
|
|
o Improve CSVRecord and CSVPrinter code coverage #66. Thanks to Chen.
|
|
o Improve lexer and token coverage #67. Thanks to Chen.
|
|
o CSV-211: CSVFormat.format trims last delimiter if the delimiter is a white space #71. Thanks to Alpesh Kulkarni, Chen.
|
|
o Replace org.apache.commons.csv.Assertions.notNull() with Objects.requireNonNull(). Thanks to Gary Gregory.
|
|
o CSV-149: Line number is not proper at EOF. Thanks to Kranthi, Gary Gregory, Brent Worden, dota17.
|
|
o CSV-195: Parser iterates over the last CSV Record twice. Thanks to Rodolfo Duldulao, Rodolfo Duldulao, Michael Vitz, dota17.
|
|
o CSV-267: Minor improvements #126, #127, #130. Thanks to Arturo Bernal.
|
|
o CSV-123: Add possibility to use ResultSet header meta data as CSV header #11. Thanks to Emmanuel Bourg, Benedikt Ritter, shivakrishnaah, Gary Gregory.
|
|
o CSV-148: Add test cases for withIgnoreSurroundingSpaces() and withTrim() #70. Thanks to dota17.
|
|
o Update CSVParser.parse(File, Charset, CSVFormat) from IO to NIO. Thanks to Gary Gregory.
|
|
o CSV-271: Missing separator with print(object) followed by printRecord(Object[]) #157. Thanks to Amar Prakash Pandey.
|
|
o CSV-158: Fix EOL checking for read array in ExtendedBufferedReader #5. Thanks to Alexander Bondarev, Benedikt Ritter, Gary Gregory, Chen.
|
|
o CSV-263: Print from Reader with embedded quotes generates incorrect output #78. Thanks to Jason A. Guild, Gary Gregory.
|
|
o Replace JUnit assert by simpler but equivalent calls. #159. Thanks to Arturo Bernal.
|
|
o Update gitignore to ignore idea and vscode #160. Thanks to Seth Falco.
|
|
o CSV-281: Update CSVBenchmark #165. Thanks to belugabehr.
|
|
o CSV-283: Remove Whitespace Check Determines Delimiter Twice #167. Thanks to belugabehr.
|
|
o CSV-283: Document and Automate CSV Benchmark Harness #166. Thanks to belugabehr.
|
|
o CSV-279: Optimize Lexer Delimiter Check for One Character Delimiter #163. Thanks to belugabehr.
|
|
o SpotBugs Error: Medium: org.apache.commons.csv.CSVParser.getHeaderNames() may expose internal representation by returning CSVParser.headerNames [org.apache.commons.csv.CSVParser] At CSVParser.java:[line 599] EI_EXPOSE_REP. Thanks to Gary Gregory.
|
|
o SpotBugs Error: Medium: new org.apache.commons.csv.CSVParser(Reader, CSVFormat, long, long) may expose internal representation by storing an externally mutable object into CSVParser.format [org.apache.commons.csv.CSVParser] At CSVParser.java:[line 433] EI_EXPOSE_REP2. Thanks to Gary Gregory.
|
|
o SpotBugs Error: Medium: new org.apache.commons.csv.CSVParser(Reader, CSVFormat, long, long) may expose internal representation by storing an externally mutable object into CSVParser.headerMap [org.apache.commons.csv.CSVParser] At CSVParser.java:[line 437] EI_EXPOSE_REP2. Thanks to Gary Gregory.
|
|
o SpotBugs Error: Medium: new org.apache.commons.csv.CSVParser(Reader, CSVFormat, long, long) may expose internal representation by storing an externally mutable object into CSVParser.headerNames [org.apache.commons.csv.CSVParser] At CSVParser.java:[line 438] EI_EXPOSE_REP2. Thanks to Gary Gregory.
|
|
o SpotBugs Error: Medium: new org.apache.commons.csv.CSVPrinter(Appendable, CSVFormat) may expose internal representation by storing an externally mutable object into CSVPrinter.format [org.apache.commons.csv.CSVPrinter] At CSVPrinter.java:[line 100] EI_EXPOSE_REP2. Thanks to Gary Gregory.
|
|
o CSV-284: Formalize PerformanceTest #168. Thanks to belugabehr.
|
|
o CSV-278: Reuse Buffers in Lexer for Delimiter Detection #162. Thanks to belugabehr.
|
|
o CSV-286: Cleanup and Document Performance Test Harness #170. Thanks to belugabehr.
|
|
o CSV-265: Update buffer position when reading line comment #120. Thanks to belugabehr.
|
|
|
|
CHANGES
|
|
=======
|
|
|
|
o Update org.junit.jupiter:junit-jupiter from 5.6.0 to 5.7.0, #84 #109 Thanks to Gary Gregory.
|
|
o Update tests from Apache Commons Lang 3.9 to 3.12.0. Thanks to Gary Gregory.
|
|
o Update tests from commons-io:commons-io 2.6 to 2.11.0, #108. Thanks to Gary Gregory.
|
|
o Bump actions/checkout from v1 to v2.3.4, #79, #92, #121. Thanks to Dependabot.
|
|
o Bump commons-parent from 50 to 51 #80. Thanks to Dependabot.
|
|
o Bump tests from opencsv from 3.1 to 5.5.1 #81, #137, #158. Thanks to Dependabot, Gary Gregory.
|
|
o Update tests from super-csv from 2.2.1 to 2.4.0 #86. Thanks to Gary Gregory.
|
|
o Bump build actions/setup-java from v1.4.0 to v2, #101, #113. Thanks to Dependabot, Gary Gregory.
|
|
o Bump maven-pmd-plugin from 3.13.0 to 3.14.0 #122. Thanks to Dependabot.
|
|
o Bump tests from org.mockito:mockito-core 3.2.4 -> 3.11.2; #88, #107, #110, #123, #128, #129, #156. Thanks to Gary Gregory, Dependabot.
|
|
o Bump actions/cache from v2 to v2.1.6 #132, #153. Thanks to Dependabot.
|
|
o Bump maven-checkstyle-plugin from 3.0.0 to 3.1.2 #131. Thanks to Gary Gregory, Dependabot.
|
|
o Bump checkstyle from 8.29 to 8.44. Thanks to Gary Gregory.
|
|
o Bump junit-jupiter from 5.7.0 to 5.8.0-M1 #133, #149. Thanks to Dependabot, Gary Gregory.
|
|
o Bump commons.jacoco.version from 0.8.5 to 0.8.7 (Java 16). Thanks to Dependabot.
|
|
o Bump commons.spotbugs.version from 4.0.4 to 4.3.0 (Java 16). Thanks to Dependabot.
|
|
o Bump maven-javadoc-plugin from 3.2.0 to 3.3.0. Thanks to Gary Gregory.
|
|
o Bump jmh-generator-annprocess from 1.5.2 to 1.32 #151. Thanks to Dependabot.
|
|
o Bump PMD core from 6.29.0 to 6.36.0. Thanks to Dependabot.
|
|
o Bump biz.aQute.bnd:biz.aQute.bndlib from 5.1.2 to 5.3.0. Thanks to Dependabot.
|
|
|
|
|
|
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 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.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 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 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 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 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 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 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 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 Commons CSV website:
|
|
|
|
https://commons.apache.org/proper/commons-csv/
|
|
|
|
Have fun!
|
|
-Apache Commons CSV team
|
|
|