[Python-modules-commits] [python-keyring] 01/04: Import python-keyring_10.4.0.orig.tar.gz
Dmitry Shachnev
mitya57 at moszumanska.debian.org
Tue Jun 27 11:04:48 UTC 2017
This is an automated email from the git hooks/post-receive script.
mitya57 pushed a commit to branch master
in repository python-keyring.
commit 3fd847fa6c0701902415733fb883d83271c4be06
Author: Dmitry Shachnev <mitya57 at gmail.com>
Date: Tue Jun 27 13:56:22 2017 +0300
Import python-keyring_10.4.0.orig.tar.gz
---
.readthedocs.yml | 5 +++++
CHANGES.rst | 20 +++++++++++++++++
PKG-INFO | 40 +++++++++++++++++++++++++++++-----
README.rst | 38 ++++++++++++++++++++++++++++----
appveyor.yml | 2 +-
docs/conf.py | 34 +++++------------------------
docs/requirements.txt | 1 -
keyring.egg-info/PKG-INFO | 40 +++++++++++++++++++++++++++++-----
keyring.egg-info/SOURCES.txt | 3 +--
keyring.egg-info/requires.txt | 11 +++++++++-
keyring/backends/kwallet.py | 5 +++--
keyring/core.py | 1 -
keyring/tests/backends/test_Windows.py | 10 +++++++++
keyring/util/escape.py | 2 +-
setup.cfg | 1 -
setup.py | 13 ++++++++++-
tests/requirements.txt | 2 --
tox.ini | 7 +++---
18 files changed, 177 insertions(+), 58 deletions(-)
diff --git a/.readthedocs.yml b/.readthedocs.yml
new file mode 100644
index 0000000..8ae4468
--- /dev/null
+++ b/.readthedocs.yml
@@ -0,0 +1,5 @@
+python:
+ version: 3
+ extra_requirements:
+ - docs
+ pip_install: true
diff --git a/CHANGES.rst b/CHANGES.rst
index 9e7ee49..afb8a77 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -1,3 +1,23 @@
+10.4.0
+------
+
+* #279: In Kwallet, pass mainloop to SessionBus.
+
+* #278: Unpin pywin32-ctypes, but blacklist known
+ incompatible versions.
+
+10.3.3
+------
+
+* #278: Pin to pywin32-ctypes 0.0.1 to avoid apparent
+ breakage introduced in 0.1.0.
+
+10.3.2
+------
+
+* #267: More leniently unescape lowercased characters as
+ they get re-cased by ConfigParser.
+
10.3.1
------
diff --git a/PKG-INFO b/PKG-INFO
index 98289e6..5b5be44 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: keyring
-Version: 10.3.1
+Version: 10.4.0
Summary: Store and access your passwords safely.
Home-page: https://github.com/jaraco/keyring
Author: Jason R. Coombs
@@ -45,8 +45,7 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
* `Windows Credential Vault
<http://windows.microsoft.com/en-us/windows7/what-is-credential-manager>`_
- Other keyring implementations are provided in the `keyrings.alt
- package <https://pypi.python.org/pypi/keyrings.alt>`_.
+ Other keyring implementations are provided in the `keyrings.alt package`_.
-------------------------
Installation Instructions
@@ -151,6 +150,20 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
default-keyring=simplekeyring.SimpleKeyring
keyring-path=/home/kang/pyworkspace/python-keyring-lib/demo/
+ Third-Party Backends
+ ====================
+
+ In addition to the backends provided by the core keyring package for
+ the most common and secure use cases, there
+ are additional keyring backend implementations available for other
+ use-cases. Simply install them to make them available:
+
+ - `keyrings.alt <https://pypi.org/project/keyrings.alt>`_ - "alternate",
+ less common backends, originally part of the core package, but now
+ available for opt-in.
+ - `keyring_jeepney <https://pypi.python.org/pypi/keyring_jeepney>`__ - a
+ pure Python backend using the secret service DBus API for desktop
+ Linux.
Write your own keyring backend
==============================
@@ -162,6 +175,18 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
See the ``backend`` module for more detail on the interface of this class.
+ Keyring employs entry points to allow any third-party package to implement
+ backends without any modification to the keyring itself. Those interested in
+ creating new backends are encouraged to create new, third-party packages
+ in the ``keyrings`` namespace, in a manner modeled by the `keyrings.alt
+ package <https://github.com/jaraco/keyrings.alt>`_. See the ``setup.py`` file
+ in that project for a hint on how to create the requisite entry points.
+ Backends that prove essential may be considered for inclusion in the core
+ library, although the ease of installing these third-party packages should
+ mean that extensions may be readily available.
+
+ If you've created an extension for Keyring, please submit a pull request to
+ have your extension mentioned as an available extension.
Set the keyring in runtime
==========================
@@ -223,7 +248,6 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
'password'
-
Using Keyring on headless Linux systems
=======================================
@@ -265,6 +289,12 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
* ``delete_password(service, username)``: Delete the password stored in
keyring. If the password does not exist, it will raise an exception.
+ In all cases, the parameters (``service``, ``username``, ``password``)
+ should be Unicode text. On Python 2, these parameters are accepted as
+ simple ``str`` in the default encoding as they will be implicitly
+ decoded to text. Some backends may accept ``bytes`` for these parameters,
+ but such usage is discouraged.
+
------------
Get involved
------------
@@ -301,7 +331,7 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
Using tox
---------
- Keyring prefers use of `tox <https://pypi.org/project/tox>` to run tests.
+ Keyring prefers use of `tox <https://pypi.org/project/tox>`_ to run tests.
Simply install and invoke ``tox``.
This technique is the one used by the Travis-CI script.
diff --git a/README.rst b/README.rst
index f0b97a1..5cbcb9a 100644
--- a/README.rst
+++ b/README.rst
@@ -37,8 +37,7 @@ These recommended keyring backends are supported by the Python keyring lib:
* `Windows Credential Vault
<http://windows.microsoft.com/en-us/windows7/what-is-credential-manager>`_
-Other keyring implementations are provided in the `keyrings.alt
-package <https://pypi.python.org/pypi/keyrings.alt>`_.
+Other keyring implementations are provided in the `keyrings.alt package`_.
-------------------------
Installation Instructions
@@ -143,6 +142,20 @@ directory in the project checkout::
default-keyring=simplekeyring.SimpleKeyring
keyring-path=/home/kang/pyworkspace/python-keyring-lib/demo/
+Third-Party Backends
+====================
+
+In addition to the backends provided by the core keyring package for
+the most common and secure use cases, there
+are additional keyring backend implementations available for other
+use-cases. Simply install them to make them available:
+
+- `keyrings.alt <https://pypi.org/project/keyrings.alt>`_ - "alternate",
+ less common backends, originally part of the core package, but now
+ available for opt-in.
+- `keyring_jeepney <https://pypi.python.org/pypi/keyring_jeepney>`__ - a
+ pure Python backend using the secret service DBus API for desktop
+ Linux.
Write your own keyring backend
==============================
@@ -154,6 +167,18 @@ attribute and three functions: ``get_password()``, ``set_password()``, and
See the ``backend`` module for more detail on the interface of this class.
+Keyring employs entry points to allow any third-party package to implement
+backends without any modification to the keyring itself. Those interested in
+creating new backends are encouraged to create new, third-party packages
+in the ``keyrings`` namespace, in a manner modeled by the `keyrings.alt
+package <https://github.com/jaraco/keyrings.alt>`_. See the ``setup.py`` file
+in that project for a hint on how to create the requisite entry points.
+Backends that prove essential may be considered for inclusion in the core
+library, although the ease of installing these third-party packages should
+mean that extensions may be readily available.
+
+If you've created an extension for Keyring, please submit a pull request to
+have your extension mentioned as an available extension.
Set the keyring in runtime
==========================
@@ -215,7 +240,6 @@ virtual environment on Ubuntu 16.04. No config file was used.::
'password'
-
Using Keyring on headless Linux systems
=======================================
@@ -257,6 +281,12 @@ The keyring lib has a few functions:
* ``delete_password(service, username)``: Delete the password stored in
keyring. If the password does not exist, it will raise an exception.
+In all cases, the parameters (``service``, ``username``, ``password``)
+should be Unicode text. On Python 2, these parameters are accepted as
+simple ``str`` in the default encoding as they will be implicitly
+decoded to text. Some backends may accept ``bytes`` for these parameters,
+but such usage is discouraged.
+
------------
Get involved
------------
@@ -293,7 +323,7 @@ in which it can be tested. Recommended technique is described below.
Using tox
---------
-Keyring prefers use of `tox <https://pypi.org/project/tox>` to run tests.
+Keyring prefers use of `tox <https://pypi.org/project/tox>`_ to run tests.
Simply install and invoke ``tox``.
This technique is the one used by the Travis-CI script.
diff --git a/appveyor.yml b/appveyor.yml
index df671b0..d15473b 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -3,7 +3,7 @@ environment:
APPVEYOR: true
matrix:
- - PYTHON: "C:\\Python35-x64"
+ - PYTHON: "C:\\Python36-x64"
- PYTHON: "C:\\Python27-x64"
install:
diff --git a/docs/conf.py b/docs/conf.py
index 7402c7a..8bc8298 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -1,52 +1,30 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
-import os
-import sys
-import subprocess
-
-if 'check_output' not in dir(subprocess):
- import subprocess32 as subprocess
-
extensions = [
'sphinx.ext.autodoc',
+ 'jaraco.packaging.sphinx',
'rst.linker',
]
-# General information about the project.
-
-root = os.path.join(os.path.dirname(__file__), '..')
-setup_script = os.path.join(root, 'setup.py')
-fields = ['--name', '--version', '--url', '--author']
-dist_info_cmd = [sys.executable, setup_script] + fields
-output_bytes = subprocess.check_output(dist_info_cmd, cwd=root)
-project, version, url, author = output_bytes.decode('utf-8').strip().split('\n')
-
-copyright = '2016 ' + author
-
-# The full version, including alpha/beta/rc tags.
-release = version
-
master_doc = 'index'
link_files = {
'../CHANGES.rst': dict(
using=dict(
GH='https://github.com',
- project=project,
- url=url,
),
replace=[
dict(
- pattern=r"(Issue )?#(?P<issue>\d+)",
- url='{url}/issues/{issue}',
+ pattern=r'(Issue )?#(?P<issue>\d+)',
+ url='{package_url}/issues/{issue}',
),
dict(
- pattern=r"^(?m)((?P<scm_version>v?\d+(\.\d+){1,2}))\n[-=]+\n",
- with_scm="{text}\n{rev[timestamp]:%d %b %Y}\n",
+ pattern=r'^(?m)((?P<scm_version>v?\d+(\.\d+){1,2}))\n[-=]+\n',
+ with_scm='{text}\n{rev[timestamp]:%d %b %Y}\n',
),
dict(
- pattern=r"PEP[- ](?P<pep_number>\d+)",
+ pattern=r'PEP[- ](?P<pep_number>\d+)',
url='https://www.python.org/dev/peps/pep-{pep_number:0>4}/',
),
],
diff --git a/docs/requirements.txt b/docs/requirements.txt
deleted file mode 100644
index 442df9f..0000000
--- a/docs/requirements.txt
+++ /dev/null
@@ -1 +0,0 @@
-rst.linker
diff --git a/keyring.egg-info/PKG-INFO b/keyring.egg-info/PKG-INFO
index 98289e6..5b5be44 100644
--- a/keyring.egg-info/PKG-INFO
+++ b/keyring.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: keyring
-Version: 10.3.1
+Version: 10.4.0
Summary: Store and access your passwords safely.
Home-page: https://github.com/jaraco/keyring
Author: Jason R. Coombs
@@ -45,8 +45,7 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
* `Windows Credential Vault
<http://windows.microsoft.com/en-us/windows7/what-is-credential-manager>`_
- Other keyring implementations are provided in the `keyrings.alt
- package <https://pypi.python.org/pypi/keyrings.alt>`_.
+ Other keyring implementations are provided in the `keyrings.alt package`_.
-------------------------
Installation Instructions
@@ -151,6 +150,20 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
default-keyring=simplekeyring.SimpleKeyring
keyring-path=/home/kang/pyworkspace/python-keyring-lib/demo/
+ Third-Party Backends
+ ====================
+
+ In addition to the backends provided by the core keyring package for
+ the most common and secure use cases, there
+ are additional keyring backend implementations available for other
+ use-cases. Simply install them to make them available:
+
+ - `keyrings.alt <https://pypi.org/project/keyrings.alt>`_ - "alternate",
+ less common backends, originally part of the core package, but now
+ available for opt-in.
+ - `keyring_jeepney <https://pypi.python.org/pypi/keyring_jeepney>`__ - a
+ pure Python backend using the secret service DBus API for desktop
+ Linux.
Write your own keyring backend
==============================
@@ -162,6 +175,18 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
See the ``backend`` module for more detail on the interface of this class.
+ Keyring employs entry points to allow any third-party package to implement
+ backends without any modification to the keyring itself. Those interested in
+ creating new backends are encouraged to create new, third-party packages
+ in the ``keyrings`` namespace, in a manner modeled by the `keyrings.alt
+ package <https://github.com/jaraco/keyrings.alt>`_. See the ``setup.py`` file
+ in that project for a hint on how to create the requisite entry points.
+ Backends that prove essential may be considered for inclusion in the core
+ library, although the ease of installing these third-party packages should
+ mean that extensions may be readily available.
+
+ If you've created an extension for Keyring, please submit a pull request to
+ have your extension mentioned as an available extension.
Set the keyring in runtime
==========================
@@ -223,7 +248,6 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
'password'
-
Using Keyring on headless Linux systems
=======================================
@@ -265,6 +289,12 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
* ``delete_password(service, username)``: Delete the password stored in
keyring. If the password does not exist, it will raise an exception.
+ In all cases, the parameters (``service``, ``username``, ``password``)
+ should be Unicode text. On Python 2, these parameters are accepted as
+ simple ``str`` in the default encoding as they will be implicitly
+ decoded to text. Some backends may accept ``bytes`` for these parameters,
+ but such usage is discouraged.
+
------------
Get involved
------------
@@ -301,7 +331,7 @@ Description: .. image:: https://img.shields.io/pypi/v/keyring.svg
Using tox
---------
- Keyring prefers use of `tox <https://pypi.org/project/tox>` to run tests.
+ Keyring prefers use of `tox <https://pypi.org/project/tox>`_ to run tests.
Simply install and invoke ``tox``.
This technique is the one used by the Travis-CI script.
diff --git a/keyring.egg-info/SOURCES.txt b/keyring.egg-info/SOURCES.txt
index 45b9cca..b73f966 100644
--- a/keyring.egg-info/SOURCES.txt
+++ b/keyring.egg-info/SOURCES.txt
@@ -1,4 +1,5 @@
.gitignore
+.readthedocs.yml
.travis-osx
.travis.yml
CHANGES.rst
@@ -13,7 +14,6 @@ tox.ini
docs/conf.py
docs/history.rst
docs/index.rst
-docs/requirements.txt
keyring/__init__.py
keyring/__main__.py
keyring/backend.py
@@ -52,5 +52,4 @@ keyring/util/__init__.py
keyring/util/escape.py
keyring/util/platform_.py
keyring/util/properties.py
-tests/requirements.txt
tests/test_packaging.py
\ No newline at end of file
diff --git a/keyring.egg-info/requires.txt b/keyring.egg-info/requires.txt
index 61ab707..0187da2 100644
--- a/keyring.egg-info/requires.txt
+++ b/keyring.egg-info/requires.txt
@@ -3,4 +3,13 @@
secretstorage
[:sys_platform=="win32"]
-pywin32-ctypes
+pywin32-ctypes!=0.1.0,!=0.1.1
+
+[docs]
+sphinx
+jaraco.packaging>=3.2
+rst.linker>=1.9
+
+[testing]
+pytest>=2.8
+pytest-sugar
diff --git a/keyring/backends/kwallet.py b/keyring/backends/kwallet.py
index 21a2309..559f263 100644
--- a/keyring/backends/kwallet.py
+++ b/keyring/backends/kwallet.py
@@ -7,6 +7,7 @@ from ..util import properties
try:
import dbus
+ from dbus.mainloop.glib import DBusGMainLoop
except ImportError:
pass
@@ -27,7 +28,7 @@ class DBusKeyring(KeyringBackend):
if 'dbus' not in globals():
raise RuntimeError('python-dbus not installed')
try:
- bus = dbus.SessionBus()
+ bus = dbus.SessionBus(mainloop=DBusGMainLoop())
except dbus.DBusException as exc:
raise RuntimeError(exc.get_dbus_message())
try:
@@ -67,7 +68,7 @@ class DBusKeyring(KeyringBackend):
def connected(self, service):
if self.handle >= 0:
return True
- bus = dbus.SessionBus()
+ bus = dbus.SessionBus(mainloop=DBusGMainLoop())
wId = 0
try:
remote_obj = bus.get_object(self.bus_name, self.object_path)
diff --git a/keyring/core.py b/keyring/core.py
index 293cb4c..1ccd883 100644
--- a/keyring/core.py
+++ b/keyring/core.py
@@ -13,7 +13,6 @@ from .py33compat import max
from . import logger
from . import backend
from .util import platform_ as platform
-from .util import once
from .backends import fail
diff --git a/keyring/tests/backends/test_Windows.py b/keyring/tests/backends/test_Windows.py
index 24cce66..60821c7 100644
--- a/keyring/tests/backends/test_Windows.py
+++ b/keyring/tests/backends/test_Windows.py
@@ -3,6 +3,8 @@ from __future__ import print_function
import sys
import unittest
+import pytest
+
import keyring.backends.Windows
from ..test_backend import BackendBasicTests
@@ -20,3 +22,11 @@ class WinVaultKeyringTestCase(BackendBasicTests, unittest.TestCase):
def init_keyring(self):
return keyring.backends.Windows.WinVaultKeyring()
+
+
+ at pytest.mark.skipif('sys.platform != "win32"')
+def test_winvault_always_viable():
+ """
+ The WinVault backend should always be viable on Windows.
+ """
+ assert keyring.backends.Windows.WinVaultKeyring.viable
diff --git a/keyring/util/escape.py b/keyring/util/escape.py
index cbfd32a..3bfbeb8 100644
--- a/keyring/util/escape.py
+++ b/keyring/util/escape.py
@@ -55,6 +55,6 @@ def unescape(value):
"""
re_esc = re.compile(
# the pattern must be bytes to operate on bytes
- ESCAPE_FMT.replace('%02X', '(?P<code>[0-9A-F]{2})').encode('ascii')
+ ESCAPE_FMT.replace('%02X', '(?P<code>[0-9A-Fa-f]{2})').encode('ascii')
)
return re_esc.sub(_unescape_code, value.encode('ascii')).decode('utf-8')
diff --git a/setup.cfg b/setup.cfg
index 447e8f2..b72bd8e 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -8,5 +8,4 @@ universal = 1
[egg_info]
tag_build =
tag_date = 0
-tag_svn_revision = 0
diff --git a/setup.py b/setup.py
index a886061..d90977b 100644
--- a/setup.py
+++ b/setup.py
@@ -28,10 +28,21 @@ params = dict(
install_requires=[
],
extras_require={
- ':sys_platform=="win32"': ['pywin32-ctypes'],
+ ':sys_platform=="win32"': [
+ 'pywin32-ctypes!=0.1.0,!=0.1.1',
+ ],
':sys_platform=="linux2" or sys_platform=="linux"': [
"secretstorage",
],
+ 'testing': [
+ 'pytest>=2.8',
+ 'pytest-sugar',
+ ],
+ 'docs': [
+ 'sphinx',
+ 'jaraco.packaging>=3.2',
+ 'rst.linker>=1.9',
+ ],
},
setup_requires=[
'setuptools_scm>=1.15.0',
diff --git a/tests/requirements.txt b/tests/requirements.txt
deleted file mode 100644
index ab48405..0000000
--- a/tests/requirements.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-pytest >= 2.8
-subprocess32; python_version=="2.6"
diff --git a/tox.ini b/tox.ini
index d740130..1ae06ef 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,7 @@
-[testenv]
-deps =
- -rtests/requirements.txt
+[tox]
+minversion = 2.4
+[testenv]
commands = py.test {posargs}
usedevelop = True
+extras = testing
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-keyring.git
More information about the Python-modules-commits
mailing list