UnicodeDecodeError when installing 1.4.3 from PyPI on CentOS 7.9 with py3.6.8
$ python3 -V
Python 3.6.8
$ python3 -m pip -V
pip 21.3.1 from /usr/share/tomcat/.local/lib/python3.6/site-packages/pip (python 3.6)
$ python3 -m pip list | grep setuptools
setuptools 59.6.0
$ python3 -m pip install mercurial_keyring --user -U
Collecting mercurial_keyring
Using cached mercurial_keyring-1.4.3.tar.gz (29 kB)
Preparing metadata (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-5y9inm1e/mercurial-keyring_4eb665955d8447419969a58edd77c583/setup.py'"'"'; __file__='"'"'/tmp/pip-install-5y9inm1e/mercurial-keyring_4eb665955d8447419969a58edd77c583/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-jfqcos46
cwd: /tmp/pip-install-5y9inm1e/mercurial-keyring_4eb665955d8447419969a58edd77c583/
Complete output (7 lines):
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-5y9inm1e/mercurial-keyring_4eb665955d8447419969a58edd77c583/setup.py", line 6, in <module>
LONG_DESCRIPTION = open("README.rst").read()
File "/usr/lib64/python3.6/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 2574: ordinal not in range(128)
----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/79/f1/aa99599dd61f2379a70df1f855ce03db7af74c54b8e9bacd0d2ba283008a/mercurial_keyring-1.4.3.tar.gz#sha256=deb5cdfe81f660099efafb0802e194c8ec52f54802b53a812c3565dbce5c83c7 (from https://pypi.org/simple/mercurial-keyring/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
Downloading mercurial_keyring-1.4.2.tar.gz (29 kB)
Preparing metadata (setup.py) ... error
ERROR: Command errored out with exit status 1:
....
... and it loops discarding the current version, and trying N-1, N-2, ...
I know I've installed from PyPI on other platforms, and I think even other Linux systems with py3.7 or later, so maybe it's a 3.6 issue. But it might be easier to just keep the readme ASCII.