python-language-server
python-language-server copied to clipboard
Wrong pylint version in python-language-server[all]
Hello! There is a bug related to all extras declaration at setup.py, line 61. There is an if that decides pylint version; that if doesn't work with universal wheels that you currently produce. The problem with the if is that it doesn't work with wheels, it only works with source distributions (sdist, .tar.gz). It's because pip doesn't run setup.py when installing, it only uses setup.py when building wheel on the developer's host. Hence the version of pylint depends on the version of Python used to build the wheel.
I see 4 ways of fixing it.
- Remove the
ifaltogether, allowpipto choose a version ofpylint. - Do not publish wheels, only produce source distributions.
- Produce 2 different non-universal wheels for Python 2 and 3 separately.
- Make the version declarative. The syntax for it is a bit strange; see https://stackoverflow.com/a/32955538/7976758 and examples in SQLObject's
setup.py.
PS. See the bug at wok and my suggested workaround at https://stackoverflow.com/q/66195760/7976758 .
Thanks for filing this report @phdru - it's affecting me as well.