Currently, VALARMs are serialized without an ACTION property, which is required
by RFC 2445. This means that modifying an ICS calendar created by another app
which has VALARMs will corrupt any VALARMs there.
Reassigning to Joey, since he owns the dependent bug which will cause this to be fixed.
After Bug 315051 we now serialize with an ACTION property. We'll still lose x-props from foreign alarms though.
I kinda suspect that this is fixed now.
(In reply to comment #3)
> I kinda suspect that this is fixed now.
Nope, we need to replicate the general fix for alarm components too.
iCal and Evolution appear to use X- properties, so this probably needs to block. We'd like to see a low-risk fix though, which seems likely to mean something less correct than splitting of calIAlarm.
jminta thinks that the properties used by Evolution and iCal here wouldn't actually be missed if they were lost. Waiting on more analysis...
(In reply to comment #6)
> Waiting on more analysis...
My argument here is not that the way they use them isn't interesting (it's nearly identical to our method), but rather that the way people use multiple calendaring apps isn't interesting. This bug only becomes meaningful in the case that people repeatedly edit the same data-source from multiple applications, in which case the data about missed alarms may be lost. Given that no one has reported a bug about 'dismissed alarms in other apps re-fired after sunbird edit,' this tells me that this usage case is rare, if not non-existent.
That seems like sound reasoning to me. Removing from the blocker list.
When we do get around to fixing this, we should probably break the X-props thing out so that VCALENDAR, VTIMEZONE, VEVENT/VTODO, and VALARM can each use it and each have their own bag. That seems like the only way to preserve and round-trip X-PROPS at each level.
Not going to make the 0.5 train.
Moving bugs from Joey without a patch back to nobody, since Joey has basically left the project.
Given our tight schedule and the fact that the Calendar devs already have too
much on their plate for 0.7, this is unlikely to make it for 0.7 unless someone
steps up and finishes this.
Bug 353492 will probably fix this, since a whole new calIAlarm interface will be added that saves x-props.
Fixed by bug 471973.
judging comment 5 : does the new alarm-interface store x-props in alarms? This would solve the problem with dimissing one alarm dismisses all alarms as noticed in bug 353492.
It stores x-props, but I believe we don't store the last-ack in the valarm but rather on the item itself. As noted in the bug you mentioned, I'm not quite sure we even need to let the user dismiss multiple alarms for the same event separately if we are smart about how we display the alarm.
Created attachment 378253 [details]