[Python-checkins] cpython: use the HTTPS for pypi upload
benjamin.peterson
python-checkins at python.org
Mon Mar 18 23:22:56 CET 2013
http://hg.python.org/cpython/rev/f86d46a580d8
changeset: 82739:f86d46a580d8
user: Benjamin Peterson <benjamin at python.org>
date: Mon Mar 18 15:20:56 2013 -0700
summary:
use the HTTPS for pypi upload
files:
Lib/distutils/config.py | 11 ++++++++++-
Lib/distutils/tests/test_config.py | 4 ++--
Lib/distutils/tests/test_upload.py | 8 ++++----
Misc/NEWS | 2 ++
4 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/Lib/distutils/config.py b/Lib/distutils/config.py
--- a/Lib/distutils/config.py
+++ b/Lib/distutils/config.py
@@ -21,7 +21,7 @@
class PyPIRCCommand(Command):
"""Base command that knows how to handle the .pypirc file
"""
- DEFAULT_REPOSITORY = 'http://pypi.python.org/pypi'
+ DEFAULT_REPOSITORY = 'https://pypi.python.org/pypi'
DEFAULT_REALM = 'pypi'
repository = None
realm = None
@@ -83,6 +83,15 @@
current[key] = config.get(server, key)
else:
current[key] = default
+
+ # work around people having "repository" for the "pypi"
+ # section of their config set to the HTTP (rather than
+ # HTTPS) URL
+ if (server == 'pypi' and
+ repository in (self.DEFAULT_REPOSITORY, 'pypi')):
+ current['repository'] = self.DEFAULT_REPOSITORY
+ return current
+
if (current['server'] == repository or
current['repository'] == repository):
return current
diff --git a/Lib/distutils/tests/test_config.py b/Lib/distutils/tests/test_config.py
--- a/Lib/distutils/tests/test_config.py
+++ b/Lib/distutils/tests/test_config.py
@@ -87,7 +87,7 @@
config = list(sorted(config.items()))
waited = [('password', 'secret'), ('realm', 'pypi'),
- ('repository', 'http://pypi.python.org/pypi'),
+ ('repository', 'https://pypi.python.org/pypi'),
('server', 'server1'), ('username', 'me')]
self.assertEqual(config, waited)
@@ -96,7 +96,7 @@
config = cmd._read_pypirc()
config = list(sorted(config.items()))
waited = [('password', 'secret'), ('realm', 'pypi'),
- ('repository', 'http://pypi.python.org/pypi'),
+ ('repository', 'https://pypi.python.org/pypi'),
('server', 'server-login'), ('username', 'tarek')]
self.assertEqual(config, waited)
diff --git a/Lib/distutils/tests/test_upload.py b/Lib/distutils/tests/test_upload.py
--- a/Lib/distutils/tests/test_upload.py
+++ b/Lib/distutils/tests/test_upload.py
@@ -72,11 +72,11 @@
def setUp(self):
super(uploadTestCase, self).setUp()
- self.old_class = httpclient.HTTPConnection
- self.conn = httpclient.HTTPConnection = FakeConnection()
+ self.old_class = httpclient.HTTPSConnection
+ self.conn = httpclient.HTTPSConnection = FakeConnection()
def tearDown(self):
- httpclient.HTTPConnection = self.old_class
+ httpclient.HTTPSConnection = self.old_class
super(uploadTestCase, self).tearDown()
def test_finalize_options(self):
@@ -88,7 +88,7 @@
cmd.finalize_options()
for attr, waited in (('username', 'me'), ('password', 'secret'),
('realm', 'pypi'),
- ('repository', 'http://pypi.python.org/pypi')):
+ ('repository', 'https://pypi.python.org/pypi')):
self.assertEqual(getattr(cmd, attr), waited)
def test_saved_password(self):
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,8 @@
Core and Builtins
-----------------
+- Use the HTTPS PyPI url for upload, overriding any plain HTTP URL in pypirc.
+
- Issue #16795: On the ast.arguments object, unify vararg with varargannotation
and kwarg and kwargannotation. Change the column offset of ast.Attribute to be
at the attribute name.
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list