Modify

Opened 6 months ago

Closed 6 months ago

Last modified 6 days ago

#14110 closed enhancement (fixed)

WeekPlanPlugin: ical / Google Calendar support

Reported by: anonymous Owned by: lucid
Priority: normal Component: WeekPlanPlugin
Severity: normal Keywords: ical
Cc: Trac Release:

Description

#11615 introduced:

extension point for event providers.

... additional components could be added for different kinds of events:

  • ...
  • External iCalendar feed events
  • ...

These providers should define a "plan prefix" and are used as data sources when that prefix is used. (E.g. [[WeekPlan(plan=milestone:iteration1|ical:myfeed)]])

I would like to add this iCalendar integration component.

Attachments (1)

ical_provider.patch (8.6 KB) - added by anonymous 6 months ago.

Download all attachments as: .zip

Change History (12)

comment:1 Changed 6 months ago by anonymous

I have the basic component working:

  • pypi:icalendar can be used to parse the ical data.
  • Read-only.
  • Feeds could maybe be configured in a trac.ini config section.

Not 100% clear:

  • Access to req would be needed for formatting e.g. time using the user's timezone.
    • I'm not sure if there's a backward compatible way to access / add this. Maybe backward compatibility is not important as there are no third party extensions?
  • Should @cached from trac.cache be used to cache the ical data? When / how should it be invalidated?

Does anyone have some ideas?

comment:2 Changed 6 months ago by anonymous

Attachment "ical_provider.py" was removed?

comment:3 Changed 6 months ago by Ryan J Ollos

Might have been unintentional in spam cleanup.

Please consider submitting a patch as described in TracDev/SubmittingPatches.

Changed 6 months ago by anonymous

Attachment: ical_provider.patch added

comment:4 Changed 6 months ago by lucid

In 18468:

WeekPlanPlugin: Bump version to 1.5: ical support
(see #14110)

comment:5 Changed 6 months ago by lucid

Resolution: fixed
Status: newclosed

comment:6 Changed 6 months ago by Ryan J Ollos

weekplan/ical_provider.py is missing in r18468.

comment:7 Changed 6 months ago by Ryan J Ollos

You can also make icalendar optional. Something like this:

  • install_requires=['icalendar'] -> extras_requires={'ical': 'icalendar'}
  • 'weekplan.ical_provider = weekplan.ical_provider' -> 'weekplan.ical_provider = weekplan.ical_provider[ical]'

comment:8 Changed 6 months ago by lucid

In 18469:

WeekPlanPlugin: Add missing ical file and make it optional
(see #14110)

comment:9 Changed 6 months ago by lucid

In 18470:

WeekPlanPlugin: Really make it optional
(see #14110)

comment:10 Changed 6 months ago by lucid

Thanks all.

comment:11 Changed 6 days ago by lucid

In 18497:

WeekPlanPlugin: ical recurring events support
(fix #14122)

Fix AttributeError: 'datetime.date' object has no attribute 'date' (fix #14149)

Fix extras_require (see #14110)

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain lucid.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.