Skip to content

Commit e1a11f6

Browse files
tobixenclaude
andcommitted
docs: document caldav-server-tester in the config file guide
Add a "Testing server compatibility" section to configfile.rst explaining how to find, install, and run caldav-server-tester, and how to use its output to populate the features key in calendar.conf. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 20761ca commit e1a11f6

1 file changed

Lines changed: 40 additions & 0 deletions

File tree

docs/source/configfile.rst

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,3 +271,43 @@ Shared base with per-calendar overrides
271271
inherits: _server
272272
calendar_name: Tasks
273273
calendar_url: https://caldav.example.com/cal/tasks/
274+
275+
Testing server compatibility
276+
============================
277+
278+
The `caldav-server-tester <https://github.com/python-caldav/caldav-server-tester>`_
279+
companion tool probes a CalDAV server and reports which features and RFC
280+
requirements it supports, which ones it handles in a quirky way, and which ones
281+
it gets wrong. Its output can be used to populate the ``features`` key in your
282+
config file so the caldav library applies the right workarounds automatically.
283+
284+
Installation::
285+
286+
pip install caldav-server-tester
287+
288+
Run against a config section defined in your ``calendar.conf``::
289+
290+
caldav-server-tester --config-section myserver
291+
292+
Or supply connection details directly::
293+
294+
caldav-server-tester --caldav-url https://example.com/dav \
295+
--caldav-username alice \
296+
--caldav-password secret
297+
298+
The tool will run a series of checks and print which features deviate from the
299+
CalDAV standard. To get machine-readable output that you can paste into your
300+
``calendar.conf``, use ``--format yaml``::
301+
302+
caldav-server-tester --config-section myserver --format yaml
303+
304+
Copy the ``features:`` block from the output into your config section.
305+
Alternatively, if your server matches one of the named profiles in
306+
:mod:`caldav.compatibility_hints` (e.g. ``radicale``, ``baikal``,
307+
``xandikos``), you can just name the profile::
308+
309+
myserver:
310+
caldav_url: https://example.com/dav
311+
caldav_username: alice
312+
caldav_password: secret
313+
features: radicale

0 commit comments

Comments
 (0)