I followed the guide How to submit a package to PyPI to submit one package. It throwed the error below:
Traceback (most recent call last):
File "setup.py", line 27, in
'Programming Language :: Python',
File "/usr/lib64/python2.6/distutils/core.py", line 152, in setup
dist.run_commands()
File "/usr/lib64/python2.6/distutils/dist.py", line 975, in run_commands
self.run_command(cmd)
File "/usr/lib64/python2.6/distutils/dist.py", line 995, in run_command
cmd_obj.run()
File "/usr/lib/python2.6/site-packages/setuptools/command/register.py", line 9, in run
_register.run(self)
File "/usr/lib64/python2.6/distutils/command/register.py", line 33, in run
self._set_config()
File "/usr/lib64/python2.6/distutils/command/register.py", line 84, in _set_config
raise ValueError('%s not found in .pypirc' % self.repository)
ValueError: PyPI-test not found in .pypirc
My .pypirc file context is:
[distutils] # this tells distutils what package indexes you can push to
index-servers =
PyPI # the live PyPI
PyPI-test # test PyPI
[PyPI] # authentication details for live PyPI
repository: https://PyPI.python.org/PyPI
username: {{username}}
password: {{password}}
[PyPI-test] # authentication details for test PyPI
repository: https://testPyPI.python.org/PyPI
username: {{username}}
My OS env is
CentOS release 6.2 (Final) and python env is Python 2.6.6.
What's the reason and how to fix it?
A . pypirc file allows you to define the configuration for package indexes (referred to here as “repositories”), so that you don't have to enter the URL, username, or password whenever you upload a package with twine or flit.
Some pitfalls to avoid in order to make this work:
The .pypirc file is expected inside the HOME directory. This is true for Windows and Unix.
If it's not working, it's because the .pypirc file is not found at the path indicated by the HOME variable.
On Windows, to know what your path is:
With PowerShell (if you are using pew to manage virtualenv for instance), echo $HOME.
With default Windows console, echo %HOMEPATH% (yes, talk about "portability")
Then place the .pypirc file right at that path.
As for the file, don't forget the distutil part, otherwise it won't work. Your file should be EXACTLY like that:
[distutils]
index-servers =
pypi
pypitest
[pypitest]
repository = https://testpypi.python.org/pypi
username = <your user name goes here>
password = <your password goes here>
[pypi]
repository = https://pypi.python.org/pypi
username = <your user name goes here>
password = <your password goes here>
My intuition tells me to not customize the pypi repository name, not sure it works otherwise.
Then, when you run the command, simple provide the -r (repository) flag with pypitest
python setup.py register -r pypitest
And that should do the trick.
Make sure your .pypirc file is in your /home directory.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With