Previously, if a byte valued >= 128 and <= 193 was encountered, the code would enter into an infinite loop. Instead, detect this case and throw an error indicating that an invalid UTF-8 character was encountered
…plit up (when chunked in stream buffers) before the character boundary is met, this commit passes existing tests and new tests written for this use case
…g chunked before their boundaries are reached, which leads the subsequent call to buffer.toString() to display two-four replacement characters: �� instead of the proper representation of the multi-byte characters that were actually passed to the parser
…else in the method proto.write.
…lse in the method proto.onToken.
…ion with + or - after e or E.