- Timezone aware coersion of unaware datetime parameters from DTSTART
- Python binding capability expanded to support improved testing
- RRULE tests aligned with icalendar.org examples (explicit UTC UNTIL, corrected expectations)
- RRULE tests now load TZIDs from
ical_timezone.txt - Tests are now timezone aware, and more strictly verify expected bounds of RRULE generation
- UNTIL fixed and handling corrected for timezone-aware recurrences.
- COUNT with EXDATEs now emits the correct number of occurrences.
InvalidDateModeenum to control handling of invalid recurrence dates:SKIP(strict RFC 5545 default)BACKWARD(calendar-style fallback behavior)
- Runtime configuration via
getInvalidDateMode()/setInvalidDateMode(). - Support for DATE-only (
YYYYMMDD) values for all-day events. - Additional test coverage for recurrence edge cases.
- MONTHLY and YEARLY recurrences now correctly default to
DTSTART’s day and month when BY* parts are absent. - Improved internal counter synchronization and cascade seeking logic.
- Refactored Arduino
readuntil()to support arbitrarily long lines while preserving fixed chunk size. - Improved C++ STL example and documentation.
- Correct handling of invalid recurrence dates per RFC 5545:
BYMONTHDAYskips invalid days (e.g. 31 in February).BYYEARDAY=366only valid in leap years.
- Fixed
BYDAYseeking whenDTSTARTdoes not match any specified weekday. - Prevented crashes when optional VEVENT properties (
DTEND,SUMMARY) are missing. - Corrected internal date comparison logic and year/day validation bugs.
- Updated Docker development environment to better support pull request contributions.
- Version updates in
library.json,library.properties, andsetup.pyto force Arduino Library Manager refresh. - Merged improvements and fixes from contributors.
- Added missing
<stdexcept>include. - Improved line folding support per RFC 5545.
- String handling fixes for ESP32 compatibility.
- Removed rogue characters and whitespace handling issues.
- General parser robustness improvements.
- Python test for line folding behavior.
- Support for RFC 5545 line folding (content lines beginning with whitespace are unfolded correctly).
- Initial public release.
- Basic iCalendar parsing support.
- Arduino compatibility.
- Inclusion in Arduino Library Manager.