Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Tests: It's needed with some test-runs without `features` configured

Open
#725 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
testing

Research direction

Start by reviewing the existing integration tests and compatibility-hint/workaround paths in the caldav library; the issue does not name specific files. Identify workarounds expected to work without features, add integration coverage using a davclient object stripped of feature configuration, and run those tests against the relevant server scenarios. Done means regressions in the no-features use case are covered.

Written by the indexing model from the issue text.

Description

I've "always" had workarounds for non-compliant servers in the caldav library.

The "compatibility flags" was originally meant only to skip integration tests on servers not supporting certain features. Later it got reorganized, renamed into "compatibility hints" and is now also used in the library itself for enabling/disabling some workarounds (notably in the search functionality). However, most of the workarounds are kicking in automatically when needed.

For all the integration testing done today, features is specified. This is contrary to the common use-case where the server is only configured with username and password, but without features - hence regressions like #722 was not caught. #713 is also an issue that couldn't be tested within the current test framework (even if #720 is fixed). The upcoming 3.4-release has a known regression for some combos of use-case scenarios and servers if not specifying the features-flag - but it had to be tested and verified manually, and who knows how many other unknown regressions there are.

It's needed to get an overview of all the workarounds that "should work even without features configured", make integration test code for it, and run those tests towards a patched davclient object stripped of the features-configuration.

Dominant language
Python
Stars
412
Forks
113
Avg merge
1d 7h
Merged PRs (30d)
34

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from python-caldav/caldav

All issues in python-caldav/caldav

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.