PackageTrack
Sign in Get early access

eluceo/ical

The eluceo/iCal package offers an abstraction layer for creating iCalendars. You can easily create iCal files by using PHP objects instead of typing your *.ics file by hand. The output will follow RFC 5545 as best as possible.

2.17.0 19M downloads/mo #1125 most downloaded on Packagist markuspoerschke/iCal

What this package is like to depend on

Last release 1 months ago

12 Jul 2026

Ships fairly regularly

a new release about every 5 months

Most releases are documented

notes for 38 of 54 stable releases

Nothing withdrawn

no release was ever pulled

12 years old

54 releases · first in 2014

3 releases in the last 12 months

see the full history below

Release timeline

54 releases · Mar 2014 to Jul 2026
2015 2017 2019 2021 2023 2025
Release Pre-release

Releases

latest 54
  1. 2.17.0 12 Jul 2026
    Release notes

    Added

    • Event's HTML alternative description #657
    • Calendar's name and description (X-WR-CALNAME and X-WR-CALDESC) #394, #664
    • Re-Add property X-MICROSOFT-CDO-BUSYSTATUS that was added in 0.16.0 and then lost #637

    Fixed

    • Ensure zero value duration is correctly formatted #683
    Open source →
    Release notes

    Added

    • Event's HTML alternative description #657
    • Calendar's name and description (X-WR-CALNAME and X-WR-CALDESC) #394, #664
    • Re-Add property X-MICROSOFT-CDO-BUSYSTATUS that was added in 0.16.0 and then lost #637

    Fixed

    • Ensure zero value duration is correctly formatted #683
    Open source →
  2. 2.16.0 07 Jan 2026
    Release notes

    Added

    • Support for PHP 8.5

    Removed

    • Support for PHP 8.3
    Open source →
    Release notes

    Added

    • Support for PHP 8.5

    Removed

    • Support for PHP 8.3
    Open source →
  3. 2.15.0 15 Aug 2025
    Release notes

    Added

    • Support PHP 8.4

    Removed

    • Support for PHP 7.4, 8.0, 8.1, 8.2
    Open source →
    Release notes

    Added

    • Support PHP 8.4

    Removed

    • Support for PHP 7.4, 8.0, 8.1, 8.2
    Open source →
  4. 2.14.0 11 Jul 2024
    Release notes

    Fixed

    • Fix \n being escaped to \n, leading to no newlines in actual text #617
    Open source →
    Release notes

    Fixed

    • Fix \n being escaped to \n, leading to no newlines in actual text #617
    Open source →
  5. 2.13.0 19 Dec 2023
    Release notes

    Added

    • Support PHP 8.3 #576
    Open source →
    Release notes

    Added

    • Support PHP 8.3 #576
    Open source →
  6. 2.12.1 26 Jun 2023
    Release notes

    Fixed

    • Add value type DATE to DTSTART and DTEND #519
    Open source →
    Release notes

    Fixed

    • Add value type DATE to DTSTART and DTEND #519
    Open source →
  7. 2.12.0 10 Apr 2023
    Release notes
    • Update .gitattributes file to exclude unnecessary files when fetching package through Composer. #510
    Open source →
    Release notes

    Changed

    • Update .gitattributes file to exclude unnecessary files when fetching package through Composer. #510
    Open source →
  8. 2.11.0 17 Jan 2023
    Release notes

    Changed

    • Declare CalendarFactory::getProperties protected i/o private to open it for extension #386
    Open source →
  9. 2.10.0 17 Jan 2023
    Release notes

    Fixed

    • Fix formatting date time property with UTC time zone #482
    Open source →
  10. 2.9.0 23 Dec 2022
    Release notes

    Changed

    • Add missing return types and missing template annotations #472
      • Added @implements IteratorAggregate<Event> to \Eluceo\iCal\Domain\Collection\Events
      • Added @implements IteratorAggregate<ContentLine> to \Eluceo\iCal\Presentation\Component
      • Added @return Traversable<ContentLine> to \Eluceo\iCal\Presentation\Component::getIterator
    • Fix EmailAddress value object: do not url encode email addresses #479
    Open source →
  11. 2.8.0 22 Dec 2022
    Release notes

    Added

    • Support chaining of Calendar::setPublishedTTL() #452
    • Support PHP 8.2 #470
    Open source →
  12. 2.7.0 21 Jun 2022
    Release notes

    Added

    • Support X-PUBLISHED-TTL property on calendars #413
    Open source →
  13. 2.6.0 17 Jun 2022
    Release notes

    Added

    • Support status property on events #422
    • Support categories property on events #421
    Open source →
  14. 2.5.1 26 Apr 2022
    Release notes

    Fixed

    • Deprecation message occuring on an OOTB Symfony 5.4 on PHP 7.4 #382
    Open source →
  15. 2.5.0 13 Feb 2022
    Release notes

    Added

    • Support PHP 8.1
    Open source →
  16. 2.4.0 13 Dec 2021
    Release notes

    Added

    • Support symfony/deprecation-contracts version 3 #354
    • Event Attendee property #333

    Fixed

    • PHPStan complains about wrongly typed hinted constructor argument of Calendar class. #281
    Open source →
  17. 2.3.0 24 Aug 2021
    Release notes

    Added

    • Event URL property #314
    • Event LAST-MODIFIED property #298
    Open source →
  18. 2.2.0 03 May 2021
    Release notes

    Added

    • Event organizer #260
    Open source →
  19. 2.1.0 22 Apr 2021
    Release notes

    Fixed

    • TZOFFSETTO and TZOFFSETFROM should never be -0000 #246
    • Calling TimeZone::createFromPhpDateTimeZone with default values fails with assertion #250

    Deprecated

    • Method Eluceo\iCal\Domain\Entity\TimeZone::createFromPhpDateTimeZone will not have default values for $beginDateTime and $endDateTime in the next major version. #250
    Open source →
  20. 2.0.0 29 Mar 2021
    Release notes

    This version is complete rewrite. Please check the upgrade guide on how to upgrade from version 0.* to 2.0.0.

    Added

    • Support for PHP 8.0.

    Changed

    • Separate domain and presentation logic

    Removed

    • Support for PHP <=7.3
    Open source →
  21. 0.20.0 07 Jan 2026
    Release notes

    Added

    • Support PHP 8.5

    Fixed

    • Removed PHP 8.4 deprecation warnings #687
    Open source →
  22. 0.19.0 19 Nov 2024
    Release notes

    Added

    • Support PHP 8.4
    Open source →
  23. 0.18.0 19 Dec 2023

    Nothing published for this version

  24. 0.17.0 18 Jun 2022

    Nothing published for this version

  25. 0.16.1 04 Oct 2020

    Nothing published for this version

  26. 0.16.0 29 Dec 2019
    Release notes

    Added

    • Allow to add ATTACH property to an event #128
    • Support for PHP 7.4 #141
    • Add property X-MICROSOFT-CDO-BUSYSTATUS #32 #146

    Removed

    • Support for PHP 7.0 #126
    Open source →
  27. 0.15.1 06 Aug 2019
    Release notes

    Fixed

    • TimeZone will be correctly applied if instance of \DateTimeImmutable is used #131
    Open source →
  28. 0.15.0 13 Jan 2019
    Release notes

    Added

    • BYSETPOS to RecurrenceRule #113
    • Add method Component::setComponents(array $components) #124

    Changed

    • DateUtil - only convert to UTC if no timezone is specified #123
    Open source →
  29. 0.14.0 13 Mar 2018
    Release notes

    Fixed

    • Properly escape BY* rules like BYDAY. #105
    Open source →
  30. 0.13.0 26 Oct 2017
    Release notes

    Changed

    • Improve performance for long lines. By using mbstring the folding of lines is much faster and consumes less CPU and memory. #103
    • In UTC mode the time will be converted to UTC timezone. #106
    Open source →
  31. 0.12.1 07 Jun 2017
    Release notes

    Fixed

    • \DateTimeImmutable is now supported by events. When using \DateTime there will be no side effect anymore that will change the original date time object. #98, #99, #100
    Open source →
  32. 0.12.0 10 May 2017
    Release notes

    Fixed

    • Do not escape value of the GEO property #79

    Added

    • Add support for \DateTimerInterface. This allows to use \DateTimeImmutable. #86
    • Add support for arbitrary time zone strings. #87,#89
    • Add new Geo property class #79

    Changed

    • Drop support for old PHP versions: 5.3, 5.4, 5.6
    • Remove default value for X-PUBLISHED-TTL. This value controls the update interval if the ics file is synced. The former default value was set to one week. If you want the behavior from version < 0.12 you have to set the value: $vCalendar->setPublishedTTL('P1W'). #81

    Removed

    • Remove class \Eluceo\iCal\Property\Event\Description #61
    • Remove class \Eluceo\iCal\Util\PropertyValueUtil #61
    Open source →
  33. 0.11.6 30 Apr 2018

    Nothing published for this version

  34. 0.11.5 13 Mar 2018
    Release notes

    Changed

    • Convert time to UTC if UTC mode is enabled. #111
    Open source →
  35. 0.11.4 26 Oct 2017
    Release notes

    Changed

    • Improve performance for long lines. By using mbstring the folding of lines is much faster and consumes less CPU and memory. #104
    Open source →
  36. 0.11.3 25 Apr 2017
    Release notes

    Fixed

    • Fix the GEO property (compatibility to PHP < 7) #91 #91
    Open source →
  37. 0.11.2 20 Apr 2017
    Release notes

    Fixed

    • Do not escape value of the GEO property #79
    Open source →
  38. 0.11.1 04 Apr 2017
    Release notes

    Fixed

    • All days events (no time) ends on the next day. #83
    • Timezone will not applied on all days events #83

    Added

    • Add Event::getDtStart method #83
    Open source →
  39. 0.11.0 16 Sep 2016
    Release notes

    Added

    • Allow multiple recurrence rules in an event #77
    • RecurrenceRule now also allows hourly, minutely and secondly frequencies #78

    Deprecated

    • Adding a single recurrence rule to an event using Event::setRecurrenceRule() is deprecated and will be removed in 1.0. Use Event::addRecurrenceRule() instead. #77
    Open source →
  40. 0.10.1 09 Jun 2016
    Release notes

    Fixed

    • Problem with GEO property when importing into Google Calendar #74
    Open source →
  41. 0.10.0 26 Apr 2016
    Release notes

    Changed

    • Use 'escapeValue' to escape the new line character. #60
    • Order components by type when building ical file. #65

    Added

    • X-ALT-DESC for HTML types with new descriptionHTML field. #55
    • Added a property and setter for calendar color. #68
    • Write also GEO property if geo location is given. #66
    Open source →
  42. 0.9.0 13 Nov 2015
    Release notes

    Added

    Changed

    • Allow new lines in event descriptions #53
    • Breaking Change: Changed signature of the Event::setOrganizer method. Now there is is only one parameter that must be an instance of Property\Organizer.
    • Updated install section in README.md #54
    Open source →
  43. 0.8.0 12 Jul 2015

    Nothing published for this version

  44. 0.7.0 21 Feb 2015

    Nothing published for this version

  45. 0.6.1 08 Dec 2014

    Nothing published for this version

  46. 0.6.0 07 Dec 2014

    Nothing published for this version

  47. 0.5.0 05 Dec 2014

    Nothing published for this version

  48. 0.4.0 28 Nov 2014

    Nothing published for this version

  49. 0.3.0 11 Sep 2014

    Nothing published for this version

  50. 0.2.0 03 Sep 2014

    Nothing published for this version

  51. 0.1.3 11 Aug 2014

    Nothing published for this version

  52. 0.1.2 06 Jul 2014

    Nothing published for this version

  53. 0.1.1 15 May 2014

    Nothing published for this version

  54. 0.1.0 02 Mar 2014

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive