Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Do Cesil's Options provide everything needed in a CSV library? #10

Open
kevin-montrose opened this issue May 28, 2020 · 6 comments
Open
Labels
Open Question

Comments

@kevin-montrose
Copy link
Owner

kevin-montrose commented May 28, 2020

This was posed in Overthinking CSV With Cesil: CSV Isn’t A Thing.

Essentially, are the configurations exposed via Options adequate?

This was restated as:

Are there any missing Format-specific options Cesil should have?

in Overthinking CSV With Cesil: “Maximum” Flexibility

This is an Open Question, which means:

[A]s part of the sustainable open source experiment I detailed in the first post of this series, any commentary from a Tier 2 GitHub Sponsor will be addressed in a future comment or post. Feedback from non-sponsors will receive equal consideration, but may not be directly addressed.

@kevin-montrose kevin-montrose added the Open Question label May 28, 2020
@fjmorel
Copy link

fjmorel commented May 28, 2020

Pretty sure our codebase outputs a file using double-pipes || as a delimeter for a third-party report. So we sometimes need more than one character as a delimeter.

@kevin-montrose
Copy link
Owner Author

kevin-montrose commented May 29, 2020

@fjmorel iiiinteresting - the thought had crossed my mind but I couldn't dig up a concrete example. Is it possible for you to share more details (like, the subject matter or third party, really anything to contribute to grounding the use case)?

@fjmorel
Copy link

fjmorel commented May 29, 2020

Hmm, I could have sworn we had something like this, but am not finding it anymore.

We definitely have #*# though, in some reports generated for a music label.

writer.WriteLine(string.Join("#*#", arrayOfValuesWeDidNotEscape));

@fjmorel
Copy link

fjmorel commented May 29, 2020

btw, the Overthinking CSV With Cesil: CSV Isn’t A Thing link goes nowhere. Same for the first post of this series link.

@kevin-montrose
Copy link
Owner Author

kevin-montrose commented May 31, 2020

Ah, thanks for pointing that out - I've fixed the links in the issue.

That's a pretty concrete example, a second thanks for sharing it. I'll proof out making Options.ValueSeparator a string in a branch - the write side should be simple, the read side might take a bit...

kevin-montrose added a commit that referenced this issue Jun 1, 2020
…character value separators per #10 (comment); still leaves read changes to be made; test coverage will need to be expanded to cover new cases as well
@kevin-montrose
Copy link
Owner Author

kevin-montrose commented Jun 4, 2020

The full change is ready in #12 now.

kevin-montrose added a commit that referenced this issue Jun 7, 2020
squashes 19 commits; implements read and write support for multi-character value separators per #10 (comment)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Open Question
Projects
None yet
Development

No branches or pull requests

2 participants