Another CSV Parser, Another Version
A while back, I created a post to discuss my FlatFiles open source project. I was worried it'd be taken as a shameless plug, but folks were very supportive and had lots of great feedback. I wanted to reach out again now that I've recently released version 2 and now 3.
One of the most common asks was to support multiple schemas per file, using some sort of discriminator to pick which schema to use. That was the main focus of v2. There was also a lot of effort adding events for inspecting the record being processed to allow skipping records, viewing metadata, etc.
Today, I released v3 and I am really excited about it. In previous versions, the type mapping functionality was pretty limited to column-to-property mapping. However, I received a lot of requests to support more complicated mapping; for example, mapping two or more columns to a collection. The new custom mapping functionality, at it's most flexible, allows a user-provided delegate to map values directly between a class and an array of values. There are a handful of overloads to support just about any mapping scenario.
I also used v3 as a chance to expose metadata in more places about the current column and/or record being processed. Being able to provide useful feedback to users when parsing fails is a frequent ask. My hope is this release finally succeeds in achieving that goal.
I've been obsessing over this last release so much lately that I think am going through withdrawal symptoms now that it's finally out. My hope is this time around folks feel just as willing to ask questions and provide feedback. Much of what's been added in recent releases a direct result of everyone's input. Thanks to everyone for your help!
0 comments:
Post a Comment