Changelog
v3.0.0-beta7
Prerelease
Released October 4, 2016. Previous release: v3.0.0-beta6.
API
The API of v3.0.0-beta7 could not be built: src/CsvHelper/CsvHelper.csproj does not exist in v3.0.0-beta7.
Commits
- abe1a6fe Cleaned up warnings. Bumped version.
- 179c1a85 When comments are on and a field is being written that is the first field in the record and the first char is a comment char, quote the field because it's not a comment.
- 5e96918b Moved detection of column count changes into the reader. The parser shouldn't care and should just return whatever data it finds.
- 307a440a Cleanup.
- b6be3950 Added interfaces for configuration so you can tell what options are availabe in your current context.
- 0e21c881 Removed header matching manipulation configuration IsHeaderCaseSensitive, IgnoreHeaderWhiteSpace, and TrimHeaders and added a config for PrepareHeaderForMatch that is a function. Both the header field name and the property name are ran through this method before matching against eachother.
- 57a8af01 Fixed but where ignoring header whitespace wouldn't work if a named property had the same whitespace in it.
- db3547bc Exposed the underlying TextReader as a property.
- cca123a2 Throw exception with useful message when a type is created without a public parameterless constructor. Specifically mappings in this case.
- 69c0df10 Added ability to map the same property more than once.
- ca1ebec6 Changed reading exception callback to send a CsvHelperException.
- 18ac5f16 Added unit test for empty TextReader.
- 14a60c93 Ability to read more than 1 header row. This helps with having several CSV files in one file.
- 640fe242 Added ability to specify values that resolve to null when reading.
- ba3bd1c0 Changed config setting name from IgnorePrivateAccessor to IncludePrivateProperties to be more clear on intention.
- 7a006772 Added ability to write fields not mapped to a property.
- 6c6e41e5 Update comments for constant property map.
- 86380991 Added ability to specify a constant value for a mapped property. When reading, the same value gets set for every record for the property. When writing, the same value gets written for every record for the property.
- fd2b8034 Forgot this file in the last commit.
- 8904f512 Created a separate writing action for ExpandoObject due to an issue in ExpandoClass where it thinks two aren't equal when they have the same property keys.
- e885ef69 Fixed issue with dynamic expression getting stuck in an infinite loop.
- c5e7ba10 Changed enumerable converters to use header value if one is set. Updated exceptions to throw a more specific exception than CsvHelperException.
- d7ad9e72 Fixes issue #575 where setting a Configuration.ShouldSkipRecord method always overrides the Configuration.SkipEmptyRecords setting.