nextcloud / calendar

📆 Calendar app for Nextcloud
https://apps.nextcloud.com/apps/calendar
GNU Affero General Public License v3.0
989 stars 240 forks source link

DATE-TIME must be in UTC time format #561

Closed patricktokeeffe closed 7 years ago

patricktokeeffe commented 7 years ago

I can't subscribe to Nextcloud 11 Snap calendars in Thunderbird because of unspecified parsing errors: screenshot from 2017-08-14 21-42-45

I created a brand new test calendar (below) and verified Thunderbird still can't connect. Then I provided the .ics public share link to some validation services which provided the following errors:

General failures:

! Specifying the charset in the MIME Content-Type is mandatory Related RFC 5545 section: 3.1.4

Failures per component:

BEGIN:VEVENT
CREATED:20170814T203859
DTSTAMP:20170814T203859
LAST-MODIFIED:20170814T203859
UID:MERL8I6CTVQ3KU15YCLLTF
SUMMARY:adfadf
DTSTART;VALUE=DATE:20170802
DTEND;VALUE=DATE:20170803
END:VEVENT

! DATE-TIME value in [CREATED] must be specified in UTC time ! DATE-TIME value in [DTSTAMP] must be specified in UTC time Related RFC 5545 section: 3.8.7.2 ! DATE-TIME value in [LAST-MODIFIED] must be specified in UTC time

Ref https://tools.ietf.org/html/rfc5545.html#section-3.8.7.2

The timestamps are missing the 'Z' that indicates they are in UTC format. For comparison, a calendar created with Owncloud 8 passes validation and has UTC (not local) timestamps:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:ownCloud Calendar 0.7.4
X-WR-CALNAME:tester
BEGIN:VEVENT
UID:a6f7faa4a5
DTSTAMP:20170815T045732Z
CREATED:20170815T045732Z
LAST-MODIFIED:20170815T045732Z
SUMMARY:adfa
DTSTART;VALUE=DATE:20170809
DTEND;VALUE=DATE:20170810
LOCATION:
DESCRIPTION:
CATEGORIES:
END:VEVENT
END:VCALENDAR

Test file contents:

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:-//SabreDAV//SabreDAV//EN
X-WR-CALNAME:Testing (patrick)
X-APPLE-CALENDAR-COLOR:#e78074
BEGIN:VEVENT
CREATED:20170814T203909
DTSTAMP:20170814T203909
LAST-MODIFIED:20170814T203909
UID:IYX304F4RU8J2BFB9SZLJ
SUMMARY:adfasd
DTSTART;VALUE=DATE:20170807
DTEND;VALUE=DATE:20170808
END:VEVENT
BEGIN:VEVENT
CREATED:20170814T203904
DTSTAMP:20170814T203904
LAST-MODIFIED:20170814T203904
UID:IX9VYHQ542JUPXN32YE1LJ
SUMMARY:adfasdf
DTSTART;VALUE=DATE:20170811
DTEND;VALUE=DATE:20170812
END:VEVENT
BEGIN:VEVENT
CREATED:20170814T203859
DTSTAMP:20170814T203859
LAST-MODIFIED:20170814T203859
UID:MERL8I6CTVQ3KU15YCLLTF
SUMMARY:adfadf
DTSTART;VALUE=DATE:20170802
DTEND;VALUE=DATE:20170803
END:VEVENT
BEGIN:VEVENT
CREATED:20170814T203832
DTSTAMP:20170814T203832
LAST-MODIFIED:20170814T203832
UID:3UUUMS5Z90XABLCM9OQC88
SUMMARY:an event
DTSTART;VALUE=DATE:20170814
DTEND;VALUE=DATE:20170815
END:VEVENT
BEGIN:VEVENT
CREATED:20170814T203844
DTSTAMP:20170814T203844
LAST-MODIFIED:20170814T203844
UID:LV1JIF6V92EEP4E10DWF9C
SUMMARY:adfasd
DTSTART;VALUE=DATE:20170731
DTEND;VALUE=DATE:20170801
END:VEVENT
END:VCALENDAR
georgehrke commented 7 years ago

Closing as dup of #33

Didn't know it had these consequences, increasing priority