Thanks for the report, Tommy. I think the configparser exception is pretty descriptive here. You had a .pypirc file like the following: [distutils] index-servers = pypi global [pypi] username:spam password:eggs You passed -r global and you got: Traceback (most recent call last): ... ConfigParser.NoSectionError: No section: 'global' Which says you don't have a section named 'global' in your .pypirc. There are three options here: a) do nothing b) catch configparser.NoSectionError and raise a distutils exception with better wording. Since we don't have DistutilsConfigError, I'm not sure which one is more appropriate here. c) ignore configparser.NoSectionError if server name cannot be found in sections in PyPIRCCommand._read_pypirc(). IMO this is the worst option. Here is a test case to demonstrate the problem described at the SO question.
Hi, I think option B might be best, because the issue was that I didn't know at first that the problem was in my .pypirc. I think this stack trace is not the most elegant way for the user to figure that out. Maybe catching this and then presenting a human readable error to the user would be better.
Distutils is now deprecated (see PEP 632) and all tagged issues are being closed. From now until removal, only release blocking issues will be considered for distutils. If this issue does not relate to distutils, please remove the component and reopen it. If you believe it still requires a fix, most likely the issue should be re-reported at https://github.com/pypa/setuptools
History
Date
User
Action
Args
2022-04-11 14:58:44
admin
set
github: 74081
2021-02-03 18:21:24
steve.dower
set
status: open -> closednosy: + steve.dowermessages: + resolution: out of datestage: resolved