Thanks to @PeskyPotato, #icalendar now has its first #tutorial!

🎉

Learn about how to create a #calendar #event, invite attendees and save it in an #ics file here:

https://icalendar.readthedocs.io/en/latest/tutorials/create-event-with-attendees.html

#rfc5545 #Python

Create event with attendees — icalendar 7.0.4.dev138 documentation

What you recommend about fetching ICS calendar from website? To show events in some way. I'm thinking about general calendar, nextcloud, google, doesn't matter. Thanks!
#ics #icalendar #javascript #caldav #calendar
@PeskyPotato Right now, #icalendar only has https://icalendar.readthedocs.io/en/stable/how-to/index.html with lots of how-to guides. Devs can use a tutorial and we do not have any. We follow https://diataxis.fr for good documentation. That makes a clear distiction. I think you can either open a PR and get feedbak or open an issue.
How to guides — icalendar 7.0.2 documentation

@PeskyPotato Hi, i found your #icalendar tutorial:

https://blog.pesky.moe/posts/2025-01-02-create-icalendar/

We just released icalendar version 7 that makes it easier and uses properties and new() and I wonder: Would you like to add a tutorial like that into our official documentation?

Thanks!

#PythonIcalendar

Creating iCalendar files in Python

Schedules, events and alarms can be shared using the iCalendar data format regardless of the Calendar service or application like Google Calendar or Outlook. This format is defined in RFC 5545. Creating iCalendar files can be done in Python using the icalendar package. I’ve outlined a few example scenarios below. The package documentation has more details on usage. Installing the package pip install icalendar Other methods are available in the official documentation.

@niccokunzmann @nlnet I use this library for stuff constantly. Absolutely my first choice for both reading and publishing feeds. Thanks for all the fantastic work, especially on type hints.

#python #icalendar

A major #update to #icalendar for #Python has been released!

Read about new features, ease of use and improved #compatibility in our announcement: https://github.com/collective/icalendar/discussions/1229

We thank @nlnet for their #funding to make so much work possible!

#PythonIcalendar #rfc5545 #rfc7265

icalendar 7.0.0 and 7.0.1 have been released · collective icalendar · Discussion #1229

icalendar 7.0.0 and 7.0.1 have been released. Highlighted improvements jCal support converts calendars between iCalendar and JSON formats. Enhanced documentation with expanded installation, develop...

GitHub

I am looking for a script to merge two ics files.

Given two ics files I need a new one that contains a semantically 'Ok' merge.

e.g. I don't care about fields like PRODID, just choose one.
Did it ACKNOWLEDGED changed? -> Use the data from the newer one ... and so on.

It gladly may ask user feedback if it is not trivial to merge.

#ics #ical #icalendar

I think I've fixed the bug where query string params weren't being used for @wm_au's event URLs, so it's now possible to do things like `https://wikimedia.org.au/events.ics?where=_pageID=4230` (and probably other silly things that break something else, I don't know).

#MediaWiki #iCalendar #WPBeans

To celebrate the new year, I, too, have decided to partake in the traditional GNOME bugfixing technique of… deleting code to make things work  (it turns out that some parts of calendaring standards specifications are pretty weird, and most other apps couldn't even render the alarm types we created)

https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/680

#GNOMECalendar #GNOME #MaintainerLife #iCalendar

Enforce creating only DISPLAY alarms types in reminders, not AUDIO (!680) · Merge requests · GNOME / gnome-calendar · GitLab

Creating "AUDIO" VALARM notification actions causes endless problems: users may only hear a sound notification (with no visuals), if at all, most other...

GitLab

#HappyNewYear to all #rfc5545 lovers! 📆

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//collective//icalendar//7.0.0a4.dev129//EN
BEGIN:VEVENT
SUMMARY:Happy New Year!
DTSTART;VALUE=DATE:20260101
DTSTAMP:20251231T164025Z
UID:a4e46e31-ac8a-4ab5-b76f-7c81d0a9bbbc
COLOR:#ffffff
END:VEVENT
END:VCALENDAR

Also with a snowy #rfc7986 COLOR!

Python Code: https://github.com/collective/icalendar/issues/1065

#icalendar #ics #ical #calendar #standard

Add subcomponents in new() · Issue #1065 · collective/icalendar

I just wanted to create a new calendar with a Happy New Year. >>> from icalendar import Calendar, Event >>> from datetime import date >>> happy_new_year = Event.new(summary="Happy New Year!", color...

GitHub