Skip to content

Commit

Permalink
Remove dependency on deprecated keyring.util.properties. Fixes #47.
Browse files Browse the repository at this point in the history
  • Loading branch information
jaraco committed Sep 4, 2022
1 parent 010fe59 commit 3de7f40
Show file tree
Hide file tree
Showing 9 changed files with 30 additions and 22 deletions.
6 changes: 6 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
v4.1.2
======

Updated to work with keyring 23.9+ (no longer depending on properties
module).

v4.1.1
======

Expand Down
6 changes: 3 additions & 3 deletions keyrings/alt/Gnome.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@
except (ImportError, ValueError, AttributeError):
pass

from jaraco.classes import properties

from keyring.backend import KeyringBackend
from keyring.errors import PasswordSetError, PasswordDeleteError
from keyring.util import properties


class Keyring(KeyringBackend):
Expand All @@ -20,8 +21,7 @@ class Keyring(KeyringBackend):
Use None for the default keyring.
"""

@properties.ClassProperty
@classmethod
@properties.classproperty
def priority(cls):
if 'GnomeKeyring' not in globals():
raise RuntimeError("GnomeKeyring module required")
Expand Down
6 changes: 3 additions & 3 deletions keyrings/alt/Google.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,12 @@
except ImportError:
pass

from jaraco.classes import properties

from . import keyczar
from keyring import errors
from keyring import credentials
from keyring.backend import KeyringBackend
from keyring.util import properties
from keyring.errors import ExceptionRaisedContext


Expand Down Expand Up @@ -70,8 +71,7 @@ def __init__(
self._client.ssl = True
self._login_reqd = True

@properties.ClassProperty
@classmethod
@properties.classproperty
def priority(cls):
if not cls._has_gdata():
raise RuntimeError("Requires gdata")
Expand Down
9 changes: 4 additions & 5 deletions keyrings/alt/Windows.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
import base64
import platform

from keyring.util import properties
from jaraco.classes import properties

from keyring.backend import KeyringBackend
from keyring.errors import PasswordDeleteError, ExceptionRaisedContext
from . import file_base
Expand Down Expand Up @@ -36,8 +37,7 @@ class EncryptedKeyring(file_base.Keyring):

version = "1.0"

@properties.ClassProperty
@classmethod
@properties.classproperty
def priority(self):
"""
Preferred over file.EncryptedKeyring but not other, more sophisticated
Expand All @@ -64,8 +64,7 @@ class RegistryKeyring(KeyringBackend):
the user's passwords and store them under registry keys
"""

@properties.ClassProperty
@classmethod
@properties.classproperty
def priority(self):
"""
Preferred on Windows when pywin32 isn't installed
Expand Down
7 changes: 3 additions & 4 deletions keyrings/alt/file.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
import getpass
import configparser

from keyring.util import properties
from .escape import escape as escape_for_ini
from jaraco.classes import properties

from .escape import escape as escape_for_ini
from keyrings.alt.file_base import Keyring, decodebytes, encodebytes


Expand Down Expand Up @@ -70,8 +70,7 @@ class EncryptedKeyring(Encrypted, Keyring):
filename = 'crypted_pass.cfg'
pw_prefix = 'pw:'.encode()

@properties.ClassProperty
@classmethod
@properties.classproperty
def priority(self):
"Applicable for all platforms, but not recommended."
try:
Expand Down
4 changes: 3 additions & 1 deletion keyrings/alt/file_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@
import configparser
from base64 import encodebytes, decodebytes

from jaraco.classes import properties

from keyring.errors import PasswordDeleteError
from keyring.backend import KeyringBackend
from keyring.util import platform_, properties
from keyring.util import platform_
from .escape import escape as escape_for_ini


Expand Down
6 changes: 3 additions & 3 deletions keyrings/alt/multi.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import itertools

from keyring.util import properties
from jaraco.classes import properties

from keyring.backend import KeyringBackend
from keyring import errors

Expand All @@ -16,8 +17,7 @@ def __init__(self, keyring, max_password_size=512):
self._keyring = keyring
self._max_password_size = max_password_size

@properties.ClassProperty
@classmethod
@properties.classproperty
def priority(cls):
return 0

Expand Down
7 changes: 4 additions & 3 deletions keyrings/alt/pyfs.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@
import base64
import configparser

from jaraco.classes import properties

from keyring import errors
from .escape import escape as escape_for_ini
from keyring.util import platform_, properties
from keyring.util import platform_
from keyring.backend import KeyringBackend, NullCrypter
from . import keyczar

Expand Down Expand Up @@ -212,8 +214,7 @@ def delete_password(self, service, username):
self.config.write(config_file)
config_file.close()

@properties.ClassProperty
@classmethod
@properties.classproperty
def priority(cls):
if not has_pyfs():
raise RuntimeError("pyfs required")
Expand Down
1 change: 1 addition & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ packages = find_namespace:
include_package_data = true
python_requires = >=3.7
install_requires =
jaraco.classes

[options.packages.find]
exclude =
Expand Down

0 comments on commit 3de7f40

Please sign in to comment.