Forum Discussion

mapbehan's avatar
mapbehan
Copper Contributor
Apr 14, 2025

Outlook not parsing ics invites with rrule BYMONTHDAY=-1 or BYSETPOS=-1 properly

Current Behavior

When an ics event is attached or imported as a file, and the rrule contains either BYMONTHDAY=-1 or BYSETPOS=-1, it is not properly converted to the outlook/exchange meeting type and the ics attachment will read as "not supported calendar message".

It is possible to work around this by appending an additional semicolon to any property in the rrule string prior to the BYMONTHDAY=-1 or BYSETPOS=-1.

However, the workaround above is actually syntactically invalid. Sending .ics invites that contain an rrule with this workaround that are opened in any application other than outlook would fail to be processed.

 

Reproduction environment

MacOS Sequoia 15.3.2 (24D81). definitely doesn't matter.

using outlook for mac desktop app, outlook web app

 

Reproduction steps

See the attached ics invites - note the only difference is the additional semicolon before BYMONTHDAY in the second invite. Save these as files with the .ics extension, and then open them with outlook.

 

Invalid invite - an event that repeats monthly on the last day of the month starting on May 31st for two months.

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:adamgibbons/ics
METHOD:REQUEST
X-PUBLISHED-TTL:PT1H
BEGIN:VEVENT
UID:726df22a-cc8d-4276-9be9-236f4af16450
SUMMARY:Reserved by user
DTSTAMP:20260413T225217Z
DTSTART:20260531T050000Z
DTEND:20260531T060000Z
SEQUENCE:0
DESCRIPTION:hi
LOCATION:hi
STATUS:CONFIRMED
CATEGORIES:
TRANSP:TRANSPARENT
X-MICROSOFT-CDO-BUSYSTATUS:FREE
ATTENDEE;ROLE="REQ-PARTICIPANT";CN="user":mailto:user@example
	.com
RRULE:FREQ=MONTHLY;INTERVAL=1;COUNT=2;DTSTART=20260531T050000
	Z;BYMONTHDAY=-1;
END:VEVENT
END:VCALENDAR

 

Valid invite - same event but with an additional ; before BYMONTHDAY:

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:adamgibbons/ics
METHOD:REQUEST
X-PUBLISHED-TTL:PT1H
BEGIN:VEVENT
UID:726df22a-cc8d-4276-9be9-236f4af16450
SUMMARY:Reserved by user
DTSTAMP:20260413T225217Z
DTSTART:20260531T050000Z
DTEND:20260531T060000Z
SEQUENCE:0
DESCRIPTION:hi
LOCATION:hi
STATUS:CONFIRMED
CATEGORIES:
TRANSP:TRANSPARENT
X-MICROSOFT-CDO-BUSYSTATUS:FREE
ATTENDEE;ROLE="REQ-PARTICIPANT";CN="user":mailto:user@example
	.com
RRULE:FREQ=MONTHLY;INTERVAL=1;COUNT=2;DTSTART=20260531T050000
	Z;;BYMONTHDAY=-1;
END:VEVENT
END:VCALENDAR

 

3 Replies

  • mapbehan's avatar
    mapbehan
    Copper Contributor

    Hi Rupert, thank you for the response. I had only noted this in the "Reproduction Environment" part of my post, but I am reporting an issue with Outlook on iOS. I have not tested on Windows.

    AFAIK the setting Modern Recurrence Engine in Outlook for Mac is enabled by default.

  • Rupertmurd's avatar
    Rupertmurd
    Iron Contributor

    Verify Outlook version support
    1. Run Outlook → File → Account → About Outlook to confirm version ≥ 2103
    Perform Office Repair:

    2. Control Panel → Programs and Features → Microsoft 365 → Changes → Quick Fixes

    3. Force the new parser to be enabled via the registry.
    Press Win+R and type regedit

    4. Navigate to:

    HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Options\Calendar
    Create a new DWORD (32-bit) value:

    Name: EnableModernRecurrenceEngine

    Value: 1

    • mapbehan's avatar
      mapbehan
      Copper Contributor

      Hi Rupert, thank you for the response. I had only noted this in the "Reproduction Environment" part of my post, but I am personally using Outlook on iOS. I have not tested on Windows.

      AFAIK the setting Modern Recurrence Engine in Outlook for Mac is enabled by default.

Resources