pimutils / pimutils/vdirsyncer

Error during sync - got unexpected keywork argument 'name'

Open
#1,010 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1.9k
Forks
185
Avg merge
11h 49m
Merged PRs (30d)
1

Description

I'm getting the error shown below when I attempt to sync to my Nextcloud instance. - It was working previously. - My last sync was probably 2 weeks prior to today's attempt. I updated my PostmarketOS 3 or 4 times in that time span as well as 1 update of Nextcloud 23.0.10 to 23.0.11 in that same time span.

  • vdirsyncer version: 0.18.0
  • server software: Nextcloud 23.0.11
  • Python version: 3.10
  • operating system: PostmarketOS Edge
  • config file:
[general]
status_path = "~/.local/vdirsyncer/status/"

[pair my_calendar]
a = "my_calendar_local"
b = "my_calendar_remote"
collections = ["from a", "from b"]
conflict_resolution = "b wins"

[storage my_calendar_local]
type = "filesystem"
path = "~/.local/vdirsyncer/calendar/"
fileext = ".ics"

[storage my_calendar_remote]
type = "caldav"
url = "https://example.com/"
username = "user@example.com"
password = "secret"

[pair my_contacts]
a = "my_contacts_local"
b = "my_contacts_remote"
collections = ["from a", "from b"]

[storage my_contacts_local]
type = "filesystem"
path = "~/.local/vdirsyncer/contacts/"
fileext = ".vcf"

[storage my_contacts_remote]
type = "carddav"
url = "https://example.com/"
username = "user@example.com"
password = "secret"
  • debug output:
Syncing my_calendar/personal
error: Unknown error occurred for my_calendar/personal: deprecated() got an unexpected keyword argument 'name'
error: Use `-vdebug` to see the full traceback.
debug:   File "/usr/lib/python3.10/site-packages/vdirsyncer/cli/tasks.py", line 59, in sync_collection
debug:     b = storage_instance_from_config(collection.config_b)
debug:   File "/usr/lib/python3.10/site-packages/vdirsyncer/cli/utils.py", line 264, in storage_instance_from_config
debug:     cls, new_config = storage_class_from_config(config)
debug:   File "/usr/lib/python3.10/site-packages/vdirsyncer/cli/utils.py", line 252, in storage_class_from_config
debug:     cls = storage_names[storage_name]
debug:   File "/usr/lib/python3.10/site-packages/vdirsyncer/cli/utils.py", line 51, in __getitem__
debug:     mod = importlib.import_module(modname)
debug:   File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
debug:     return _bootstrap._gcd_import(name[level:], package, level)
debug:   File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
debug:   File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
debug:   File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
debug:   File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
debug:   File "<frozen importlib._bootstrap_external>", line 883, in exec_module
debug:   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
debug:   File "/usr/lib/python3.10/site-packages/vdirsyncer/storage/dav.py", line 12, in <module>
debug:     from .. import http
debug:   File "/usr/lib/python3.10/site-packages/vdirsyncer/http.py", line 33, in <module>
debug:     _detect_faulty_requests()
debug:   File "/usr/lib/python3.10/site-packages/vdirsyncer/http.py", line 25, in _detect_faulty_requests
debug:     from requests_toolbelt.auth.guess import GuessAuth  # noqa
debug:   File "/usr/lib/python3.10/site-packages/requests_toolbelt/__init__.py", line 12, in <module>
debug:     from .adapters import SSLAdapter, SourceAddressAdapter
debug:   File "/usr/lib/python3.10/site-packages/requests_toolbelt/adapters/__init__.py", line 12, in <module>
debug:     from .ssl import SSLAdapter
debug:   File "/usr/lib/python3.10/site-packages/requests_toolbelt/adapters/ssl.py", line 16, in <module>
debug:     from .._compat import poolmanager
debug:   File "/usr/lib/python3.10/site-packages/requests_toolbelt/_compat.py", line 56, in <module>
debug:     from requests.packages.urllib3.contrib.pyopenssl \
debug:   File "/usr/lib/python3.10/site-packages/urllib3/contrib/pyopenssl.py", line 50, in <module>
debug:     import OpenSSL.SSL
debug:   File "/usr/lib/python3.10/site-packages/OpenSSL/__init__.py", line 8, in <module>
debug:     from OpenSSL import SSL, crypto
debug:   File "/usr/lib/python3.10/site-packages/OpenSSL/SSL.py", line 19, in <module>
debug:     from OpenSSL.crypto import (
debug:   File "/usr/lib/python3.10/site-packages/OpenSSL/crypto.py", line 3224, in <module>
debug:     utils.deprecated(

Contributor guide

Open the contributing guide

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.

Research direction

Start with the traceback through vdirsyncer/http.py and storage/dav.py, then inspect the requests_toolbelt, urllib3, and OpenSSL imports that lead to the deprecated() error. Reproduce the calendar sync with the reported Python and dependency environment; done means the storage loads without this exception and synchronization proceeds.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.