Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-httplib2 for openSUSE:Factory
checked in at 2021-12-09 19:45:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-httplib2 (Old)
and /work/SRC/openSUSE:Factory/.python-httplib2.new.2520 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-httplib2"
Thu Dec 9 19:45:05 2021 rev:51 rq:934678 version:0.20.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-httplib2/python-httplib2.changes
2021-05-20 19:23:49.286251400 +0200
+++
/work/SRC/openSUSE:Factory/.python-httplib2.new.2520/python-httplib2.changes
2021-12-09 19:45:09.805120377 +0100
@@ -1,0 +2,13 @@
+Tue Nov 30 08:22:25 UTC 2021 - Dirk M??ller <[email protected]>
+
+- add pyparsing dependency
+
+-------------------------------------------------------------------
+Mon Nov 29 10:55:53 UTC 2021 - Dirk M??ller <[email protected]>
+
+- update to 0.20.2:
+ auth: support pyparsing v3
+ proxy: correct extraction of errno from pysocks ProxyConnectionError
+ IMPORTANT cacerts: remove expired DST Root CA X3, add ISRG Root X1, X2
+
+-------------------------------------------------------------------
Old:
----
httplib2-0.19.1.tar.gz
New:
----
httplib2-0.20.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-httplib2.spec ++++++
--- /var/tmp/diff_new_pack.lINUIw/_old 2021-12-09 19:45:10.509120716 +0100
+++ /var/tmp/diff_new_pack.lINUIw/_new 2021-12-09 19:45:10.513120718 +0100
@@ -20,7 +20,7 @@
# Tests require network connection
%bcond_with tests
Name: python-httplib2
-Version: 0.19.1
+Version: 0.20.2
Release: 0
Summary: A Python HTTP client library
License: Apache-2.0 AND MIT AND (GPL-2.0-or-later OR MPL-1.1 OR
LGPL-2.1-or-later)
@@ -31,6 +31,7 @@
BuildRequires: python-rpm-macros
Requires: ca-certificates
Requires: python-certifi
+Requires: python-pyparsing >= 2.4.2
BuildArch: noarch
%if %{with tests}
# Test requirements (for ssl module):
++++++ httplib2-0.19.1.tar.gz -> httplib2-0.20.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/CHANGELOG
new/httplib2-0.20.2/CHANGELOG
--- old/httplib2-0.19.1/CHANGELOG 2021-03-30 18:29:47.000000000 +0200
+++ new/httplib2-0.20.2/CHANGELOG 2021-11-02 08:04:17.000000000 +0100
@@ -1,3 +1,27 @@
+0.20.2
+
+ auth: support pyparsing v3 (AttributeError downcaseTokens)
+ https://github.com/httplib2/httplib2/issues/207
+
+ proxy: correct extraction of errno from pysocks ProxyConnectionError
+ https://github.com/httplib2/httplib2/pull/202
+
+0.20.1
+
+ No changes from 0.20.0, re-upload of broken py2 wheel.
+
+0.20.0
+
+ IMPORTANT cacerts: remove expired DST Root CA X3, add ISRG Root X1, X2
+ https://github.com/httplib2/httplib2/pull/200
+ https://github.com/httplib2/httplib2/issues/203
+
+ tls: accept min/max ssl.TLSVersion enum values
+ https://github.com/httplib2/httplib2/pull/191
+
+ setup(python_requires=...) may need setuptools update
+ https://github.com/httplib2/httplib2/pull/195
+
0.19.1
auth header parsing performance optimizations; Thanks to Paul McGuire
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/PKG-INFO new/httplib2-0.20.2/PKG-INFO
--- old/httplib2-0.19.1/PKG-INFO 2021-03-30 18:30:11.000000000 +0200
+++ new/httplib2-0.20.2/PKG-INFO 2021-11-02 08:10:29.000000000 +0100
@@ -1,6 +1,6 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.2
Name: httplib2
-Version: 0.19.1
+Version: 0.20.2
Summary: A comprehensive HTTP client library.
Home-page: https://github.com/httplib2/httplib2
Author: Joe Gregorio
@@ -64,5 +64,8 @@
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Software Development :: Libraries
+Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/python2/httplib2/__init__.py
new/httplib2-0.20.2/python2/httplib2/__init__.py
--- old/httplib2-0.19.1/python2/httplib2/__init__.py 2021-03-30
18:29:47.000000000 +0200
+++ new/httplib2-0.20.2/python2/httplib2/__init__.py 2021-11-02
07:41:42.000000000 +0100
@@ -19,7 +19,7 @@
"Alex Yu",
]
__license__ = "MIT"
-__version__ = "0.19.1"
+__version__ = "0.20.2"
import base64
import calendar
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/python2/httplib2/cacerts.txt
new/httplib2-0.20.2/python2/httplib2/cacerts.txt
--- old/httplib2-0.19.1/python2/httplib2/cacerts.txt 2021-03-30
18:29:47.000000000 +0200
+++ new/httplib2-0.20.2/python2/httplib2/cacerts.txt 2021-10-18
23:44:04.000000000 +0200
@@ -2138,34 +2138,6 @@
so8uBtjRkcfGEvRM/TAXw8HaOFvjqermobp573PYtlNXLfbQ4ddI
-----END CERTIFICATE-----
-# Issuer: O=Digital Signature Trust Co., CN=DST Root CA X3
-# Subject: O=Digital Signature Trust Co., CN=DST Root CA X3
-# Label: "IdenTrust DST Root CA X3"
-# Serial: 44AFB080D6A327BA893039862EF8406B
-# MD5 Fingerprint: 41:03:52:DC:0F:F7:50:1B:16:F0:02:8E:BA:6F:45:C5
-# SHA1 Fingerprint: DA:C9:02:4F:54:D8:F6:DF:94:93:5F:B1:73:26:38:CA:6A:D7:7C:13
-# SHA256 Fingerprint:
06:87:26:03:31:A7:24:03:D9:09:F1:05:E6:9B:CF:0D:32:E1:BD:24:93:FF:C6:D9:20:6D:11:BC:D6:77:07:39
------BEGIN CERTIFICATE-----
-MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/
-MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
-DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow
-PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD
-Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
-AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O
-rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq
-OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b
-xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw
-7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD
-aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
-HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG
-SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69
-ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr
-AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz
-R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5
-JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
-Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
------END CERTIFICATE-----
-
# Issuer: CN=DigiCert Global Root G2, OU=www.digicert.com, O=DigiCert Inc, C=US
# Subject: CN=DigiCert Global Root G2, OU=www.digicert.com, O=DigiCert Inc,
C=US
# Serial: 33af1e6a711a9a0bb2864b11d09fae5
@@ -2194,3 +2166,60 @@
pLiaWN0bfVKfjllDiIGknibVb63dDcY3fe0Dkhvld1927jyNxF1WW6LZZm6zNTfl
MrY=
-----END CERTIFICATE-----
+
+# Issuer: /C=US/O=Internet Security Research Group/CN=ISRG Root X1
+# Subject: /C=US/O=Internet Security Research Group/CN=ISRG Root X1
+# Serial: 8210CFB0D240E3594463E0BB63828B00
+# SHA1 Fingerprint: CA:BD:2A:79:A1:07:6A:31:F2:1D:25:36:35:CB:03:9D:43:29:A5:E8
+# SHA256 Fingerprint:
96:BC:EC:06:26:49:76:F3:74:60:77:9A:CF:28:C5:A7:CF:E8:A3:C0:AA:E1:1A:8F:FC:EE:05:C0:BD:DF:08:C6
+-----BEGIN CERTIFICATE-----
+MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
+TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
+cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4
+WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu
+ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY
+MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc
+h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+
+0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U
+A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW
+T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH
+B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC
+B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv
+KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn
+OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn
+jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw
+qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI
+rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
+HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq
+hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL
+ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ
+3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK
+NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5
+ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur
+TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC
+jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc
+oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq
+4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA
+mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d
+emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc=
+-----END CERTIFICATE-----
+
+# Issuer: /C=US/O=Internet Security Research Group/CN=ISRG Root X2
+# Subject: /C=US/O=Internet Security Research Group/CN=ISRG Root X2
+# Serial: 41D29DD172EAEEA780C12C6CE92F8752
+# SHA1 Fingerprint: BD:B1:B9:3C:D5:97:8D:45:C6:26:14:55:F8:DB:95:C7:5A:D1:53:AF
+# SHA256 Fingerprint:
69:72:9B:8E:15:A8:6E:FC:17:7A:57:AF:B7:17:1D:FC:64:AD:D2:8C:2F:CA:8C:F1:50:7E:34:45:3C:CB:14:70
+-----BEGIN CERTIFICATE-----
+MIICGzCCAaGgAwIBAgIQQdKd0XLq7qeAwSxs6S+HUjAKBggqhkjOPQQDAzBPMQsw
+CQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJuZXQgU2VjdXJpdHkgUmVzZWFyY2gg
+R3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBYMjAeFw0yMDA5MDQwMDAwMDBaFw00
+MDA5MTcxNjAwMDBaME8xCzAJBgNVBAYTAlVTMSkwJwYDVQQKEyBJbnRlcm5ldCBT
+ZWN1cml0eSBSZXNlYXJjaCBHcm91cDEVMBMGA1UEAxMMSVNSRyBSb290IFgyMHYw
+EAYHKoZIzj0CAQYFK4EEACIDYgAEzZvVn4CDCuwJSvMWSj5cz3es3mcFDR0HttwW
++1qLFNvicWDEukWVEYmO6gbf9yoWHKS5xcUy4APgHoIYOIvXRdgKam7mAHf7AlF9
+ItgKbppbd9/w+kHsOdx1ymgHDB/qo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0T
+AQH/BAUwAwEB/zAdBgNVHQ4EFgQUfEKWrt5LSDv6kviejM9ti6lyN5UwCgYIKoZI
+zj0EAwMDaAAwZQIwe3lORlCEwkSHRhtFcP9Ymd70/aTSVaYgLXTWNLxBo1BfASdW
+tL4ndQavEi51mI38AjEAi/V3bNTIZargCyzuFJ0nN6T5U6VR5CmD1/iQMVtCnwr1
+/q4AaOeMSQ+2b1tbFfLn
+-----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/httplib2-0.19.1/python2/httplib2.egg-info/SOURCES.txt
new/httplib2-0.20.2/python2/httplib2.egg-info/SOURCES.txt
--- old/httplib2-0.19.1/python2/httplib2.egg-info/SOURCES.txt 1970-01-01
01:00:00.000000000 +0100
+++ new/httplib2-0.20.2/python2/httplib2.egg-info/SOURCES.txt 2021-10-11
09:44:00.000000000 +0200
@@ -0,0 +1,133 @@
+CHANGELOG
+LICENSE
+MANIFEST.in
+README.md
+SECURITY.md
+pyproject.toml
+requirements-test.txt
+requirements.txt
+setup.cfg
+setup.py
+python2/httplib2test.py
+python2/httplib2test_appengine.py
+python2/ssl_protocol_test.py
+python2/httplib2/__init__.py
+python2/httplib2/auth.py
+python2/httplib2/cacerts.txt
+python2/httplib2/certs.py
+python2/httplib2/error.py
+python2/httplib2/iri2uri.py
+python2/httplib2/socks.py
+python2/httplib2.egg-info/PKG-INFO
+python2/httplib2.egg-info/SOURCES.txt
+python2/httplib2.egg-info/dependency_links.txt
+python2/httplib2.egg-info/requires.txt
+python2/httplib2.egg-info/top_level.txt
+python2/httplib2/test/__init__.py
+python2/httplib2/test/miniserver.py
+python2/httplib2/test/other_cacerts.txt
+python2/httplib2/test/smoke_test.py
+python2/httplib2/test/test_no_socket.py
+python2/httplib2/test/test_ssl_context.py
+python2/httplib2/test/brokensocket/socket.py
+python2/httplib2/test/functional/test_proxies.py
+python3/httplib2test.py
+python3/httplib2/__init__.py
+python3/httplib2/auth.py
+python3/httplib2/cacerts.txt
+python3/httplib2/certs.py
+python3/httplib2/error.py
+python3/httplib2/iri2uri.py
+python3/httplib2/socks.py
+python3/httplib2.egg-info/SOURCES.txt
+python3/httplib2.egg-info/dependency_links.txt
+python3/httplib2.egg-info/requires.txt
+python3/httplib2.egg-info/top_level.txt
+python3/httplib2/test/other_cacerts.txt
+test/.htaccess
+test/test.asis
+test/300/final-destination.txt
+test/300/with-location-header.asis
+test/300/without-location-header.asis
+test/301/final-destination.txt
+test/301/onestep.asis
+test/302/.myhtaccess
+test/302/final-destination.txt
+test/302/no-location.asis
+test/302/onestep.asis
+test/302/twostep.asis
+test/303/303.cgi
+test/303/final-destination.txt
+test/303/redirect-to-header-reflector.cgi
+test/303/redirect-to-reflector.cgi
+test/304/end2end.cgi
+test/304/test_etag.txt
+test/304/last-modified-only/.htaccess
+test/304/last-modified-only/last-modified-only.txt
+test/307/final-destination.txt
+test/307/onestep.asis
+test/410/410.asis
+test/basic/.htaccess
+test/basic/file.txt
+test/basic/passwdfile
+test/basic-nested/.htaccess
+test/basic-nested/file.txt
+test/basic-nested/passwdfile
+test/basic-nested/subdir/.htaccess
+test/basic-nested/subdir/file.txt
+test/basic-nested/subdir/passwdfile
+test/basic2/.htaccess
+test/basic2/file.txt
+test/basic2/passwdfile
+test/conditional-updates/test.cgi
+test/deflate/deflated-content
+test/deflate/deflated-headers.txt
+test/deflate/deflated.asis
+test/deflate/failed-compression.asis
+test/digest/.htaccess
+test/digest/digestpw
+test/digest/file.txt
+test/digest-expire/.htaccess
+test/digest-expire/digestpw
+test/digest-expire/file.txt
+test/duplicate-headers/multilink.asis
+test/gzip/.htaccess
+test/gzip/failed-compression.asis
+test/gzip/final-destination.txt
+test/gzip/post.cgi
+test/methods/method_reflector.cgi
+test/no-store/no-store.asis
+test/reflector/reflector.cgi
+test/timeout/timeout.cgi
+test/user-agent/test.cgi
+test/vary/accept-double.asis
+test/vary/accept.asis
+test/vary/no-vary.asis
+test/vary/unused-header.asis
+tests/__init__.py
+tests/fuzz_request.py
+tests/fuzz_url.py
+tests/test_auth.py
+tests/test_cacerts_from_env.py
+tests/test_cache.py
+tests/test_encoding.py
+tests/test_http.py
+tests/test_https.py
+tests/test_other.py
+tests/test_proxy.py
+tests/test_uri.py
+tests/tls/ca.key
+tests/tls/ca.pem
+tests/tls/ca.srl
+tests/tls/ca_unused.pem
+tests/tls/client.crt
+tests/tls/client.key
+tests/tls/client.pem
+tests/tls/client_chain.pem
+tests/tls/client_encrypted.crt
+tests/tls/client_encrypted.key
+tests/tls/client_encrypted.pem
+tests/tls/server.crt
+tests/tls/server.key
+tests/tls/server.pem
+tests/tls/server_chain.pem
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/httplib2-0.19.1/python2/httplib2.egg-info/dependency_links.txt
new/httplib2-0.20.2/python2/httplib2.egg-info/dependency_links.txt
--- old/httplib2-0.19.1/python2/httplib2.egg-info/dependency_links.txt
1970-01-01 01:00:00.000000000 +0100
+++ new/httplib2-0.20.2/python2/httplib2.egg-info/dependency_links.txt
2021-10-11 09:44:00.000000000 +0200
@@ -0,0 +1 @@
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/httplib2-0.19.1/python2/httplib2.egg-info/requires.txt
new/httplib2-0.20.2/python2/httplib2.egg-info/requires.txt
--- old/httplib2-0.19.1/python2/httplib2.egg-info/requires.txt 1970-01-01
01:00:00.000000000 +0100
+++ new/httplib2-0.20.2/python2/httplib2.egg-info/requires.txt 2021-10-11
09:44:00.000000000 +0200
@@ -0,0 +1 @@
+pyparsing<3,>=2.4.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/httplib2-0.19.1/python2/httplib2.egg-info/top_level.txt
new/httplib2-0.20.2/python2/httplib2.egg-info/top_level.txt
--- old/httplib2-0.19.1/python2/httplib2.egg-info/top_level.txt 1970-01-01
01:00:00.000000000 +0100
+++ new/httplib2-0.20.2/python2/httplib2.egg-info/top_level.txt 2021-10-11
09:44:00.000000000 +0200
@@ -0,0 +1 @@
+httplib2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/python3/httplib2/__init__.py
new/httplib2-0.20.2/python3/httplib2/__init__.py
--- old/httplib2-0.19.1/python3/httplib2/__init__.py 2021-03-30
18:29:47.000000000 +0200
+++ new/httplib2-0.20.2/python3/httplib2/__init__.py 2021-11-02
07:41:42.000000000 +0100
@@ -15,7 +15,7 @@
"Alex Yu",
]
__license__ = "MIT"
-__version__ = "0.19.1"
+__version__ = "0.20.2"
import base64
import calendar
@@ -151,15 +151,18 @@
# source:
https://docs.python.org/3/library/ssl.html#ssl.SSLContext.maximum_version
if maximum_version is not None:
if hasattr(context, "maximum_version"):
- context.maximum_version = getattr(ssl.TLSVersion, maximum_version)
+ if isinstance(maximum_version, str):
+ maximum_version = getattr(ssl.TLSVersion, maximum_version)
+ context.maximum_version = maximum_version
else:
raise RuntimeError("setting tls_maximum_version requires Python
3.7 and OpenSSL 1.1 or newer")
if minimum_version is not None:
if hasattr(context, "minimum_version"):
- context.minimum_version = getattr(ssl.TLSVersion, minimum_version)
+ if isinstance(minimum_version, str):
+ minimum_version = getattr(ssl.TLSVersion, minimum_version)
+ context.minimum_version = minimum_version
else:
raise RuntimeError("setting tls_minimum_version requires Python
3.7 and OpenSSL 1.1 or newer")
-
# check_hostname requires python 3.4+
# we will perform the equivalent in HTTPSConnectionWithTimeout.connect()
by calling ssl.match_hostname
# if check_hostname is not supported.
@@ -180,6 +183,20 @@
return [header for header in list(response.keys()) if header not in
hopbyhop]
+def _errno_from_exception(e):
+ # socket.error and common wrap in .args
+ if len(e.args) > 0:
+ return e.args[0].errno if isinstance(e.args[0], socket.error) else
e.errno
+
+ # pysocks.ProxyError wraps in .socket_err
+ # https://github.com/httplib2/httplib2/pull/202
+ if hasattr(e, "socket_err"):
+ e_int = e.socket_err
+ return e_int.args[0].errno if isinstance(e_int.args[0], socket.error)
else e_int.errno
+
+ return None
+
+
URI = re.compile(r"^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?")
@@ -1352,7 +1369,7 @@
conn.close()
raise ServerNotFoundError("Unable to find the server at %s" %
conn.host)
except socket.error as e:
- errno_ = e.args[0].errno if isinstance(e.args[0],
socket.error) else e.errno
+ errno_ = _errno_from_exception(e)
if errno_ in (errno.ENETUNREACH, errno.EADDRNOTAVAIL) and i <
RETRIES:
continue # retry on potentially transient errors
raise
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/python3/httplib2/auth.py
new/httplib2-0.20.2/python3/httplib2/auth.py
--- old/httplib2-0.19.1/python3/httplib2/auth.py 2021-03-30
18:29:47.000000000 +0200
+++ new/httplib2-0.20.2/python3/httplib2/auth.py 2021-11-02
07:35:56.000000000 +0100
@@ -5,6 +5,12 @@
from .error import *
+
+try: # pyparsing>=3.0.0
+ downcaseTokens = pp.common.downcaseTokens
+except AttributeError:
+ downcaseTokens = pp.downcaseTokens
+
UNQUOTE_PAIRS = re.compile(r"\\(.)")
unquote = lambda s, l, t: UNQUOTE_PAIRS.sub(r"\1", t[0][1:-1])
@@ -17,7 +23,7 @@
)
quoted_string =
pp.dblQuotedString.copy().setName("quoted-string").setParseAction(unquote)
-auth_param_name =
token.copy().setName("auth-param-name").addParseAction(pp.downcaseTokens)
+auth_param_name =
token.copy().setName("auth-param-name").addParseAction(downcaseTokens)
auth_param = auth_param_name + pp.Suppress("=") + (quoted_string | token)
params = pp.Dict(pp.delimitedList(pp.Group(auth_param)))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/python3/httplib2/cacerts.txt
new/httplib2-0.20.2/python3/httplib2/cacerts.txt
--- old/httplib2-0.19.1/python3/httplib2/cacerts.txt 2021-03-30
18:29:47.000000000 +0200
+++ new/httplib2-0.20.2/python3/httplib2/cacerts.txt 2021-10-18
23:44:04.000000000 +0200
@@ -2138,34 +2138,6 @@
so8uBtjRkcfGEvRM/TAXw8HaOFvjqermobp573PYtlNXLfbQ4ddI
-----END CERTIFICATE-----
-# Issuer: O=Digital Signature Trust Co., CN=DST Root CA X3
-# Subject: O=Digital Signature Trust Co., CN=DST Root CA X3
-# Label: "IdenTrust DST Root CA X3"
-# Serial: 44AFB080D6A327BA893039862EF8406B
-# MD5 Fingerprint: 41:03:52:DC:0F:F7:50:1B:16:F0:02:8E:BA:6F:45:C5
-# SHA1 Fingerprint: DA:C9:02:4F:54:D8:F6:DF:94:93:5F:B1:73:26:38:CA:6A:D7:7C:13
-# SHA256 Fingerprint:
06:87:26:03:31:A7:24:03:D9:09:F1:05:E6:9B:CF:0D:32:E1:BD:24:93:FF:C6:D9:20:6D:11:BC:D6:77:07:39
------BEGIN CERTIFICATE-----
-MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/
-MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
-DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow
-PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD
-Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
-AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O
-rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq
-OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b
-xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw
-7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD
-aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
-HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG
-SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69
-ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr
-AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz
-R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5
-JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
-Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
------END CERTIFICATE-----
-
# Issuer: CN=DigiCert Global Root G2, OU=www.digicert.com, O=DigiCert Inc, C=US
# Subject: CN=DigiCert Global Root G2, OU=www.digicert.com, O=DigiCert Inc,
C=US
# Serial: 33af1e6a711a9a0bb2864b11d09fae5
@@ -2195,3 +2167,59 @@
MrY=
-----END CERTIFICATE-----
+# Issuer: /C=US/O=Internet Security Research Group/CN=ISRG Root X1
+# Subject: /C=US/O=Internet Security Research Group/CN=ISRG Root X1
+# Serial: 8210CFB0D240E3594463E0BB63828B00
+# SHA1 Fingerprint: CA:BD:2A:79:A1:07:6A:31:F2:1D:25:36:35:CB:03:9D:43:29:A5:E8
+# SHA256 Fingerprint:
96:BC:EC:06:26:49:76:F3:74:60:77:9A:CF:28:C5:A7:CF:E8:A3:C0:AA:E1:1A:8F:FC:EE:05:C0:BD:DF:08:C6
+-----BEGIN CERTIFICATE-----
+MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
+TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
+cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4
+WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu
+ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY
+MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc
+h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+
+0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U
+A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW
+T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH
+B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC
+B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv
+KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn
+OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn
+jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw
+qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI
+rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
+HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq
+hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL
+ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ
+3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK
+NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5
+ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur
+TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC
+jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc
+oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq
+4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA
+mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d
+emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc=
+-----END CERTIFICATE-----
+
+# Issuer: /C=US/O=Internet Security Research Group/CN=ISRG Root X2
+# Subject: /C=US/O=Internet Security Research Group/CN=ISRG Root X2
+# Serial: 41D29DD172EAEEA780C12C6CE92F8752
+# SHA1 Fingerprint: BD:B1:B9:3C:D5:97:8D:45:C6:26:14:55:F8:DB:95:C7:5A:D1:53:AF
+# SHA256 Fingerprint:
69:72:9B:8E:15:A8:6E:FC:17:7A:57:AF:B7:17:1D:FC:64:AD:D2:8C:2F:CA:8C:F1:50:7E:34:45:3C:CB:14:70
+-----BEGIN CERTIFICATE-----
+MIICGzCCAaGgAwIBAgIQQdKd0XLq7qeAwSxs6S+HUjAKBggqhkjOPQQDAzBPMQsw
+CQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJuZXQgU2VjdXJpdHkgUmVzZWFyY2gg
+R3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBYMjAeFw0yMDA5MDQwMDAwMDBaFw00
+MDA5MTcxNjAwMDBaME8xCzAJBgNVBAYTAlVTMSkwJwYDVQQKEyBJbnRlcm5ldCBT
+ZWN1cml0eSBSZXNlYXJjaCBHcm91cDEVMBMGA1UEAxMMSVNSRyBSb290IFgyMHYw
+EAYHKoZIzj0CAQYFK4EEACIDYgAEzZvVn4CDCuwJSvMWSj5cz3es3mcFDR0HttwW
++1qLFNvicWDEukWVEYmO6gbf9yoWHKS5xcUy4APgHoIYOIvXRdgKam7mAHf7AlF9
+ItgKbppbd9/w+kHsOdx1ymgHDB/qo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0T
+AQH/BAUwAwEB/zAdBgNVHQ4EFgQUfEKWrt5LSDv6kviejM9ti6lyN5UwCgYIKoZI
+zj0EAwMDaAAwZQIwe3lORlCEwkSHRhtFcP9Ymd70/aTSVaYgLXTWNLxBo1BfASdW
+tL4ndQavEi51mI38AjEAi/V3bNTIZargCyzuFJ0nN6T5U6VR5CmD1/iQMVtCnwr1
+/q4AaOeMSQ+2b1tbFfLn
+-----END CERTIFICATE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/python3/httplib2.egg-info/PKG-INFO
new/httplib2-0.20.2/python3/httplib2.egg-info/PKG-INFO
--- old/httplib2-0.19.1/python3/httplib2.egg-info/PKG-INFO 2021-03-30
18:30:11.000000000 +0200
+++ new/httplib2-0.20.2/python3/httplib2.egg-info/PKG-INFO 2021-11-02
08:10:29.000000000 +0100
@@ -1,6 +1,6 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.2
Name: httplib2
-Version: 0.19.1
+Version: 0.20.2
Summary: A comprehensive HTTP client library.
Home-page: https://github.com/httplib2/httplib2
Author: Joe Gregorio
@@ -64,5 +64,8 @@
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Software Development :: Libraries
+Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/httplib2-0.19.1/python3/httplib2.egg-info/SOURCES.txt
new/httplib2-0.20.2/python3/httplib2.egg-info/SOURCES.txt
--- old/httplib2-0.19.1/python3/httplib2.egg-info/SOURCES.txt 2021-03-30
18:30:11.000000000 +0200
+++ new/httplib2-0.20.2/python3/httplib2.egg-info/SOURCES.txt 2021-11-02
08:10:29.000000000 +0100
@@ -18,6 +18,10 @@
python2/httplib2/error.py
python2/httplib2/iri2uri.py
python2/httplib2/socks.py
+python2/httplib2.egg-info/SOURCES.txt
+python2/httplib2.egg-info/dependency_links.txt
+python2/httplib2.egg-info/requires.txt
+python2/httplib2.egg-info/top_level.txt
python2/httplib2/test/__init__.py
python2/httplib2/test/miniserver.py
python2/httplib2/test/other_cacerts.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/httplib2-0.19.1/python3/httplib2.egg-info/requires.txt
new/httplib2-0.20.2/python3/httplib2.egg-info/requires.txt
--- old/httplib2-0.19.1/python3/httplib2.egg-info/requires.txt 2021-03-30
18:30:11.000000000 +0200
+++ new/httplib2-0.20.2/python3/httplib2.egg-info/requires.txt 2021-11-02
08:10:29.000000000 +0100
@@ -1 +1,6 @@
+
+[:python_version < "3.0"]
pyparsing<3,>=2.4.2
+
+[:python_version > "3.0"]
+pyparsing!=3.0.0,!=3.0.1,!=3.0.2,!=3.0.3,<4,>=2.4.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/requirements.txt
new/httplib2-0.20.2/requirements.txt
--- old/httplib2-0.19.1/requirements.txt 2021-03-30 18:29:47.000000000
+0200
+++ new/httplib2-0.20.2/requirements.txt 2021-11-02 07:35:56.000000000
+0100
@@ -1 +1,2 @@
-pyparsing>=2.4.2,<3 # TODO include v3 after dropping Python2 support
+pyparsing>=2.4.2,<3; python_version<'3.0' # TODO remove after dropping Python2
support
+pyparsing>=2.4.2,<4, !=3.0.0, !=3.0.1, !=3.0.2, !=3.0.3; python_version>'3.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/setup.py new/httplib2-0.20.2/setup.py
--- old/httplib2-0.19.1/setup.py 2021-03-30 18:29:47.000000000 +0200
+++ new/httplib2-0.20.2/setup.py 2021-11-02 07:41:42.000000000 +0100
@@ -4,7 +4,7 @@
import sys
pkgdir = {"": "python%s" % sys.version_info[0]}
-VERSION = "0.19.1"
+VERSION = "0.20.2"
# `python setup.py test` uses existing Python environment, no virtualenv, no
pip.
@@ -88,6 +88,7 @@
package_data={"httplib2": ["*.txt"]},
install_requires=read_requirements("requirements.txt"),
tests_require=read_requirements("requirements-test.txt"),
+ python_requires=">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*",
cmdclass={"test": TestCommand},
classifiers=[
"Development Status :: 4 - Beta",
@@ -103,6 +104,8 @@
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
+ "Programming Language :: Python :: 3.8",
+ "Programming Language :: Python :: 3.9",
"Topic :: Internet :: WWW/HTTP",
"Topic :: Software Development :: Libraries",
],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/tests/fuzz_request.py
new/httplib2-0.20.2/tests/fuzz_request.py
--- old/httplib2-0.19.1/tests/fuzz_request.py 2021-03-30 18:29:47.000000000
+0200
+++ new/httplib2-0.20.2/tests/fuzz_request.py 2021-10-25 20:19:35.000000000
+0200
@@ -1,16 +1,18 @@
import sys
-import httplib2
import atheris
-import tests
+with atheris.instrument_imports():
+ import httplib2
+ import tests
+
[email protected]_func
def TestOneInput(input_bytes):
http = httplib2.Http()
ib = b"HTTP/1.0 200 OK\r\n" + input_bytes
with tests.server_const_bytes(ib) as uri:
http.request(uri)
-
def main():
atheris.Setup(sys.argv, TestOneInput, enable_python_coverage=True)
atheris.Fuzz()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/tests/fuzz_url.py
new/httplib2-0.20.2/tests/fuzz_url.py
--- old/httplib2-0.19.1/tests/fuzz_url.py 2021-03-30 18:29:47.000000000
+0200
+++ new/httplib2-0.20.2/tests/fuzz_url.py 2021-10-03 23:10:32.000000000
+0200
@@ -1,8 +1,11 @@
import sys
import atheris
-import httplib2
+with atheris.instrument_imports():
+ import httplib2
+
[email protected]_func
def TestOneInput(data):
fdp = atheris.FuzzedDataProvider(data)
original = fdp.ConsumeUnicode(sys.maxsize)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/tests/test_http.py
new/httplib2-0.20.2/tests/test_http.py
--- old/httplib2-0.19.1/tests/test_http.py 2021-03-30 18:29:47.000000000
+0200
+++ new/httplib2-0.20.2/tests/test_http.py 2021-10-25 20:19:35.000000000
+0200
@@ -735,4 +735,11 @@
response, content = http.request(danger_url, "GET")
assert response.status == 200
req = tests.HttpRequest.from_bytes(content)
- assert req.uri == "/?q=%20HTTP/1.1%0D%0Aignore-http:"
+ expect = (
+ # new behavior after bpo-43882 fix
+ # https://github.com/httplib2/httplib2/issues/193
+ "/?q=%20HTTP/1.1ignore-http:",
+ # old behavior
+ "/?q=%20HTTP/1.1%0D%0Aignore-http:",
+ )
+ assert req.uri in expect
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/httplib2-0.19.1/tests/test_https.py
new/httplib2-0.20.2/tests/test_https.py
--- old/httplib2-0.19.1/tests/test_https.py 2021-03-30 18:29:47.000000000
+0200
+++ new/httplib2-0.20.2/tests/test_https.py 2021-10-25 20:19:35.000000000
+0200
@@ -71,34 +71,20 @@
pass
[email protected](
- not hasattr(tests.ssl_context(), "minimum_version"),
- reason="ssl doesn't support TLS min/max",
+ssl_context_accept_version = hasattr(tests.ssl_context(), "maximum_version")
and hasattr(
+ tests.ssl_context(), "minimum_version"
)
-def test_set_min_tls_version():
- # Test setting minimum TLS version
- # We expect failure on Python < 3.7 or OpenSSL < 1.1
- expect_success = hasattr(ssl.SSLContext(), 'minimum_version')
- try:
- http = httplib2.Http(tls_minimum_version="TLSv1_2")
- http.request(tests.DUMMY_HTTPS_URL)
- except RuntimeError:
- assert not expect_success
- except socket.error:
- assert expect_success
[email protected](
- not hasattr(tests.ssl_context(), "maximum_version"),
- reason="ssl doesn't support TLS min/max",
-)
-def test_set_max_tls_version():
- # Test setting maximum TLS version
- # We expect RuntimeError on Python < 3.7 or OpenSSL < 1.1
- # We expect socket error otherwise
- expect_success = hasattr(ssl.SSLContext(), 'maximum_version')
[email protected](not ssl_context_accept_version, reason="ssl doesn't
support TLS min/max")
[email protected]("attr", ("maximum_version", "minimum_version"))
[email protected]("version", (None, "TLSv1_2", ssl.TLSVersion.TLSv1_2)
if ssl_context_accept_version else (None,))
+def test_set_tls_version(attr, version):
+ # We expect failure on Python < 3.7 or OpenSSL < 1.1
+ expect_success = hasattr(ssl.SSLContext(), attr)
+ kwargs = {"tls_" + attr: version}
+ http = httplib2.Http(**kwargs)
try:
- http = httplib2.Http(tls_maximum_version="TLSv1_2")
http.request(tests.DUMMY_HTTPS_URL)
except RuntimeError:
assert not expect_success