Hello community,
here is the log from the commit of package python-docker-pycreds for
openSUSE:Factory checked in at 2018-05-02 12:20:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-docker-pycreds (Old)
and /work/SRC/openSUSE:Factory/.python-docker-pycreds.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-docker-pycreds"
Wed May 2 12:20:12 2018 rev:6 rq:603003 version:0.2.3
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-docker-pycreds/python-docker-pycreds.changes
2018-02-27 16:59:32.472609492 +0100
+++
/work/SRC/openSUSE:Factory/.python-docker-pycreds.new/python-docker-pycreds.changes
2018-05-02 12:20:19.144028125 +0200
@@ -1,0 +2,6 @@
+Wed May 2 08:54:18 UTC 2018 - [email protected]
+
+- Version update to 0.2.3:
+ * Various small cleanups and more CI integrations
+
+-------------------------------------------------------------------
Old:
----
docker-pycreds-0.2.2.tar.gz
New:
----
docker-pycreds-0.2.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-docker-pycreds.spec ++++++
--- /var/tmp/diff_new_pack.jQ5Te1/_old 2018-05-02 12:20:20.283986533 +0200
+++ /var/tmp/diff_new_pack.jQ5Te1/_new 2018-05-02 12:20:20.283986533 +0200
@@ -16,31 +16,25 @@
#
-%bcond_with test
-
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-docker-pycreds
-Version: 0.2.2
+Version: 0.2.3
Release: 0
Summary: Python bindings for the Docker credentials store API
License: Apache-2.0
Group: Development/Languages/Python
-Url: https://github.com/shin-/dockerpy-creds
+URL: https://github.com/shin-/dockerpy-creds
Source:
https://files.pythonhosted.org/packages/source/d/docker-pycreds/docker-pycreds-%{version}.tar.gz
+BuildRequires: %{python_module flake8}
+BuildRequires: %{python_module pytest-cov}
+BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module six}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
-%if %{with test}
-BuildRequires: %{python_module flake8}
-BuildRequires: %{python_module pytest-cov}
-BuildRequires: %{python_module pytest}
-%endif
Requires: python-six
Recommends: docker-credential-secretservice
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
-
%python_subpackages
%description
@@ -57,14 +51,13 @@
%python_install
%python_expand %fdupes %{buildroot}/%{$python_sitelib}/
-%if %{with test}
%check
-%python_expand py.test-%{$python_bin_suffix} .
-%endif
+# Can't run tests as they are depending on crendentials store to exist already
+#%%python_expand py.test-%{$python_bin_suffix} .
%files %{python_files}
-%defattr(-,root,root,-)
-%doc README.md LICENSE
+%license LICENSE
+%doc README.md
%{python_sitelib}/*
%changelog
++++++ docker-pycreds-0.2.2.tar.gz -> docker-pycreds-0.2.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/docker-pycreds-0.2.2/PKG-INFO
new/docker-pycreds-0.2.3/PKG-INFO
--- old/docker-pycreds-0.2.2/PKG-INFO 2018-02-15 00:54:02.000000000 +0100
+++ new/docker-pycreds-0.2.3/PKG-INFO 2018-04-25 22:45:55.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: docker-pycreds
-Version: 0.2.2
+Version: 0.2.3
Summary: Python bindings for the docker credentials store API
Home-page: https://github.com/shin-/dockerpy-creds
Author: UNKNOWN
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/docker-pycreds-0.2.2/README.md
new/docker-pycreds-0.2.3/README.md
--- old/docker-pycreds-0.2.2/README.md 2018-02-14 23:18:27.000000000 +0100
+++ new/docker-pycreds-0.2.3/README.md 2018-04-25 22:41:40.000000000 +0200
@@ -1,5 +1,7 @@
# docker-pycreds
+[](https://circleci.com/gh/shin-/dockerpy-creds/tree/master)
+
Python bindings for the docker credentials store API
## Credentials store info
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/docker-pycreds-0.2.2/docker_pycreds.egg-info/PKG-INFO
new/docker-pycreds-0.2.3/docker_pycreds.egg-info/PKG-INFO
--- old/docker-pycreds-0.2.2/docker_pycreds.egg-info/PKG-INFO 2018-02-15
00:54:02.000000000 +0100
+++ new/docker-pycreds-0.2.3/docker_pycreds.egg-info/PKG-INFO 2018-04-25
22:45:55.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: docker-pycreds
-Version: 0.2.2
+Version: 0.2.3
Summary: Python bindings for the docker credentials store API
Home-page: https://github.com/shin-/dockerpy-creds
Author: UNKNOWN
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/docker-pycreds-0.2.2/docker_pycreds.egg-info/SOURCES.txt
new/docker-pycreds-0.2.3/docker_pycreds.egg-info/SOURCES.txt
--- old/docker-pycreds-0.2.2/docker_pycreds.egg-info/SOURCES.txt
2018-02-15 00:54:02.000000000 +0100
+++ new/docker-pycreds-0.2.3/docker_pycreds.egg-info/SOURCES.txt
2018-04-25 22:45:55.000000000 +0200
@@ -15,6 +15,7 @@
dockerpycreds/constants.py
dockerpycreds/errors.py
dockerpycreds/store.py
+dockerpycreds/utils.py
dockerpycreds/version.py
tests/__init__.py
tests/store_test.py
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/docker-pycreds-0.2.2/dockerpycreds/constants.py
new/docker-pycreds-0.2.3/dockerpycreds/constants.py
--- old/docker-pycreds-0.2.2/dockerpycreds/constants.py 2018-02-14
23:18:27.000000000 +0100
+++ new/docker-pycreds-0.2.3/dockerpycreds/constants.py 2018-04-25
20:59:13.000000000 +0200
@@ -1,3 +1,4 @@
PROGRAM_PREFIX = 'docker-credential-'
DEFAULT_LINUX_STORE = 'secretservice'
DEFAULT_OSX_STORE = 'osxkeychain'
+DEFAULT_WIN32_STORE = 'wincred'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/docker-pycreds-0.2.2/dockerpycreds/errors.py
new/docker-pycreds-0.2.3/dockerpycreds/errors.py
--- old/docker-pycreds-0.2.2/dockerpycreds/errors.py 2018-02-14
23:18:27.000000000 +0100
+++ new/docker-pycreds-0.2.3/dockerpycreds/errors.py 2018-04-25
20:44:38.000000000 +0200
@@ -6,6 +6,10 @@
pass
+class InitializationError(StoreError):
+ pass
+
+
def process_store_error(cpe, program):
message = cpe.output.decode('utf-8')
if 'credentials not found in native keychain' in message:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/docker-pycreds-0.2.2/dockerpycreds/store.py
new/docker-pycreds-0.2.3/dockerpycreds/store.py
--- old/docker-pycreds-0.2.2/dockerpycreds/store.py 2018-02-15
00:43:11.000000000 +0100
+++ new/docker-pycreds-0.2.3/dockerpycreds/store.py 2018-04-25
20:59:29.000000000 +0200
@@ -6,6 +6,7 @@
from . import constants
from . import errors
+from .utils import find_executable
class Store(object):
@@ -15,6 +16,13 @@
and erasing credentials using `program`.
"""
self.program = constants.PROGRAM_PREFIX + program
+ self.exe = find_executable(self.program)
+ if self.exe is None:
+ raise errors.InitializationError(
+ '{0} not installed or not available in PATH'.format(
+ self.program
+ )
+ )
def get(self, server):
""" Retrieve credentials for `server`. If no credentials are found,
@@ -60,11 +68,11 @@
try:
if six.PY3:
output = subprocess.check_output(
- [self.program, subcmd], input=data_input
+ [self.exe, subcmd], input=data_input
)
else:
process = subprocess.Popen(
- [self.program, subcmd], stdin=subprocess.PIPE,
+ [self.exe, subcmd], stdin=subprocess.PIPE,
stdout=subprocess.PIPE
)
output, err = process.communicate(data_input)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/docker-pycreds-0.2.2/dockerpycreds/utils.py
new/docker-pycreds-0.2.3/dockerpycreds/utils.py
--- old/docker-pycreds-0.2.2/dockerpycreds/utils.py 1970-01-01
01:00:00.000000000 +0100
+++ new/docker-pycreds-0.2.3/dockerpycreds/utils.py 2018-04-25
20:59:24.000000000 +0200
@@ -0,0 +1,29 @@
+import distutils.spawn
+import os
+import sys
+
+
+def find_executable(executable, path=None):
+ """
+ As distutils.spawn.find_executable, but on Windows, looks up
+ every extension declared in PATHEXT instead of just `.exe`
+ """
+ if sys.platform != 'win32':
+ return distutils.spawn.find_executable(executable, path)
+
+ if path is None:
+ path = os.environ['PATH']
+
+ paths = path.split(os.pathsep)
+ extensions = os.environ.get('PATHEXT', '.exe').split(os.pathsep)
+ base, ext = os.path.splitext(executable)
+
+ if not os.path.isfile(executable):
+ for p in paths:
+ for ext in extensions:
+ f = os.path.join(p, base + ext)
+ if os.path.isfile(f):
+ return f
+ return None
+ else:
+ return executable
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/docker-pycreds-0.2.2/dockerpycreds/version.py
new/docker-pycreds-0.2.3/dockerpycreds/version.py
--- old/docker-pycreds-0.2.2/dockerpycreds/version.py 2018-02-15
00:50:26.000000000 +0100
+++ new/docker-pycreds-0.2.3/dockerpycreds/version.py 2018-04-25
22:41:40.000000000 +0200
@@ -1,2 +1,2 @@
-version = "0.2.2"
+version = "0.2.3"
version_info = tuple([int(d) for d in version.split("-")[0].split(".")])