Considering a Parse API refactor along with the next round of API-breaking changes. However, since the Parse API is likely the most used API we should be careful and only change it when we've gotten it right and are ready to commit.
Couple high level thoughts:
Let's only take io.Reader and read till EOF, and not require bytesToRead (and deprecate ParseUntilEOF)
Extra optional options (e.g. frame channel) can be passed via custom ParseOptions if required.
Do people find the frame channel useful and still want it?
Something like
func NewParser(in io.Reader, opts ...ParseOption) (*Parser, error) {} // To use with Parser.Next() API
func Parse(in io.Reader, opts ...ParseOption) (Dataset, error) {} // To get a Dataset directly
Open thoughts:
Do we still want to keep ParseFile around as a convenience (and update it to the new format)?
Do we like the ParseOption API / patterns / ergonomics, or would an options struct be better?
Considering a Parse API refactor along with the next round of API-breaking changes. However, since the Parse API is likely the most used API we should be careful and only change it when we've gotten it right and are ready to commit.
Couple high level thoughts:
Something like
Open thoughts: