From fbcbb51009bc76df9f2c66547439474799b9ab15 Mon Sep 17 00:00:00 2001 From: "Jason R. Coombs" Date: Mon, 14 Dec 2015 05:38:30 -0500 Subject: Use RawConfigParser instead of SafeConfigParser in PyPIConfig class. Interpolated values are no longer supported. Since backward compatibility could not be retained in either case, prefer the simpler, more direct format. Ref #442. --- CHANGES.txt | 5 ++--- setuptools/package_index.py | 4 ++-- setuptools/tests/test_packageindex.py | 2 +- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 1396d5fe..355c7550 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -7,9 +7,8 @@ CHANGES 19.0 ---- -* Issue #442: Use SafeConfigParser for parsing .pypirc file. Now - fields containing the percent symbol (%) must have each percent - replaced with two percent symbols (%%). +* Issue #442: Use RawConfigParser for parsing .pypirc file. + Interpolated values are no longer honored in .pypirc files. ------ 18.8.1 diff --git a/setuptools/package_index.py b/setuptools/package_index.py index 322f9a61..2c565e88 100755 --- a/setuptools/package_index.py +++ b/setuptools/package_index.py @@ -945,14 +945,14 @@ class Credential(object): def __str__(self): return '%(username)s:%(password)s' % vars(self) -class PyPIConfig(configparser.SafeConfigParser): +class PyPIConfig(configparser.RawConfigParser): def __init__(self): """ Load from ~/.pypirc """ defaults = dict.fromkeys(['username', 'password', 'repository'], '') - configparser.SafeConfigParser.__init__(self, defaults) + configparser.RawConfigParser.__init__(self, defaults) rc = os.path.join(os.path.expanduser('~'), '.pypirc') if os.path.exists(rc): diff --git a/setuptools/tests/test_packageindex.py b/setuptools/tests/test_packageindex.py index a3e45adc..746860d5 100644 --- a/setuptools/tests/test_packageindex.py +++ b/setuptools/tests/test_packageindex.py @@ -216,7 +216,7 @@ class TestPyPIConfig: [pypi] repository=https://pypi.python.org username=jaraco - password=pity%% + password=pity% """)) cfg = setuptools.package_index.PyPIConfig() cred = cfg.creds_by_repository['https://pypi.python.org'] -- cgit v1.2.3