Skip to content

vdirsyncer 0.19: digest auth broken #1015

Closed
@0-wiz-0

Description

@0-wiz-0

When I updated from 0.18 to 0.19, 'vdirsyncer sync' broke.

Syncing remote1/default                                                                                                                                                                                       
error: Unknown error occurred for remote1/default: BasicAuth() tuple is required instead                                                                                                                      
error: Use `-vdebug` to see the full traceback.

with -vdebug:

debug:   File "/usr/pkg/lib/python3.11/site-packages/vdirsyncer/cli/tasks.py", line 72, in sync_collection
debug:     await sync.sync(                                                                                      
debug:   File "/usr/pkg/lib/python3.11/site-packages/vdirsyncer/sync/__init__.py", line 144, in sync                                                                                                                               
debug:     a_nonempty = await a_info.prepare_new_status()                
debug:                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                        
debug:   File "/usr/pkg/lib/python3.11/site-packages/vdirsyncer/sync/__init__.py", line 48, in prepare_new_status 
debug:     async for href, etag in self.storage.list():                                                          
debug:   File "/usr/pkg/lib/python3.11/site-packages/vdirsyncer/storage/dav.py", line 859, in list                                                                                                                                 
debug:     async for href, etag in super().list():                                                               
debug:   File "/usr/pkg/lib/python3.11/site-packages/vdirsyncer/storage/dav.py", line 676, in list                                                                                                                                 
debug:     response = await self.session.request(                                                                                                                                                                                  
debug:                ^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                
debug:   File "/usr/pkg/lib/python3.11/site-packages/vdirsyncer/storage/dav.py", line 416, in request            
debug:     return await http.request(method, url, session=session, **more)                                       
debug:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                
debug:   File "/usr/pkg/lib/python3.11/site-packages/vdirsyncer/http.py", line 132, in request                                                                                                                                     
debug:     response = await session.request(method, url, **kwargs)                                               
debug:                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                                                                                 
debug:   File "/usr/pkg/lib/python3.11/site-packages/aiohttp/client.py", line 508, in _request                   
debug:     req = self._request_class(                                                                            
debug:           ^^^^^^^^^^^^^^^^^^^^                                                                            
debug:   File "/usr/pkg/lib/python3.11/site-packages/aiohttp/client_reqrep.py", line 310, in __init__            
debug:     self.update_auth(auth)                                                                                
debug:   File "/usr/pkg/lib/python3.11/site-packages/aiohttp/client_reqrep.py", line 495, in update_auth
debug:     raise TypeError("BasicAuth() tuple is required instead")

In case it matters, this is with Python 3.11.0 on NetBSD, aiohttp 3.8.3, server is running baikal 0.9.2

The config for the server looks like this:

type = "caldav"
url = "https://caldav.hostname.at/cal.php/principals/wiz/"
username = "wiz"
password = "something"
auth = "digest"

Removing auth or setting it to basic doesn't work.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions