Skip to content

[BUG] AddTimezone results into an invalid .ics #113

Description

@GustavoOS

Current Behavior:

        calendar := ics.NewCalendar()
	calendar.SetMethod(ics.MethodPublish)
	calendar.SetProductId(CALENDAR_PRODID)
	calendar.AddTimezone("America/Sao_Paulo")

results into the following .ics file

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//my-site.com//Agenda//PT
METHOD:PUBLISH
BEGIN:VTIMEZONE
TZID:America/Sao_Paulo
END:VTIMEZONE
END:VCALENDAR

This is an invalid .ics because it fails to follow RFC 5545 3.6.5, which states that At least one STANDARD or DAYLIGHT property must be defined.

Expected Behavior:

BEGIN:VCALENDAR
VERSION:2.0
METHOD:PUBLISH
PRODID:-//my-site.com//Agenda//PT
BEGIN:VTIMEZONE
TZID:America/Sao_Paulo
LAST-MODIFIED:20240422T053451Z
TZURL:https://www.tzurl.org/zoneinfo-outlook/America/Sao_Paulo
X-LIC-LOCATION:America/Sao_Paulo
BEGIN:STANDARD
TZNAME:-03
TZOFFSETFROM:-0300
TZOFFSETTO:-0300
DTSTART:19700101T000000
END:STANDARD
END:VTIMEZONE
END:VCALENDAR

Links

-.ics Validator

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions