Ability to subscribe to issues as ICS calendar #6364

Open
opened 2025-11-02 06:53:38 -06:00 by GiteaMirror · 5 comments
Owner

Originally created by @nodiscc on GitHub (Nov 20, 2020).

Description

Users should be able to subscribe to their assigned issues (or any other issue search) as an ICS calendar file. This allows integrating gitea issues/TODOs in one's own calendar/task management system (eg. Thunderbird or any calendar/task manager that supports ICS subscriptions)

For example, Gitlab has this feature:

image

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//GitLab//NONSGML GitLab//EN
CALSCALE:GREGORIAN
X-WR-CALNAME:GitLab Issues
BEGIN:VEVENT
DTSTAMP:20201120T184651Z
UID:AAAA-BBBB-CCCC-DDD-2b12cfece978
DTSTART;VALUE=DATE:20201121
DESCRIPTION:Find out more at https://gitlab.com/nodiscc/awesome-linuxaudio/
 -/issues/7
SUMMARY:Move CI/syntax checks to gitlab CI (in nodiscc/awesome-linuxaudio)
TRANSP:TRANSPARENT
URL:https://gitlab.com/nodiscc/awesome-linuxaudio/-/issues/7
END:VEVENT
END:VCALENDAR

  • After subscribing to this ICS file from a calendar management program, issues are displayed according to their due date property on the calendar view:

image

Originally created by @nodiscc on GitHub (Nov 20, 2020). <!-- NOTE: If your issue is a security concern, please send an email to security@gitea.io instead of opening a public issue --> <!-- 1. Please speak English, this is the language all maintainers can speak and write. 2. Please ask questions or configuration/deploy problems on our Discord server (https://discord.gg/gitea) or forum (https://discourse.gitea.io). 3. Please take a moment to check that your issue doesn't already exist. 4. Please give all relevant information below for bug reports, because incomplete details will be handled as an invalid report. --> - Gitea version (or commit ref): any - Can you reproduce the bug at https://try.gitea.io: - [x] Yes ## Description Users should be able to subscribe to their assigned issues (or any other issue search) as an ICS calendar file. This allows integrating gitea issues/TODOs in one's own calendar/task management system (eg. Thunderbird or any calendar/task manager that supports ICS subscriptions) For example, Gitlab has this feature: - Enter any search query from the issues dashboard, eg https://gitlab.com/dashboard/issues?assignee_username=nodiscc - An ICS link appears in the top right corner of search results ![image](https://user-images.githubusercontent.com/3950390/99838142-8f8a6a80-2b60-11eb-95db-8ab9f6a93ab4.png) - The link points to an ICS file (protected by a unique token) https://gitlab.com/dashboard/issues.ics?assignee_username=nodiscc&due_date=next_month_and_previous_two_weeks&feed_token=XXXXXXXXX&sort=closest_future_date&state=opened. Example contents: ```ics BEGIN:VCALENDAR VERSION:2.0 PRODID:-//GitLab//NONSGML GitLab//EN CALSCALE:GREGORIAN X-WR-CALNAME:GitLab Issues BEGIN:VEVENT DTSTAMP:20201120T184651Z UID:AAAA-BBBB-CCCC-DDD-2b12cfece978 DTSTART;VALUE=DATE:20201121 DESCRIPTION:Find out more at https://gitlab.com/nodiscc/awesome-linuxaudio/ -/issues/7 SUMMARY:Move CI/syntax checks to gitlab CI (in nodiscc/awesome-linuxaudio) TRANSP:TRANSPARENT URL:https://gitlab.com/nodiscc/awesome-linuxaudio/-/issues/7 END:VEVENT END:VCALENDAR ``` - After subscribing to this ICS file from a calendar management program, issues are displayed according to their `due date` property on the calendar view: ![image](https://user-images.githubusercontent.com/3950390/99838549-3a028d80-2b61-11eb-9a3c-abe258cba2fb.png)
GiteaMirror added the type/proposaltype/feature labels 2025-11-02 06:53:38 -06:00
Author
Owner

@nodiscc commented on GitHub (Nov 20, 2020):

Note that Gitlab only implements the VEVENT ICS object type (calendar event - DTSTART value is required). VTODO is another widely used object type (todo list entry with or without a due date), but is not implemented. In my opinion this is fine and there is no need to implement the whole ICS specification 🙃

@nodiscc commented on GitHub (Nov 20, 2020): Note that Gitlab only implements the VEVENT ICS object type (calendar event - DTSTART value is required). VTODO is another widely used object type (todo list entry with or without a due date), but is not implemented. In my opinion this is fine and there is no need to implement the whole [ICS specification](https://tools.ietf.org/html/rfc5545) :upside_down_face:
Author
Owner

@Zocker1999NET commented on GitHub (Jun 23, 2022):

I would like having support for VTODO's because this would make it possible to represent issues without due dates and to display them in task apps instead of (just) your calendar. Maybe both could be implemented and the user might choose which link the user wants. But this can happen in a second step, implementing any support for ICS export would be a good start.

Has Gitea already an infrastructure for creating & managing such tokens?

@Zocker1999NET commented on GitHub (Jun 23, 2022): I would like having support for VTODO's because this would make it possible to represent issues without due dates and to display them in task apps instead of (just) your calendar. Maybe both could be implemented and the user might choose which link the user wants. But this can happen in a second step, implementing any support for ICS export would be a good start. Has Gitea already an infrastructure for creating & managing such tokens?
Author
Owner

@ericomeehan commented on GitHub (Apr 21, 2025):

@nodiscc I agree that there is no need to implement the entire spec, but VTODO seems like a much better object type to represent issues, so I would vote for that one. Any idea why Gitlab chose VEVENT?

@ericomeehan commented on GitHub (Apr 21, 2025): @nodiscc I agree that there is no need to implement the entire spec, but VTODO seems like a much better object type to represent issues, so I would vote for that one. Any idea why Gitlab chose VEVENT?
Author
Owner

@nodiscc commented on GitHub (Apr 21, 2025):

I have no strong opinion either way. Any improvement that would allow displaying assigned Gitea issues in a calendar program that supports ICS subscriptions would be welcome.

@nodiscc commented on GitHub (Apr 21, 2025): I have no strong opinion either way. Any improvement that would allow displaying assigned Gitea issues in a calendar program that supports ICS subscriptions would be welcome.
Author
Owner

@flomine commented on GitHub (Jul 8, 2025):

I agree. Such a feature is really necessary for me and its absence prevents me from leaving gitlab completely.
Currently for my projects under gitea, I get around the problem by using a script which, via the API, retrieves all the issues assigned to me and then generates in ICS using VTODO.
It works but it's not practical at all. I'd prefer something integrated into gitea.

@flomine commented on GitHub (Jul 8, 2025): I agree. Such a feature is really necessary for me and its absence prevents me from leaving gitlab completely. Currently for my projects under gitea, I get around the problem by using a script which, via the API, retrieves all the issues assigned to me and then generates in ICS using VTODO. It works but it's not practical at all. I'd prefer something integrated into gitea.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/gitea#6364