- [Tokenizer] Correct a state bug that made it impossible to tokenize/parse multiple messages (#14).
- [Tokenizer] Provider an interface so different implementations can be used.
- Project moved to Estrato namespace.
- [Support] Added support for PHP 8.1.
- [Serializer] Ensure we use a custom reserved character if one was provided.
- [Support] Added support for PHP 8.0
- [Support] Dropped support for PHP 7.3
- Added interfaces for the Message, Parser, and Seralizer classes.
- Added parameter types and return types where possible.
- [Support] Added support for PHP 7.3
- [Support] Dropped support for PHP 5.6
- [Support] Dropped support for PHP 7.0
- [Support] Dropped support for PHP 7.1
- [Parser] Huge performance improvements, large files in particular are now parsed over 30 times faster.
- [Parser] Simplify multibyte support as EDIFACT requires that tag names and separators/delimiters are ASCII.
- [Support] Add support for PHP 7.2
- [Parser/Serializer] Created a class to manage control characters.
- [Segments] Created a SegmentInterface and an AbstractSegment for downstream libraries.
- [Segments] Added a Factory for creating segments.
- [Segments] Renamed the getName() method to getSegmentCode() to avoid downstream clashes.
- [Exceptions] Library specific exceptions are now thrown.
- [Support] Drop support for HHVM
- [Serializer] Ensure control characters are escaped. (Henrik Nordquist)
- Initial Release