Major version numbers below are kept in-sync with the dependent version of CsvHelper. Minor & patch version numbers below may differ from CsvHelper's.
The listed Breaking Changes are those added by this library, above-and-beyond those introduced by new versions of the CsvHelper library.
- Added
RowOffset
andColumnOffset
properties toExcelParser
. Useful as a simple method of skipping leading rows/columns which have data in them that you do not want parsed. - Set the EPPlus license context within unit tests, allowing them to be debugged.
- Fixed incorrect documentation. There were no code changes in this version.
-
Depends on CsvHelper 30.0.1.
-
Added an optional bool
leaveOpen
parameter onto allExcelWriter
andExcelParser
constructors except the two which take a path. -
By default when
ExcelWriter
andExcelParser
are disposed, they now also dispose of any Stream, ExcelPackage or ExcelWorkbook provided to their constructors. To keep any of these objects open, you must explicitly set the optionalleaveOpen
constructor parameter totrue
. E.g.using var writer = new ExcelWriter(stream, leaveOpen: true);
This brings behaviour into line with CsvHelper's defaults.
- Pass
IWriterConfiguration
intoExcelWriter
constructor instead ofCsvConfiguration
. - Pass
IParserConfiguration
intoExcelParser
constructor instead ofCsvConfiguration
.
- Fixed
ExcelParser
not disposingExcelPackage
when it was documented to.
- Depends on CsvHelper 29.0.0.
ExcelParser
now respects theCsvConfiguration.TrimOptions
.ExcelParser.Delimiter
now returns the configured delimiter from CsvConfiguration. This is merely for consistency with CsvParser's behaviour as the concept of a delimiter doesn't make sense for an Excel document anyway.
- Depends on CsvHelper 28.0.1.
- Added support two different versions of EPPlus:
CsvHelper.Excel.EPPlus4
requires EPPlus v4, andCsvHelper.Excel.EPPlus
requires at least EPPlus v6. Select the version based on your licensing situation. - Upgraded unit tests to run in .NET 6 and .NET Core 3.1.
- Use GitHub Actions for CI instead of Azure Pipelines.