Skip to content

Releases: michalmonday/CSV-Parser-for-Arduino

1.4.1

08 Feb 01:58
Compare
Choose a tag to compare

New functions to allow parsing row by row from multiple sources:

cp.setRowParserFinishedCallback(func_returning_bool);

// only one of these should be used at once:
cp.setFeedRowParserCallback(func_returning_char);
cp.setFeedRowParserStrCallback(func_returning_char_pointer);

// I added "Str" version because it is faster in practice when a whole string is supplied 
// rather than single character. 

Non arduino adaptations allowing to test the code on a normal computer.

Bug fix (supplying char by char broke quotes parsing)

03 Feb 18:43
Compare
Choose a tag to compare

Bug fix (supplying char by char broke quotes parsing)

1.2.2

Got rid of compilation warnings

19 Oct 22:17
Compare
Choose a tag to compare

parseRow() efficiency + related realloc fix

05 Oct 20:21
Compare
Choose a tag to compare

Modified examples show how to efficiently parse row by row:
https://github.com/michalmonday/CSV-Parser-for-Arduino/tree/master/examples/parsing_row_by_row
https://github.com/michalmonday/CSV-Parser-for-Arduino/tree/master/examples/parsing_row_by_row_sd_card

Lack of values initialization made it impossible to get pointer to values before the first cp.parseRow(), this got fixed in this release.
Integer based indexing should be used to get pointer to values when using row by row parsing (because header is parsed after the first call of parseRow). See examples from links above for more details about correct usage.

parseRow() memory leak fix

05 Oct 18:47
Compare
Choose a tag to compare

Fixed with this commit:
7569694

Parsing row by row

Quote char bug fixes

17 Nov 05:39
Compare
Choose a tag to compare

Bug 1:
Parsing failed when quotes were used and a delimiter was not a comma
(due to using hardcoded comma in one condition...).
Big thanks to KingBoomie for reporting the issue.

Bug 2:
Parsing failed when four quote characters were within quoted string (for
the purpose of including two quote characters within the parsed string itself).

<< operator supports more types

13 Apr 14:30
Compare
Choose a tag to compare

Default behavior of cp << 97; is changed from being treated as a into being treated as 97, this may break existing code (e.g. if return of file.read() isn't casted to (char)), hence the major version number change.

Memory leak fix (thanks to foster066)

21 Feb 18:42
Compare
Choose a tag to compare

Added "free(is_fmt_unsigned)" in destructor.