2015-01-19 19:08:07 |
Stratos Moros |
bug |
|
|
added bug |
2015-01-20 14:21:19 |
Diogo Matsubara |
nominated for series |
|
Ubuntu Trusty |
|
2015-01-20 14:21:38 |
Robie Basak |
bug task added |
|
python-urllib3 (Ubuntu Trusty) |
|
2015-01-20 14:22:10 |
Diogo Matsubara |
python-urllib3 (Ubuntu): status |
New |
Fix Released |
|
2015-01-20 14:22:42 |
Diogo Matsubara |
python-urllib3 (Ubuntu Trusty): status |
New |
Triaged |
|
2015-01-26 21:11:56 |
Robie Basak |
python-urllib3 (Ubuntu Trusty): assignee |
|
Diogo Matsubara (matsubara) |
|
2015-01-27 11:10:07 |
Diogo Matsubara |
description |
Ubuntu version: Ubuntu 14.04.1 LTS
python-urllib3 version: 1.7.1-1build1
Steps to reproduce:
1. set up an http proxy
2. configure a ProxyManager to use said http proxy
3. make successive GET requests to https://pypi.python.org/
example script: https://gist.github.com/stratoukos/7545c5c909fa9b5d1cfb
What happens:
urllib3 stops using the http proxy after the connection is dropped (after 24 requests in my testing with pypi. other people have seen different numbers)
What I expected to happen:
urllib3 should always use the proxy
Other Info:
This has been fixed in commit 1c30a1f3 of urllib3 and included in its 1.8.3 release. This bug also affects pip and requests as reported here: https://github.com/pypa/pip/issues/1805
I really hope the bugfix will be backported, since pip is currently unusable behind an outgoing firewall on 14.04 |
Ubuntu version: Ubuntu 14.04.1 LTS
python-urllib3 version: 1.7.1-1build1
Steps to reproduce:
1. set up an http proxy
2. configure a ProxyManager to use said http proxy
3. make successive GET requests to https://pypi.python.org/
example script: https://gist.github.com/stratoukos/7545c5c909fa9b5d1cfb
What happens:
urllib3 stops using the http proxy after the connection is dropped (after 24 requests in my testing with pypi. other people have seen different numbers)
What I expected to happen:
urllib3 should always use the proxy
Other Info:
This has been fixed in commit 1c30a1f3 of urllib3 and included in its 1.8.3 release. This bug also affects pip and requests as reported here: https://github.com/pypa/pip/issues/1805
I really hope the bugfix will be backported, since pip is currently unusable behind an outgoing firewall on 14.04
[Impact]
urllib3 stops using the proxy after a connection is dropped making users of
python-urllib3 (such as pip) that are behind a firewall unable to connect to external sites.
[Test Case]
1. Start a trusty VM
2. Get the test script ($ wget https://gist.githubusercontent.com/stratoukos/7545c5c909fa9b5d1cfb/raw/456381dff95d503818d35c393e71ec0272ab08d3/gistfile1.py -O test.py)
3. Install Squid ($ apt-get install squid)
4. Install python-urllib3 if it's not installed ($ apt-get install python-urllib3)
5. Block outgoing connections (
$ sudo iptables -A OUTPUT -m owner --uid-owner root -j ACCEPT
$ sudo iptables -A OUTPUT -m owner --uid-owner proxy -j ACCEPT
$ sudo iptables -A OUTPUT -p tcp --dport 80 -j DROP
$ sudo iptables -A OUTPUT -p tcp --dport 443 -j DROP
)
6. Run the test script ($ python test.py)
7. In another terminal, tail the squid log ($ sudo tailf /var/log/squid3/access.log)
With python-urllib3 1.7.1-1build1, one would see a connection timeout after 24
or so requests, while with the backported package, one sees hits in the proxy
log meaning the requests are going through the proxy after a reconnect.
[Regression Potential]
The fix was released on 1.8.3 and the current upstream code is on 1.9.1 so the
potential for the upstream fix code to be wrong is minimal. That said, the
current upstream code moved some modules around and the backport is an attempt
to recreate the intent of the patch in the old codebase available on Trusty
making the mininmal amount of changes necessary to get things working. |
|
2015-01-28 16:04:19 |
Diogo Matsubara |
bug task added |
|
python-virtualenv (Ubuntu) |
|
2015-01-28 16:04:40 |
Diogo Matsubara |
python-virtualenv (Ubuntu Trusty): status |
New |
Triaged |
|
2015-01-28 16:16:40 |
Robie Basak |
python-urllib3 (Ubuntu Trusty): status |
Triaged |
In Progress |
|
2015-01-28 16:30:32 |
Diogo Matsubara |
branch linked |
|
lp:~matsubara/ubuntu/trusty/python-urllib3/bug-1412545 |
|
2015-01-28 22:21:58 |
Brian Murray |
python-urllib3 (Ubuntu Trusty): status |
In Progress |
Fix Committed |
|
2015-01-28 22:22:01 |
Brian Murray |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2015-01-28 22:22:05 |
Brian Murray |
bug |
|
|
added subscriber SRU Verification |
2015-01-28 22:22:09 |
Brian Murray |
tags |
|
verification-needed |
|
2015-01-28 22:33:05 |
Launchpad Janitor |
branch linked |
|
lp:ubuntu/trusty-proposed/python-urllib3 |
|
2015-01-29 17:58:27 |
Diogo Matsubara |
bug |
|
|
added subscriber Diogo Matsubara |
2015-02-02 13:21:06 |
Stratos Moros |
tags |
verification-needed |
verification-done |
|
2015-02-09 04:18:10 |
Launchpad Janitor |
python-urllib3 (Ubuntu Trusty): status |
Fix Committed |
Fix Released |
|
2015-02-09 04:18:15 |
Adam Conrad |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2021-01-21 00:20:32 |
Stefano Rivera |
python-virtualenv (Ubuntu): status |
New |
Invalid |
|
2021-01-21 00:20:36 |
Stefano Rivera |
python-virtualenv (Ubuntu Trusty): status |
Triaged |
Invalid |
|