You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* The search for pending tasks will not do send any complicated search requests to the server if it's flagged that the server does not support such requests.
* Bugfix for the PrincipalPropertySearch
* Some typo-fixes in "server feature"-descriptions
* Since the new feature matrix isn't included in any official release yet, I'm free to rename `features.check_support` to `client.features.is_supported`. It's not doing any checking, it's just looking up support in a dict.
* Quite some work on the test code
* While hammering on this, I got tests to complete (again) on Posteo, GMX, eCloud and possibly some other servers (but then I've hammered even more on it later ... so possibly it will break again)
Copy file name to clipboardExpand all lines: CHANGELOG.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,6 +24,8 @@ Except for that, some minor bugfixes.
24
24
25
25
### Changed
26
26
27
+
* The search for pending tasks will not do send any complicated search requests to the server if it's flagged that the server does not support such requests. (automatically setting such flags will come in a later version)
28
+
* If the server is flagged not to support MKCALENDAR but supporting MKCOL instead (baikal), then it will use MKCOL when creating a calendar. (automatically setting such flags will come in a later version)
27
29
* In 1.5.0, I moved the compability matrix from the tests directory and into the project itself - now I'm doing a major overhaul of it. This change is much relevant for end users yet - but already now it's possible to configure "compatibility hints" when setting up the davclient, and the idea is that different kind of workarounds may be applied depending on the compatibility-matrix. Search without comp-type is wonky on many servers, now the `search`-method will automatically deliver a union of a search of the three different comp-types if a comp-type is not set in the parameters *and* it's declared that the compatibility matrix does not work. In parallel I'm developing a stand-alone tool caldav-server-tester to check the compatibility of a caldav server. https://github.com/python-caldav/caldav/issues/532 / https://github.com/python-caldav/caldav/pull/537
28
30
* Littered the code with `try: import niquests as requests except: import requests`, making it easier to flap between requests and niquests.
29
31
* Use the "caldav" logger consistently instead of global logging. https://github.com/python-caldav/caldav/pull/543 - fixed by Thomas Lovden
@@ -34,6 +36,8 @@ Except for that, some minor bugfixes.
34
36
* Tweaks to support upcoming version 7 of the icalendar library.
35
37
* Compatibility-tweaks for baikal, but as for now manual intervention is needed - see https://github.com/python-caldav/caldav/pull/556 and https://github.com/python-caldav/caldav/issues/553
36
38
* Bugfix on authentication - things broke on Baikal if authentication method (i.e. digest) was set in the config. I found a quite obvious bug, I did not investigate why the test code has been passing on all the other servers. Weird thing.
39
+
* Bugfix in the `davclient.principals`-method, allowing it to work on more servers - https://github.com/python-caldav/caldav/pull/559
40
+
* Quite some compatibility-fixing of the test code
Copy file name to clipboardExpand all lines: caldav/compatibility_hints.py
+45-29Lines changed: 45 additions & 29 deletions
Original file line number
Diff line number
Diff line change
@@ -32,8 +32,11 @@ class FeatureSet:
32
32
* "support" -> "quirk" if we have a server-peculiarity where it's needed with special care to get the request through.
33
33
"""
34
34
FEATURES= {
35
+
"get-all-principals": {
36
+
"description": "Search for all principals, using a DAV REPORT query, yields at least one principal"
37
+
},
35
38
"get-current-user-principal": {
36
-
"description": "Support for RFC5397, current principal extension. Most CalDAV servers have this, but it is an extension to the standard"},
39
+
"description": "Support for RFC5397, current principal extension. Most CalDAV servers have this, but it is an extension to the DAV standard"},
37
40
"get-current-user-principal.has-calendar": {
38
41
"type": "server-observation",
39
42
"description": "Principal has one or more calendars. Some servers and providers comes with a pre-defined calendar for each user, for other servers a calendar has to be explicitly created (supported means there exists a calendar - it may be because the calendar was already provisioned together with the principal, or it may be because a calendar was created manually, the checks can't see the difference)"},
"description": "Needless to say, search on any future date range, no matter how far out in the future, should yield the recurring object"
117
123
},
124
+
"search.combined-is-logical-and": {
125
+
"description": "Multiple search filters should yield only those that passes all filters"
126
+
## For "unsupported", we could also add a "behaviour" (returns everything, returns nothing, returns logical OR, etc).
127
+
},
118
128
"search.recurrences.expanded": {
119
129
"description": "According to RFC 4791, the server MUST expand recurrence objects if asked for it - but many server doesn't do that. Some servers don't do expand at all, others deliver broken data, typically missing RECURRENCE-ID. The python caldav client library (from 2.0) does the expand-operation client-side no matter if it's supported or not",
"no-principal-search-self", ## this may be because we haven't set up any users or authentication - so the display name of the current user principal is None
'search.comp-type-optional': {'support': 'fragile', 'description': 'unexpected results from date-search without comp-type - but only sometimes - TODO: research more'},
0 commit comments