Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-acme for openSUSE:Factory checked in at 2021-07-30 23:22:16 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-acme (Old) and /work/SRC/openSUSE:Factory/.python-acme.new.1899 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-acme" Fri Jul 30 23:22:16 2021 rev:53 rq:909363 version:1.17.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-acme/python-acme.changes 2021-06-24 18:23:03.792948766 +0200 +++ /work/SRC/openSUSE:Factory/.python-acme.new.1899/python-acme.changes 2021-07-30 23:22:45.423598155 +0200 @@ -1,0 +2,6 @@ +Fri Jul 30 08:37:07 UTC 2021 - Mark??ta Machov?? <[email protected]> + +- update to version 1.17.0 + * sync with main certbot package + +------------------------------------------------------------------- Old: ---- acme-1.16.0.tar.gz acme-1.16.0.tar.gz.asc New: ---- acme-1.17.0.tar.gz acme-1.17.0.tar.gz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-acme.spec ++++++ --- /var/tmp/diff_new_pack.TNs8BN/_old 2021-07-30 23:22:45.819597721 +0200 +++ /var/tmp/diff_new_pack.TNs8BN/_new 2021-07-30 23:22:45.819597721 +0200 @@ -20,7 +20,7 @@ %define skip_python2 1 %define libname acme Name: python-%{libname} -Version: 1.16.0 +Version: 1.17.0 Release: 0 Summary: Python library for the ACME protocol License: Apache-2.0 ++++++ acme-1.16.0.tar.gz -> acme-1.17.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acme-1.16.0/PKG-INFO new/acme-1.17.0/PKG-INFO --- old/acme-1.16.0/PKG-INFO 2021-06-01 19:49:28.296295200 +0200 +++ new/acme-1.17.0/PKG-INFO 2021-07-06 17:41:23.313219500 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: acme -Version: 1.16.0 +Version: 1.17.0 Summary: ACME protocol implementation in Python Home-page: https://github.com/letsencrypt/letsencrypt Author: Certbot Project @@ -19,8 +19,8 @@ Classifier: Topic :: Internet :: WWW/HTTP Classifier: Topic :: Security Requires-Python: >=3.6 -Provides-Extra: dev Provides-Extra: docs +Provides-Extra: test License-File: LICENSE.txt UNKNOWN diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acme-1.16.0/acme/client.py new/acme-1.17.0/acme/client.py --- old/acme-1.16.0/acme/client.py 2021-06-01 19:49:17.000000000 +0200 +++ new/acme-1.17.0/acme/client.py 2021-07-06 17:41:15.000000000 +0200 @@ -658,7 +658,10 @@ response = self._post(self.directory['newOrder'], order) body = messages.Order.from_json(response.json()) authorizations = [] - for url in body.authorizations: + # pylint has trouble understanding our josepy based objects which use + # things like custom metaclass logic. body.authorizations should be a + # list of strings containing URLs so let's disable this check here. + for url in body.authorizations: # pylint: disable=not-an-iterable authorizations.append(self._authzr_from_response(self._post_as_get(url), uri=url)) return messages.OrderResource( body=body, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acme-1.16.0/acme/standalone.py new/acme-1.17.0/acme/standalone.py --- old/acme-1.16.0/acme/standalone.py 2021-06-01 19:49:17.000000000 +0200 +++ new/acme-1.17.0/acme/standalone.py 2021-07-06 17:41:15.000000000 +0200 @@ -8,6 +8,7 @@ import socketserver import threading from typing import List +from typing import Optional from acme import challenges from acme import crypto_util @@ -66,6 +67,9 @@ self.threads: List[threading.Thread] = [] self.servers: List[socketserver.BaseServer] = [] + # Preserve socket error for re-raising, if no servers can be started + last_socket_err: Optional[socket.error] = None + # Must try True first. # Ubuntu, for example, will fail to bind to IPv4 if we've already bound # to IPv6. But that's ok, since it will accept IPv4 connections on the IPv6 @@ -82,7 +86,8 @@ logger.debug( "Successfully bound to %s:%s using %s", new_address[0], new_address[1], "IPv6" if ip_version else "IPv4") - except socket.error: + except socket.error as e: + last_socket_err = e if self.servers: # Already bound using IPv6. logger.debug( @@ -101,7 +106,10 @@ # bind to the same port for both servers. port = server.socket.getsockname()[1] if not self.servers: - raise socket.error("Could not bind to IPv4 or IPv6.") + if last_socket_err: + raise last_socket_err + else: # pragma: no cover + raise socket.error("Could not bind to IPv4 or IPv6.") def serve_forever(self): """Wraps socketserver.TCPServer.serve_forever""" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acme-1.16.0/acme.egg-info/PKG-INFO new/acme-1.17.0/acme.egg-info/PKG-INFO --- old/acme-1.16.0/acme.egg-info/PKG-INFO 2021-06-01 19:49:28.000000000 +0200 +++ new/acme-1.17.0/acme.egg-info/PKG-INFO 2021-07-06 17:41:23.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: acme -Version: 1.16.0 +Version: 1.17.0 Summary: ACME protocol implementation in Python Home-page: https://github.com/letsencrypt/letsencrypt Author: Certbot Project @@ -19,8 +19,8 @@ Classifier: Topic :: Internet :: WWW/HTTP Classifier: Topic :: Security Requires-Python: >=3.6 -Provides-Extra: dev Provides-Extra: docs +Provides-Extra: test License-File: LICENSE.txt UNKNOWN diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acme-1.16.0/acme.egg-info/requires.txt new/acme-1.17.0/acme.egg-info/requires.txt --- old/acme-1.16.0/acme.egg-info/requires.txt 2021-06-01 19:49:28.000000000 +0200 +++ new/acme-1.17.0/acme.egg-info/requires.txt 2021-07-06 17:41:23.000000000 +0200 @@ -7,11 +7,10 @@ requests-toolbelt>=0.3.0 setuptools>=39.0.1 -[dev] -pytest -pytest-xdist -tox - [docs] Sphinx>=1.0 sphinx_rtd_theme + +[test] +pytest +pytest-xdist diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acme-1.16.0/setup.py new/acme-1.17.0/setup.py --- old/acme-1.16.0/setup.py 2021-06-01 19:49:18.000000000 +0200 +++ new/acme-1.17.0/setup.py 2021-07-06 17:41:17.000000000 +0200 @@ -3,7 +3,7 @@ from setuptools import find_packages from setuptools import setup -version = '1.16.0' +version = '1.17.0' install_requires = [ 'cryptography>=2.1.4', @@ -19,17 +19,16 @@ 'setuptools>=39.0.1', ] -dev_extras = [ - 'pytest', - 'pytest-xdist', - 'tox', -] - docs_extras = [ 'Sphinx>=1.0', # autodoc_member_order = 'bysource', autodoc_default_flags 'sphinx_rtd_theme', ] +test_extras = [ + 'pytest', + 'pytest-xdist', +] + setup( name='acme', version=version, @@ -57,7 +56,7 @@ include_package_data=True, install_requires=install_requires, extras_require={ - 'dev': dev_extras, 'docs': docs_extras, + 'test': test_extras, }, ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/acme-1.16.0/tests/standalone_test.py new/acme-1.17.0/tests/standalone_test.py --- old/acme-1.16.0/tests/standalone_test.py 2021-06-01 19:49:17.000000000 +0200 +++ new/acme-1.17.0/tests/standalone_test.py 2021-07-06 17:41:15.000000000 +0200 @@ -190,12 +190,18 @@ @mock.patch("socket.socket.bind") def test_fail_to_bind(self, mock_bind): - mock_bind.side_effect = socket.error + from errno import EADDRINUSE from acme.standalone import BaseDualNetworkedServers - self.assertRaises(socket.error, BaseDualNetworkedServers, - BaseDualNetworkedServersTest.SingleProtocolServer, - ('', 0), - socketserver.BaseRequestHandler) + + mock_bind.side_effect = socket.error(EADDRINUSE, "Fake addr in use error") + + with self.assertRaises(socket.error) as em: + BaseDualNetworkedServers( + BaseDualNetworkedServersTest.SingleProtocolServer, + ('', 0), socketserver.BaseRequestHandler) + + self.assertEqual(em.exception.errno, EADDRINUSE) + def test_ports_equal(self): from acme.standalone import BaseDualNetworkedServers
