Open Bug 353369 Opened 19 years ago Updated 4 months ago

X- properties inside VCALENDAR are not roundtripped on import/export

Categories

(Calendar :: Import and Export, defect)

defect

Tracking

(Not tracked)

People

(Reporter: mattwillis, Unassigned)

References

Details

(Keywords: dataloss)

Attachments

(2 files)

X-* properties inside VCALENDAR, but not inside a VEVENT or VTODO, are lost when importing and then exporting an ICS file which contains them.
Note the missing X-WR-CALNAME, X-WR-RELCALID and X-WR-TIMEZONE
This should be easy to fix; marking as blocking.
Flags: blocking0.3+
It turns out that fixing this would be non-trivial. Additionally, "Import" and "Export" lose data in many programs for many different reasons. As long as the provider doesn't lose this data when subscribing, I think that's sufficient for 0.3.
Flags: blocking0.3+ → blocking0.3-
After speaking with Cyrus Daboo at Calconnect, it's clear that this is a bug that we do in fact want to fix. Bug 308538 is for the same problem, but in VALARM, and I suspect we'll eventually run into something similar with VTIMEZONE. One possible avenue would be to refactor the X-Props -> Property Bag code currently used by VEVENT and VTODO so that it could be used not only by VCALENDAR, but VALARM, VTIMEZONE, and VWHATEVER.
Blocks: 168176
Component: Internal Components → Import and Export
Summary: X- properties inside VCALENDAR are not roundtripped → X- properties inside VCALENDAR are not roundtripped on import/export
Priority: -- → P1
Whiteboard: swag: 2d
Target Milestone: --- → Sunbird 0.5
taking this one.
Assignee: nobody → michael.buettner
Note that other properties aren't serialized, such as METHOD. See the iTIP email service for details.
Not going to make the 0.5 train.
Target Milestone: Sunbird 0.5 → ---
Assignee: michael.buettner → nobody
Flags: wanted-calendar0.9+
Whiteboard: swag: 2d
Flags: wanted-calendar1.0+
Flags: wanted-calendar0.9+
Flags: blocking-calendar1.0?
No longer blocks: 168176
Afaik we have no API to actually get/set calendar-specific ICAL attributes. We need to agree on something here first. Unfortunatly we already have get/setProperty that do different things. We could go with get/setICALProperty() maybe. Opinions?
I think the only relevant use case is lossless roundtripping from/to storage (Home) calendar. How about using the meta-data API for this purpose, mapping property names to metadata ids.
Hmm, thinking further about this, mapping property names to metadata ids doesn't work, because properties may occur multiple times. But I think we can serialize all top-level ical properties and save them under a single metadata id, e.g. |icalProperties|.
I tend to think it may not be sensible to roundtrip those properties at all when importing. I think top-level properties are part of a specific calendar. When merging *multiple* calendars together into a single one this may not make sense, e.g. multiple X-WR-TIMEZONE or X-WR-CALNAME properties in the same calendar. On the other hand, I think this bug/feature makes sense when caching a single calendar, preserving its top-level X-props. Opinions? Should we refine this bug?
This bug is about import/export, imho the x-props don't have to be preserved as Lightning takes over the whole calendar. As for subsribing to external storages, in these cases the x-props should be preserved as the storages may be accessed from different clients. Caching is the same as subscribing so the x-props should be preserved but this is outside the scope of this bug imho.
Indeed, and since ics subscriptions already preserve top-level properties, caching is the only bug left. Right?
Shouldn't block 1.0, especially since we aren't very far with discussion here and there is noone to drive this.
Flags: blocking-calendar1.0? → blocking-calendar1.0-
Just to rephrase my recent thoughts on this and agree with Bas: I don't think we want this for importing (proposing WONTFIX), though the feature would be nice w.r.t. caching (should be different bug IMO).
Priority: P1 → --
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: