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:     ^

Reply via email to