New Upstream Release - docker-pycreds

Ready changes

Summary

Merged new upstream version: 0.4.0 (was: 0.3.0).

Resulting package

Built on 2022-04-24T04:40 (took 5m6s)

The resulting binary packages can be installed (if you have the apt repository enabled) by running one of:

apt install -t fresh-releases python3-dockerpycreds

Lintian Result

Diff

diff --git a/PKG-INFO b/PKG-INFO
index 0cec3f7..31258f0 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,46 @@
 Metadata-Version: 1.1
 Name: docker-pycreds
-Version: 0.3.0
+Version: 0.4.0
 Summary: Python bindings for the docker credentials store API
 Home-page: https://github.com/shin-/dockerpy-creds
 Author: UNKNOWN
 Author-email: UNKNOWN
 License: Apache License 2.0
-Description: UNKNOWN
+Description: # docker-pycreds
+        
+        [![CircleCI](https://circleci.com/gh/shin-/dockerpy-creds/tree/master.svg?style=svg)](https://circleci.com/gh/shin-/dockerpy-creds/tree/master)
+        
+        Python bindings for the docker credentials store API
+        
+        ## Credentials store info
+        
+        [Docker documentation page](https://docs.docker.com/engine/reference/commandline/login/#/credentials-store)
+        
+        ## Requirements
+        
+        On top of the dependencies in `requirements.txt`, the `docker-credential`
+        executable for the platform must be installed on the user's system.
+        
+        ## API usage
+        
+        ```python
+        
+        import dockerpycreds
+        
+        store = dockerpycreds.Store('secretservice')
+        store.store(
+            server='https://index.docker.io/v1/', username='johndoe',
+            secret='hunter2'
+        )
+        
+        print(store.list())
+        
+        print(store.get('https://index.docker.io/v1/'))
+        
+        
+        store.erase('https://index.docker.io/v1/')
+        ```
+        
 Platform: UNKNOWN
 Classifier: Development Status :: 4 - Beta
 Classifier: Environment :: Other Environment
diff --git a/README.md b/README.md
index 548c7fb..a1d3137 100644
--- a/README.md
+++ b/README.md
@@ -24,7 +24,11 @@ store.store(
     server='https://index.docker.io/v1/', username='johndoe',
     secret='hunter2'
 )
-print store.get('https://index.docker.io/v1/')
+
+print(store.list())
+
+print(store.get('https://index.docker.io/v1/'))
+
 
 store.erase('https://index.docker.io/v1/')
 ```
diff --git a/debian/changelog b/debian/changelog
index 559c4cb..9887f18 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+docker-pycreds (0.4.0-1) UNRELEASED; urgency=low
+
+  * New upstream release.
+
+ -- Debian Janitor <janitor@jelmer.uk>  Sun, 24 Apr 2022 04:35:56 -0000
+
 docker-pycreds (0.3.0-1.1) unstable; urgency=medium
 
   * Non-maintainer upload.
diff --git a/debian/patches/Relax-test-dependencies.patch b/debian/patches/Relax-test-dependencies.patch
index 2c11eec..b7240f5 100644
--- a/debian/patches/Relax-test-dependencies.patch
+++ b/debian/patches/Relax-test-dependencies.patch
@@ -7,10 +7,10 @@ Otherwise setup.py will try to download them
  test-requirements.txt | 6 +++---
  1 file changed, 3 insertions(+), 3 deletions(-)
 
-diff --git a/test-requirements.txt b/test-requirements.txt
-index 9dc5b8b..fc72390 100644
---- a/test-requirements.txt
-+++ b/test-requirements.txt
+Index: docker-pycreds/test-requirements.txt
+===================================================================
+--- docker-pycreds.orig/test-requirements.txt
++++ docker-pycreds/test-requirements.txt
 @@ -1,3 +1,3 @@
 -pytest==3.0.2
 -flake8==2.4.1
diff --git a/docker_pycreds.egg-info/PKG-INFO b/docker_pycreds.egg-info/PKG-INFO
index 0cec3f7..31258f0 100644
--- a/docker_pycreds.egg-info/PKG-INFO
+++ b/docker_pycreds.egg-info/PKG-INFO
@@ -1,12 +1,46 @@
 Metadata-Version: 1.1
 Name: docker-pycreds
-Version: 0.3.0
+Version: 0.4.0
 Summary: Python bindings for the docker credentials store API
 Home-page: https://github.com/shin-/dockerpy-creds
 Author: UNKNOWN
 Author-email: UNKNOWN
 License: Apache License 2.0
-Description: UNKNOWN
+Description: # docker-pycreds
+        
+        [![CircleCI](https://circleci.com/gh/shin-/dockerpy-creds/tree/master.svg?style=svg)](https://circleci.com/gh/shin-/dockerpy-creds/tree/master)
+        
+        Python bindings for the docker credentials store API
+        
+        ## Credentials store info
+        
+        [Docker documentation page](https://docs.docker.com/engine/reference/commandline/login/#/credentials-store)
+        
+        ## Requirements
+        
+        On top of the dependencies in `requirements.txt`, the `docker-credential`
+        executable for the platform must be installed on the user's system.
+        
+        ## API usage
+        
+        ```python
+        
+        import dockerpycreds
+        
+        store = dockerpycreds.Store('secretservice')
+        store.store(
+            server='https://index.docker.io/v1/', username='johndoe',
+            secret='hunter2'
+        )
+        
+        print(store.list())
+        
+        print(store.get('https://index.docker.io/v1/'))
+        
+        
+        store.erase('https://index.docker.io/v1/')
+        ```
+        
 Platform: UNKNOWN
 Classifier: Development Status :: 4 - Beta
 Classifier: Environment :: Other Environment
diff --git a/docker_pycreds.egg-info/requires.txt b/docker_pycreds.egg-info/requires.txt
index e73dacc..3fd3941 100644
--- a/docker_pycreds.egg-info/requires.txt
+++ b/docker_pycreds.egg-info/requires.txt
@@ -1 +1 @@
-six >= 1.4.0
+six>=1.4.0
diff --git a/dockerpycreds/store.py b/dockerpycreds/store.py
index 269b9e0..7284512 100644
--- a/dockerpycreds/store.py
+++ b/dockerpycreds/store.py
@@ -65,6 +65,12 @@ class Store(object):
             server = server.encode('utf-8')
         self._execute('erase', server)
 
+    def list(self):
+        """ List stored credentials. Requires v0.4.0+ of the helper.
+        """
+        data = self._execute('list', None)
+        return json.loads(data.decode('utf-8'))
+
     def _execute(self, subcmd, data_input):
         output = None
         env = create_environment_dict(self.environment)
diff --git a/dockerpycreds/version.py b/dockerpycreds/version.py
index 275c4ec..df0b6bb 100644
--- a/dockerpycreds/version.py
+++ b/dockerpycreds/version.py
@@ -1,2 +1,2 @@
-version = "0.3.0"
+version = "0.4.0"
 version_info = tuple([int(d) for d in version.split("-")[0].split(".")])
diff --git a/setup.cfg b/setup.cfg
index 1c0622f..9b14936 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -7,5 +7,4 @@ description_file = README.md
 [egg_info]
 tag_build = 
 tag_date = 0
-tag_svn_revision = 0
 
diff --git a/setup.py b/setup.py
index aec8a93..e3ca11d 100644
--- a/setup.py
+++ b/setup.py
@@ -17,11 +17,16 @@ exec(open('dockerpycreds/version.py').read())
 with open('./test-requirements.txt') as test_reqs_txt:
     test_requirements = [line for line in test_reqs_txt]
 
+long_description = None
+with open('./README.md', 'r') as readme:
+    long_description = readme.read()
+
 
 setup(
     name="docker-pycreds",
     version=version,
     description="Python bindings for the docker credentials store API",
+    long_description=long_description,
     url='https://github.com/shin-/dockerpy-creds',
     license='Apache License 2.0',
     packages=[
diff --git a/tests/store_test.py b/tests/store_test.py
index ba5fd7b..2f2088a 100644
--- a/tests/store_test.py
+++ b/tests/store_test.py
@@ -69,6 +69,16 @@ class TestStore(object):
         with pytest.raises(CredentialsNotFound):
             self.store.get(key)
 
+    def test_list(self):
+        names = (self.get_random_servername(), self.get_random_servername())
+        self.store.store(names[0], username='sakuya', secret='izayoi')
+        self.store.store(names[1], username='reimu', secret='hakurei')
+        data = self.store.list()
+        assert names[0] in data
+        assert data[names[0]] == 'sakuya'
+        assert names[1] in data
+        assert data[names[1]] == 'reimu'
+
     def test_execute_with_env_override(self):
         self.store.exe = 'env'
         self.store.environment = {'FOO': 'bar'}

Debdiff

[The following lists of changes regard files as different if they have different names, permissions or owners.]

Files in second set of .debs but not in first

-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/PKG-INFO
-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/dependency_links.txt
-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/not-zip-safe
-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/requires.txt
-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/top_level.txt

Files in first set of .debs but not in second

-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/PKG-INFO
-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/dependency_links.txt
-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/not-zip-safe
-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/requires.txt
-rw-r--r--  root/root   /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/top_level.txt

No differences were encountered in the control files

More details

Full run details