Avg Release Cycle
719 days ago
- 🔄 Changed: propertyMap, valueMap and componentMap are now static properties.
- 🔄 Changed: Component::remove() will throw an exception when trying to a node that's not a child of said component.
- ➕ Added: Splitter objects are now faster, line numbers are accurately reported and use less memory.
- ➕ Added: MimeDir parser can now continue parsing with the same stream buffer.
- 🛠 Fixed: vobjectvalidate.php is operational again.
- 🛠 Fixed: \r is properly stripped in text values.
- 🛠 Fixed: QUOTED-PRINTABLE is now correctly encoded as well as encoded, for vCards 2.1.
- 🛠 Fixed: Parser assumes vCard 2.1, if no version was supplied.
- 🛠 Fixed: vCard URL properties were referencing a non-existant class.
- 🛠 Fixed: Now correctly dealing with escaping of properties. This solves the problem with double-backslashes where they don't belong.
- ➕ Added: Easy support for properties with more than one value, using setParts and getParts.
- ➕ Added: Support for broken 2.1 vCards produced by microsoft.
- ➕ Added: Automatically decoding quoted-printable values.
- ➕ Added: Automatically decoding base64 values.
- ➕ Added: Decoding RFC6868 parameter values (uses ^ as an escape character).
- ➕ Added: Fancy new MimeDir parser that can also parse streams.
- ➕ Added: Automatically mapping many, many properties to a property-class with specialized API's.
- ➕ Added: remove() method for easily removing properties and sub-components components.
- 🔄 Changed: Components, Properties and Parameters can no longer be created with Component::create, Property::create and Parameter::create. They must instead be created through the root component. (A VCalendar or VCard object).
- 🔄 Changed: API for DateTime properties has slightly changed.
- 🔄 Changed: the ->value property is now protected everywhere. Use getParts() and getValue() instead.
- 👍 BC Break: No support for mac newlines (\r). Never came across these anyway.
- ➕ Added: add() method to the Property class.
- ➕ Added: It's now possible to easy set multi-value properties as arrays.
- ➕ Added: When setting date-time properties you can just pass PHP's DateTime object.
- ➕ Added: New components automatically get a bunch of default properties, such as VERSION and CALSCALE.
- ➕ Added: You can add new sub-components much quicker with the magic setters, and add() method.
- 🛠 Fixed: Issue #94, a workaround for bad escaping of ; and , in compound properties. It's not a full solution, but it's an improvement for those stuck in the 2.1 versions.
- 🛠 Fixed: Minor change to make sure that unittests succeed on every PHP version.
- 🛠 Fixed: #94: Better parameter escaping.
- 📚 Changed: Documentation cleanups.
- 🛠 Fixed: Issue #87: Several compatibility fixes related to timezone handling changes in PHP 5.5.10.
- 🛠 Fixed: Issue #55. \r must be stripped from property values.
- 🛠 Fixed: Issue #65. Putting quotes around parameter values that contain a colon.
- 🛠 Fixed: Issue #53. A regression in RecurrenceIterator.
- 🛠 Fixed: Issue #50. RecurrenceIterator gives incorrect result when exception events are out of order in the iCalendar file.
- 🛠 Fixed: Issue #48. Overridden events in the recurrence iterator that were past the UNTIL date were ignored.