Releases: osiegmar/FastCSV
Releases · osiegmar/FastCSV
v3.2.0
v3.1.0
v3.0.0
Added
IndexedCsvReader
for random access to CSV filesFieldModifier
for modifying fields while reading CSV files- Allow custom quote strategies for CsvWriter
CsvCallbackHandler
for more flexible usage of CsvReader- Support for optional BOM header when reading CSV files
- Method
NamedCsvRecord.findField
for optional field access - Allow READ comment strategy for CSV data with a header
- Metadata for OSGi capability
Changed
- Updated from Java 8 to Java 11
- Updated naming (rows/lines -> records, columns -> fields, differentiate between lines and records)
NamedCsvReader
replaced byCsvReader.builder().ofNamedCsvRecord()
build
methods inCsvReaderBuilder
with callback handlers andofCsvRecord
/ofNamedCsvRecord
as convenience methods- Rename
errorOnDifferentFieldCount()
toignoreDifferentFieldCount()
QuoteStrategy
is now an interface – defaults are provided byQuoteStrategies
- Throw
CsvParseException
instead ofIOException
when maximum field size is exceeded NamedCsvRecord
extendsCsvRecord
and provides more access methods- Raised the maximum field size to 16 MiB to match SUPER data type capabilities of Amazon Redshift
- Limit the maximum field count per record to 16,384 to prevent OutOfMemoryErrors
- Limit the maximum record size to 64 MiB to prevent OutOfMemoryErrors
- Several performance improvements
- Improved documentation and error messages
Removed
- Removed
isEmpty()
inCsvRecord
as it was formerly only used for skipping empty records
Fixed
- Do not throw an exception when reading comments while enabling different field count checking
v2.2.2
v2.2.1
v2.2.0
v2.1.0
[2.1.0] - 2021-10-17
Added
- Builder methods for standard encoding (UTF-8)
- Comment support for writer
- toString() method to CsvWriter and CsvWriterBuilder
- Support for random access file operations
Changed
- Improved error message when buffer exceeds (because of invalid CSV data) #52
- Defined 'de.siegmar.fastcsv' as the Automatic-Module-Name (JPMS module name)
v2.0.0
[2.0.0] - 2021-01-01
Added
Changed
- Completely re-engineered the API for better usability
- Improved performance
- Make use of Java 8 features (like Streams and Optionals)
- Replaced TestNG with JUnit 5
- Changed license from Apache 2.0 to MIT
Removed
- CsvContainer concept – use
Stream.collect()
as a replacement java.io.File
API – usejava.nio.file.Path
instead