Hi,
This also affects vdirsyncer. See the attached log.
The issue is that python3-aiodns is not yet compatible with pycares 5. The
3.6.1 version only "fixes" this by adding a version requirement [1], but that's
not reflected on the Debian package, and pycares only has one version in the
repository in Debian.
See this issue upstream: https://github.com/aio-libs/aiodns/issues/214
python3-aiodns is optional for vdirsyncer, but annoyingly uninstalling it
results in another error. Probably vdirsyncer's fault for this one.
Thank you for looking into this!
[1] https://github.com/aio-libs/aiodns/pull/215/files
$ vdirsyncer -vdebug sync
Syncing calendars/92133da4-2dbf-495d-847c-a9d9ae76ebf6
debug: ====================
debug: PROPFIND [redacted]/92133da4-2dbf-495d-847c-a9d9ae76ebf6/
debug: {'User-Agent': 'vdirsyncer/0.20.0', 'Content-Type': 'application/xml;
charset=UTF-8', 'Depth': '1'}
debug: b'<?xml version="1.0" encoding="utf-8" ?>\n <propfind
xmlns="DAV:">\n <prop>\n <resourcetype/>\n
<getcontenttype/>\n <getetag/>\n
</prop>\n </propfind>\n '
debug: Sending request...
error: Unknown error occurred for
calendars/92133da4-2dbf-495d-847c-a9d9ae76ebf6: Channel.getaddrinfo() takes 3
positional arguments but 4 positional arguments (and 4 keyword-only arguments)
were given
error: Use `-vdebug` to see the full traceback.
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/cli/tasks.py", line
74, in sync_collection
debug: await sync.sync(
debug: ...<7 lines>...
debug: )
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/sync/__init__.py",
line 150, in sync
debug: b_nonempty = await b_info.prepare_new_status()
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/sync/__init__.py",
line 55, in prepare_new_status
debug: async for href, etag in self.storage.list(): # type:
ignore[attr-defined]
debug: ...<9 lines>...
debug: _store_props(ident, meta)
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/storage/dav.py", line
849, in list
debug: async for href, etag in super().list():
debug: yield href, etag
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/storage/dav.py", line
670, in list
debug: response = await self.session.request(
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: ...<4 lines>...
debug: )
debug: ^
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/storage/dav.py", line
411, in request
debug: return await http.request(method, url, session=session, **more)
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/http.py", line 199, in
request
debug: response = await session.request(method, url, headers=headers,
**kwargs)
debug:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/aiohttp/client.py", line 779, in
_request
debug: resp = await handler(req)
debug: ^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/aiohttp/client.py", line 734, in
_connect_and_send_request
debug: conn = await self._connector.connect(
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: req, traces=traces, timeout=real_timeout
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: )
debug: ^
debug: File "/usr/lib/python3/dist-packages/aiohttp/connector.py", line 672,
in connect
debug: proto = await self._create_connection(req, traces, timeout)
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/aiohttp/connector.py", line 1239,
in _create_connection
debug: _, proto = await self._create_direct_connection(req, traces, timeout)
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/aiohttp/connector.py", line 1562,
in _create_direct_connection
debug: hosts = await self._resolve_host(host, port, traces=traces)
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/aiohttp/connector.py", line 1178,
in _resolve_host
debug: return await asyncio.shield(resolved_host_task)
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/aiohttp/connector.py", line 1209,
in _resolve_host_with_throttle
debug: addrs = await self._resolver.resolve(host, port, family=self._family)
debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: File "/usr/lib/python3/dist-packages/aiohttp/resolver.py", line 117,
in resolve
debug: resp = await self._resolver.getaddrinfo(
debug: ~~~~~~~~~~~~~~~~~~~~~~~~~~^
debug: host,
debug: ^^^^^
debug: ...<3 lines>...
debug: flags=_AI_ADDRCONFIG,
debug: ^^^^^^^^^^^^^^^^^^^^^
debug: )
debug: ^
debug: File "/usr/lib/python3/dist-packages/aiodns/__init__.py", line 243, in
getaddrinfo
debug: self._channel.getaddrinfo(
debug: ~~~~~~~~~~~~~~~~~~~~~~~~~^
debug: host, port, cb, family=family, type=type, proto=proto,
flags=flags
debug:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
debug: )
debug: ^