Closed Bug 538873 Opened 10 years ago Closed 10 years ago

CalDAV: Cannot Delete Event

Categories

(Calendar :: Provider: CalDAV, defect, major)

defect
Not set
major

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mymailinglists, Assigned: Fallen)

Details

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; de; rv:1.9.0.17) Gecko/2010010604 Ubuntu/8.04 (hardy) Firefox/3.0.17
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.1.5) Gecko/20091204 Lightning/1.0b2pre Thunderbird/3.0

I cannot delete events of a caldav ressource.

I am testing lightning against a tryton server. http://www.tryton.org/

the server log gives me the following when i create an event from lightning and try to delete it afterwards:

::ffff:192.168.111.63 - - [10/Jan/2010 18:48:04] "PUT /presentation/Calendars/admin/3c3e4e48-cd1e-41c5-9372-5c34b0b3eb39.ics HTTP/1.1" 201 -
::ffff:192.168.111.63 - - [10/Jan/2010 18:48:04] "REPORT /presentation/Calendars/admin/ HTTP/1.1" 207 -
::ffff:192.168.111.63 - - [10/Jan/2010 18:48:31] "DELETE /presentation/Calendars/admin3c3e4e48-cd1e-41c5-9372-5c34b0b3eb39.ics HTTP/1.1" 412 -
Calendars/admin3c3e4e48-cd1e-41c5-9372-5c34b0b3eb39.ics uri
[Sun Jan 10 18:48:31 2010] ERROR:webdav:Exception:
Traceback (most recent call last):
  File "/home/kp/localdev/trytond/trytond/protocols/webdav.py", line 254, in get_data
    cache=CACHE)
  File "/home/kp/localdev/trytond/trytond/modules/party_vcarddav/webdav.py", line 262, in get_data
    context=context, cache=cache)
  File "/home/kp/localdev/trytond/trytond/modules/calendar_todo/webdav.py", line 276, in get_data
    context=context, cache=cache)
  File "/home/kp/localdev/trytond/trytond/modules/calendar/webdav.py", line 450, in get_data
    context=context, cache=cache)
  File "/home/kp/localdev/trytond/trytond/webdav/webdav.py", line 510, in get_data
    raise DAV_NotFound
DAV_NotFound: (404, '')

Please notice that there is missing a slash in the DELETE request:
"PUT /presentation/Calendars/admin/3c3e4e48-cd1e-41c5-9372-5c34b0b3eb39.ics HTTP/1.1" 201 -
"DELETE /presentation/Calendars/admin3c3e4e48-cd1e-41c5-9372-5c34b0b3eb39.ics HTTP/1.1" 412 -


Reproducible: Always




I tested the server with evolution too. I can delete the event on the server with evolution without problems. So i can be sure that the server implemtentation is working.
We recently fixed a few bugs w.r.t caldav and url paths. Could you retest with the latest Lightning 1.0b2pre nightlies?
sorry. i am not able to test the new nightly builds.
i think this is the newest one for windows?
http://ftp.mozilla.org/pub/mozilla.org/calendar/lightning/nightly/latest-comm-1.9.2/win32-xpi/

i get the message that this version of lightning is not compatible with thunderbird 3.

is there a problem with the nightly builds?
Korbinian, for the latest nightlies, you need to be using a Thunderbird 3.1 prerelease or nightly.
I can confirm that its happening with the nightly build.
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.3a3pre) Gecko/20100314 Lightning/1.1a1pre Shredder/3.2a1pre.

it cuts out the slash "/" between calendar an .ics "file"
Tobias, are you also using a tryton server? We'll need access to a server that exposes this behavior to fix.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: blocking-calendar1.0+
Yes, i'm also using a tryton server.
It works great with tb2.0 and lightning 0.9 on linux.

There is a public demo with credentials on:
http://www.tryton.org/en/demo.html

you have write access to the calendar with demo/demo.

for the unpatient the caldav source:
https://demo1.4.tryton.org:8080/demo1_4/Calendars/demo

you can install a tryton server for yourself. if you prefer this and need help we'll be grateful to help you.
Attached patch Fix - v1 โ€” โ€” Splinter Review
For the calendarUri, we make sure it ends with a / in the getter. However, we don't do this for the inbox and outbox uris. This leads to the missing slash, and also causes extra inbox polls since http://url/foo/ != http://url/foo.

For the tryton server the inbox and calendar uri is the same. When deleting the item, i saw that normal items also have isInboxItem = true. Is this correct? Or are there more issues?

Simon, I'd appreciate if you could take a quick look into this.
Assignee: nobody → philipp
Status: NEW → ASSIGNED
Attachment #432760 - Flags: review?(simon.at.orcl)
I attached the patch and it works. Great. Thank you very much.

The inbox and calendar uri is the same.
Should the "isInboxItem = true" change after putting it into the inbox?
well, i'm not the programmer of the module but just talked to him.
I'm not quite sure actually how the situation is when the urls are the same

I was experimenting with normal calendar items, not inbox items. Therefore I would think isInboxItem should be false for them. It could be though that our code just checks the inbox uri and then sets isInboxItem to true. This may be a good thing, or maybe not. Simon and Bruno should have more insight there.
OS: Windows XP → All
Hardware: x86 → All
Some servers (notably SOGo and Oracle) have the inbox at the same URI as the calendar proper, and thus require special handling. I'm not familiar with tryton; will take a look.
Oracle never had the calendar and inbox as the same uri, the "/inbox/" resource collection contains the same meetings as the ones in "/MyCalendar/" (Default calendar) with a filter on the attendee owner partstat value of NEEDS-ACTION but they are different URIs. 

However, once you delete a meeting from the calendar, its corresponding "invitation" in the inbox will be deleted as well. But this does not seem to be a problem with Lightning.
Attachment #432760 - Flags: review?(simon.at.orcl) → review+
Pushed to comm-central <http://hg.mozilla.org/comm-central/rev/793d09b1b20d>

-> FIXED
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → 1.0b2
You need to log in before you can comment on or make changes to this bug.