1
0
mirror of https://github.com/rlanvin/php-rrule.git synced 2024-11-28 05:24:10 +01:00
php-rrule/CHANGELOG.md
rlanvin 67d4a5dc98 Refactor RFC string parsing
Add the possibility to construct a RSet from a string
Ref #26
2017-04-11 16:44:50 +01:00

4.9 KiB
Executable File

Changelog

Unreleased

Added

  • Add explicit_infinite and dtstart options to humanReadable to respectivity omit "forever" and the start date from the sentence.
  • RSet constructor now accepts a string to build a RSET from a RFC string #26
  • New factory method RRule::createFromRfcString() to build either a RRule or a RSet from a string

Fixed

  • When creating a RRule, the RFC parser will not accept multiple DTSTART or RRULE lines

1.4.2 - 2017-03-29

Fixed

  • humanReadable() fails if the RRule was created from a RFC string containing the timezone (e.g. DTSTART;TZID=America/New_York:19970901T090000)

1.4.1 - 2017-02-02

Fixed

  • RRule::offsetGet and RSet::offsetGet throw InvalidArgumentException for illegal offset types #22
  • Update exception message for UNTIL parse error #23
  • Fix parser handling of UNTIL when DTSTART is not provided #25
  • Accept invalid RFC strings generated by the JS lib but triggers a Notice message #25
  • Rework RRule::i18nLoad() to accept locales such as en_sg and use Locale::parseLocale when possible #24
  • Fix humanReadable fails with intl enabled when the timezone is "Z" #24

1.4.0 - 2016-11-11

Added

  • Add RRule::getRule() method to return original rule array #17
  • Add RSet::getRRules(), RSet::getExRules(), RSet::getDates() and RSet::getExDates()
  • Tests for PHP 7.0

Fixed

  • Fix a bug in rfcString when using a frequency constant (instead of a string) to create the rule #16
  • Fix a undefined index bug in RFC parser

1.3.1 - 2016-08-09

Added

  • Italian translation (it) #14

Fixed

  • Fixed a bug when combining values with an integer modifier and regular values in BYDAY (example 1MO,FR)
  • Fixed RRule created with a timestamp start date generates an invalid RFC string #15

1.3.0 - 2016-07-08

Added

  • Spanish translation (es) #12
  • $include_timezone parameter to RRule::rfcString() to produce a RFC string without timezone information

Fixed

  • RRule::parseRfcString() is strictier and will not accept invalid DTSTART and UNTIL formats (use the array syntax in the constructor with DateTime objects if you need to create rules with complex combinations of timezones). #13

1.2.0 - 2016-04-09

Added

  • Support for fallback locale when using RRule::humanReadable() #11
  • Dutch translation (nl) #9

Fixed

  • Fixed fatal error Locale class not found when intl extension is not loaded #10

1.1.0 - 2016-03-30

Added

  • New class RRule\RSet (recurrence set) that can combine multiple RRULE, EXRULE, RDATE and EXDATE. #7
  • New interface RRule\RRuleInterface to unify RRule and RSet
  • New methods: isFinite(), isInfinite()

Fixed

  • Fix bug preventing the iteration of multiple instances of RRule at the same time
  • Fix occursAt failing when the date passed was a different timezone #8
  • Fix bug at WEEKLY frequency with a partially filled cache in some circumstances
  • Fix various reference bugs causing corruption of the cache in some circumstances (related to DateTime object being mutable)

Removed

  • The alias RRule::occursOn has been removed (use occursAt instead)

1.0.1 - 2016-03-11

Fixed

  • Ensure the results are returned in the same timezone as DTSTART. #6
  • LogicException namespacing bug. #3

1.0.0 - 2016-03-02

Added

  • First release, everything before that was unversioned (dev-master was used).