Commit graph

319 commits

Author SHA1 Message Date
Guillaume Ayoub
2f97d7d1e1 Remove global state about configuration and logs
Many things have been changed to make this possible, probably leading to
many hidden bugs waiting to be found.

Related to #122.
2016-04-22 11:37:02 +09:00
Jasper Bryant-Greene
0670aa9fb4 Corrected calendar-timezone code in xmlutils.py 2016-04-21 10:40:36 +05:30
Guillaume Ayoub
6db946080e Cosmetics 2016-04-21 09:12:00 +09:00
Markus Unterwaditzer
7f2d1c00c4 Unbreak tag filters 2016-04-20 20:17:05 +02:00
Guillaume Ayoub
ecf53c5e1e Merge branch 'master' of github.com:Kozea/radicale 2016-04-20 07:50:58 +09:00
Guillaume Ayoub
3a9bcc7555 Add etag property to items
Related to #380.
2016-04-20 07:49:03 +09:00
Markus Unterwaditzer
1b1ba421ff Fix double slash in REPORT responses
When doing REPORTs with absolute paths as hrefs, the response hrefs
contain a double slash at the beginning. This breaks URL parsers and
makes them assume they have a URL without protocol of the format
`//example.com/foo/bar/`.
2016-04-19 23:19:22 +02:00
Guillaume Ayoub
bf8bd90bcb Fix removal of base_prefix in multiget requests 2016-04-19 10:44:02 +09:00
Guillaume Ayoub
65659fc909 Improve WebDAV compatibility
Add getlastmodified and getcontentlength properties, and fix nested
collections support. Fix #321.
2016-04-18 09:11:00 +09:00
Guillaume Ayoub
99544fcf80 Allow the creation of empty collections
Fix #201
2016-04-17 13:58:56 +09:00
Markus Unterwaditzer
e8c1defe6a Update PROPPATCH to new storage API 2016-04-13 23:02:00 +02:00
Markus Unterwaditzer
472d016d1e Fix crash when fetching nonexistent href 2016-04-13 22:56:57 +02:00
Guillaume Ayoub
e586569b31 Fix a lot of details 2016-04-12 18:21:18 +02:00
Guillaume Ayoub
406027f3c9 Change the Collection API
The new API used comes from vdirsyncer, as proposed by @untitaker in
issue #130.

The code has been tested and works with the (too simple) unit tests, and
with Lightning and DAVdroid. Many things are broken and a good part of
the code has not be ported to the new API yet. TODOs have been added
where the application is known to be broken.
2016-04-11 20:11:35 +02:00
Guillaume Ayoub
41e319a8b8 Merge ical and storage modules 2016-04-10 02:08:07 +02:00
Guillaume Ayoub
7a0e267f19 Better collection discovery 2016-04-09 15:11:47 +02:00
Guillaume Ayoub
44ba2c36a7 Merge branch 'master' of https://github.com/hadleyrich/Radicale 2016-04-08 15:05:56 +02:00
Guillaume Ayoub
434cb533e9 Remove Python 2 support 2016-03-31 19:57:40 +02:00
igogold
aa04aa04b7 Fix privilege set for read only collection 2016-03-04 11:05:13 +05:00
Giel van Schijndel
a06e4ef075 PROPFIND: correctly handle 'propall' and 'propnames'
* Handle both the explicit <propall/> and its implicit variants
  - the missing request-body case was already handled
  - the empty request-body case wasn't
  - the explicit (a request-body containing <propall/>) wasn't either
 * <propnames/> now lists all retrievable properties

Signed-off-by: Giel van Schijndel <me@mortis.eu>
2015-06-26 13:33:10 +02:00
Hadley Rich
54d71355d1 Change xmlutils propfind to return readonly calendars 2015-06-04 11:23:01 +12:00
Liam
ba5d38d09b Fix typo 2015-05-15 13:47:44 +01:00
Guillaume Ayoub
ced7e76ba0 Small style fixes 2015-05-01 10:31:25 +02:00
Guillaume Ayoub
675f9d1f87 Merge pull request #255 from jspricke/fix_FutureWarning
Fix FutureWarning, explicitly test prop_element for None
2015-05-01 10:22:38 +02:00
Markus Unterwaditzer
1126f318af Fully fix #258
If I do REPORT requests, the following line would raise a KeyError:

    items = [collection.items[name]]

Wrapping it with a try-except block obviously fixes that issue.

At least for REPORT requests, Radicale now also returns proper HTTP
status codes when items or just its properties couldn't be found.
2015-02-08 17:52:55 +01:00
Guillaume Ayoub
2c4b335fad Clean the ical API 2015-02-07 17:26:20 +01:00
Jochen Sprickerhof
c43b473c4a Fix FutureWarning, explicitly test prop_element for None 2015-01-23 14:41:41 +01:00
Guillaume Ayoub
abb1de883b Allow PUT requests to change the whole calendar (see #250) 2015-01-05 15:45:24 +01:00
Guillaume Ayoub
f2fc02501c Merge pull request #226 from meyerd/master
Only iterate props in REPORT request if they are there
2014-12-14 16:50:22 +01:00
Felix Lange
20b1a29149 fix color support
5f2245c35f introduced an additional alias for the
http://apple.com/ns/ical namespace. this can cause problems.
2014-11-11 21:26:29 +01:00
Dominik
b561d1428b only iterate props in REPORT request if they are there 2014-10-25 20:28:50 +02:00
Markus Unterwaditzer
4859436ba8 Return user basepath for current-user-principal
Fix #196

The way to do collection discovery described in
http://stackoverflow.com/a/11673483 doesn't work well with Radicale:

1. current-user-principal returns /user/calendar.ics/

2. PROPFINDs asking for calendar-home-set will return the URL that was
   used in the request, which is still /user/calendar.ics/

3. The final PROPFIND with Depth: 1 is supposed to list all collections,
   but because the request is done with a collection URL, Radicale returns
   the items for the "calendar.ics" collection which might or might not
   exist.
2014-08-09 23:01:13 +02:00
Guillaume Ayoub
0822f99650 Allow full URLs in href tags for REPORT requests
Fixes #192
2014-08-05 15:42:39 +02:00
Mathieu Dupuy
a94984b653 revert of 00674fe 2014-07-25 15:41:56 +02:00
Markus Unterwaditzer
030436327a Fix #143
Since all iCalendar objects have VCALENDAR inside them, that tag is
absolutely meaningless (in this context).
2014-06-04 22:55:35 +02:00
Guillaume Ayoub
45f8e76643 Revert "Follow the depth in REPORT requests"
This reverts commit 9556508b2a.
2014-03-05 19:26:42 +01:00
Guillaume Ayoub
9556508b2a Follow the depth in REPORT requests 2014-03-04 01:37:14 +01:00
Christoph Polcin
387e1fee76 Fix calendar/addressbook-home-set in PROPFIND response 2014-01-19 19:35:53 +01:00
Christoph Polcin
d09b16c5ad Fix principal-collection-set in PROPFIND response 2014-01-19 19:35:53 +01:00
Christoph Polcin
83db27303f Respond to all authenticated PROPFIND requests 2014-01-19 19:35:46 +01:00
Christoph Polcin
2ddec14535 Fix principal URLs in PROPFIND response 2014-01-05 21:22:53 +01:00
Guillaume Ayoub
fe1cd1d44d Use collection URL instead of main folder as user's main URL (see #32) 2013-10-24 15:31:49 +02:00
Jean-Marc Martins
484933d4b6 Merge branch 'master' of github.com:Kozea/Radicale 2013-08-28 10:48:15 +02:00
Guillaume Ayoub
00b498677d Merge pull request #48 from jspricke/color
Add color support
2013-08-27 08:02:38 -07:00
Jean-Marc Martins
056dec5819 Decode urls in XML (fix #26) 2013-08-27 16:43:36 +02:00
Jochen Sprickerhof
5f2245c35f Add color support
You can change the default color by changing the props (.props file for
the filesystem storage backend).
2013-08-17 12:16:37 +02:00
Guillaume Ayoub
70f8ee94d9 Fix supported-calendar-component-set for collection's components 2013-06-17 11:30:26 +02:00
Guillaume Ayoub
dd7f886fcc Add content type for collection items 2013-05-14 13:18:12 +02:00
Guillaume Ayoub
b7aa5c8d14 Fix collection properties set by proppatch or mk* requests 2013-05-13 23:19:22 +02:00
Guillaume Ayoub
69e2eb0908 Store the supported-calendar-component-set property in the calendar properties 2013-05-10 14:56:17 +02:00