Apply changes from Debian

Change-Id: I795789b37ab9a6f31603ce599688aa07ac0825b9
This commit is contained in:
Thomas Goirand 2016-10-07 09:29:28 +02:00
parent f988733c6f
commit 75576d2f1e
8 changed files with 114 additions and 86 deletions

39
debian/changelog vendored
View File

@ -1,20 +1,41 @@
python-eventlet (0.19.0-2) unstable; urgency=medium
[ Ondřej Nový ]
* d/{control,copyright}: Use my @debian.org email address
python-eventlet (0.19.0-3) unstable; urgency=medium
[ Thomas Goirand ]
* Uploading to unstable.
* Add allow-more-busy-cpu.patch, as tests are failing in Jenkins.
* Using pkgos-dh_auto_install from openstack-pkg-tools (>= 52~).
* Correctly tests with nose & Py3.
* Remove tests expecting timeout on 192.0.2.1.
[ Ondřej Nový ]
* d/s/options: extend-diff-ignore of .gitreview
* d/control: Using OpenStack's Gerrit as VCS URLs.
-- Thomas Goirand <zigo@debian.org> Tue, 19 Jul 2016 15:50:13 +0200
-- Thomas Goirand <zigo@debian.org> Fri, 07 Oct 2016 09:27:11 +0200
python-eventlet (0.19.0-2) experimental; urgency=medium
[ Ondřej Nový ]
* d/{control,copyright}: Use my @debian.org email address
* d/p/use-packaged-python-mock-rather-than-embedded.patch:
Rebased and fixed for new release
* Dropped
- d/p/enforce-tlsv1-always.patch
- d/p/set-defaults-to-be-tlsv1-not-sslv23.patch
This patches was setting TLSv1 protocol as only allowed and don't
allowed TLS 1.1 + 1.2. Eventlet wrapper should not change SSL settings,
users should use ssl.create_default_context for better/safe defaults.
* Dropped d/p/use-packaged-python-mock-rather-than-embedded.patch
- Upstream is using own version of mock and don't want to use mock as deps
(https://github.com/eventlet/eventlet/pull/337)
* Require build depends packages version at least upstream is testing in CI
* Added upstream patch d/p/greendns_tests_fix.patch which fix building on
Python 3.5
[ Thomas Goirand ]
* Add allow-more-busy-cpu.patch, as tests are failing in Jenkins.
* Using pkgos-dh_auto_install from openstack-pkg-tools (>= 52~).
* Correctly tests with nose & Py3.
* Remove tests expecting timeout on 192.0.2.1.
-- Ondřej Nový <onovy@debian.org> Fri, 12 Aug 2016 11:13:34 +0200
python-eventlet (0.19.0-1) experimental; urgency=medium

14
debian/control vendored
View File

@ -14,21 +14,19 @@ Build-Depends: debhelper (>= 9),
python-sphinx,
python3-all,
python3-setuptools,
Build-Depends-Indep: python-dnspython,
Build-Depends-Indep: python-dnspython (>= 1.14.0),
python-greenlet,
python-httplib2,
python-mock,
python-nose,
python-openssl,
python-openssl (>= 16.0.0),
python-subprocess32,
python-zmq,
python3-dnspython,
python-zmq (>= 13.1.0),
python3-dnspython (>= 1.14.0),
python3-greenlet,
python3-httplib2,
python3-mock,
python3-nose,
python3-openssl,
python3-zmq,
python3-openssl (>= 16.0.0),
python3-zmq (>= 13.1.0),
Standards-Version: 3.9.8
Vcs-Browser: https://git.openstack.org/cgit/openstack/deb-python-eventlet
Vcs-Git: https://git.openstack.org/openstack/deb-python-eventlet -b debian/newton

2
debian/copyright vendored
View File

@ -76,8 +76,6 @@ License: ccp-bsd
Files: tests/mock.py
Copyright: 2007-2009, Michael Foord
Comment: Deleted during build, and Debian's python-mock package is used
instead.
License: voidspace-bsd
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

View File

@ -1,18 +0,0 @@
Description: Always enforce TLSv1
Upstream allows SSLv23, but we don't want this, we want TLSv1 always, as
we shouldn't trust lower types of crypto.
Author: Thomas Goirand <zigo@debian.org>
Forwarded: not-needed
Last-Update: 2015-05-21
--- python-eventlet-0.17.3.orig/eventlet/convenience.py
+++ python-eventlet-0.17.3/eventlet/convenience.py
@@ -139,7 +139,7 @@ except ImportError:
do_handshake_on_connect=True,
suppress_ragged_eofs=True, ciphers=None):
# theoretically the ssl_version could be respected in this line
- context = SSL.Context(SSL.SSLv23_METHOD)
+ context = SSL.Context(SSL.TLSv1_METHOD)
if certfile is not None:
context.use_certificate_file(certfile)
if keyfile is not None:

77
debian/patches/greendns_tests_fix.patch vendored Normal file
View File

@ -0,0 +1,77 @@
From e3e6789a40191613e48561fe10948e74240ab04a Mon Sep 17 00:00:00 2001
From: Jakub Stasiak <jakub.stasiak@smarkets.com>
Date: Wed, 18 May 2016 14:13:09 +0200
Subject: [PATCH] greendns tests: Work around patcher/green package weirdness
The issue can be demonstrated by running the following piece of code:
# t.py
from __future__ import print_function
from eventlet.support import greendns
import sys
if sys.argv[1] == 'yes':
import dns.resolver
print(sys.argv[1], issubclass(greendns.HostsAnswer, greendns.dns.resolver.Answer))
The results:
# Python 2.7.11
% python t.py yes
yes False
% python t.py no
no True
# Python 3.5.1
% python t.py yes
yes False
% python t.py no
no True
Interestingly enough this particular test issue was only affecting Python
3.5+ before 861d684. Why?
* This issue appears to be caused by importing green version of a package
being followed by importing a non-green version of the same package
* When we run tests using nose it first imports the main tests module
(tests/__init__.py) which imports eventlet, that imports
eventlet.convenience and that then imports eventlet.green.sockt.
* Before 861d684 on Python < 3.5 the eventlet.green.socket import mentioned
above would fail to import greendns (because of an import cycle) so when
running those tests greendns was only being correctly imported *after* the
regular dns
* Since 861d684 (or on Python 3.5+) the green socket module correctly
imports greendns which means that when the regular dns subpackages are
being imported in this test file greendns is already imported and the
patching issue demonstrated by the code above is in effect
The patching/greening weirdness is reported[1] now.
Fixes https://github.com/eventlet/eventlet/issues/267
This patch is contributed by Smarkets Limited.
[1] https://github.com/eventlet/eventlet/issues/316
---
tests/greendns_test.py | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
--- a/tests/greendns_test.py
+++ b/tests/greendns_test.py
@@ -9,13 +9,8 @@
import tests
from tests import mock
try:
- import dns.rdatatype
- import dns.rdtypes.IN.A
- import dns.rdtypes.IN.AAAA
- import dns.resolver
- import dns.reversename
- import dns.rrset
from eventlet.support import greendns
+ from eventlet.support.greendns import dns
greendns_available = True
except ImportError:
greendns_available = False

View File

@ -1,8 +1,6 @@
remove-self.assert-in-tests.patcher_test.py.patch
fix-FTBFS-on-sphinx-build.patch
use-packaged-python-mock-rather-than-embedded.patch
enforce-tlsv1-always.patch
set-defaults-to-be-tlsv1-not-sslv23.patch
fixed-privacy-breach-in-examples.patch
allow-more-busy-cpu.patch
remove-networking-tests.patch
greendns_tests_fix.patch

View File

@ -1,17 +0,0 @@
Description: Do not use SSLv23 by default, but TLSv1
Default protocol should really be TLSv1 and not SSLv23.
Author: Thomas Goirand <zigo@debian.org>
Forwarded: no
Last-Update: 2015-05-21
--- a/eventlet/green/ssl.py
+++ b/eventlet/green/ssl.py
@@ -49,7 +49,7 @@
def __init__(self, sock, keyfile=None, certfile=None,
server_side=False, cert_reqs=CERT_NONE,
- ssl_version=PROTOCOL_SSLv23, ca_certs=None,
+ ssl_version=PROTOCOL_TLSv1, ca_certs=None,
do_handshake_on_connect=True, *args, **kw):
if not isinstance(sock, GreenSocket):
sock = GreenSocket(sock)

View File

@ -1,29 +0,0 @@
Description: Use the packaged python-mock package
Upstream is "vendorizing" mock. This sux...
Author: Thomas Goirand <zigo@debian.org>
Forwarded: no
Last-Update: 2015-02-08
--- a/tests/db_pool_test.py
+++ b/tests/db_pool_test.py
@@ -7,7 +7,8 @@
import traceback
from unittest import TestCase, main
-from tests import mock, skip_unless, skip_with_pyevent, get_database_auth
+import mock
+from tests import skip_unless, skip_with_pyevent, get_database_auth
from eventlet import event
from eventlet import db_pool
from eventlet.support import six
--- a/tests/websocket_test.py
+++ b/tests/websocket_test.py
@@ -9,7 +9,7 @@
from eventlet.websocket import WebSocket, WebSocketWSGI
import tests
-from tests import mock
+import mock
import tests.wsgi_test