commit:     5886a89e573db397562eabee052d0fce0312da80
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Wed Nov  2 13:00:44 2022 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Wed Nov  2 13:01:29 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5886a89e

dev-python/python-lsp-server: unpin all dependencies

Tested, works just fine with newer versions of all the things

Closes: https://bugs.gentoo.org/878659
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 ...ython-lsp-server-1.5.0-unpin-all-the-deps.patch | 42 ++++++++++
 .../python-lsp-server-1.5.0-r1.ebuild              | 91 ++++++++++++++++++++++
 2 files changed, 133 insertions(+)

diff --git 
a/dev-python/python-lsp-server/files/python-lsp-server-1.5.0-unpin-all-the-deps.patch
 
b/dev-python/python-lsp-server/files/python-lsp-server-1.5.0-unpin-all-the-deps.patch
new file mode 100644
index 000000000000..b8b3eb10f9f2
--- /dev/null
+++ 
b/dev-python/python-lsp-server/files/python-lsp-server-1.5.0-unpin-all-the-deps.patch
@@ -0,0 +1,42 @@
+diff --git a/pyproject.toml b/pyproject.toml
+index ff60a18..0c756ff 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -26,26 +26,26 @@ Homepage = 
"https://github.com/python-lsp/python-lsp-server";
+ 
+ [project.optional-dependencies]
+ all = [
+-    "autopep8>=1.6.0,<1.7.0",
+-    "flake8>=4.0.0,<4.1.0",
+-    "mccabe>=0.6.0,<0.7.0",
+-    "pycodestyle>=2.8.0,<2.9.0",
++    "autopep8>=1.6.0",
++    "flake8>=4.0.0",
++    "mccabe>=0.6.0",
++    "pycodestyle>=2.8.0",
+     "pydocstyle>=2.0.0",
+-    "pyflakes>=2.4.0,<2.5.0",
++    "pyflakes>=2.4.0",
+     "pylint>=2.5.0",
+     "rope>=0.10.5",
+     "yapf",
+     "whatthepatch"
+ ]
+-autopep8 = ["autopep8>=1.6.0,<1.7.0"]
+-flake8 = ["flake8>=4.0.0,<4.1.0"]
+-mccabe = ["mccabe>=0.6.0,<0.7.0"]
+-pycodestyle = ["pycodestyle>=2.8.0,<2.9.0"]
++autopep8 = ["autopep8>=1.6.0"]
++flake8 = ["flake8>=4.0.0"]
++mccabe = ["mccabe>=0.6.0"]
++pycodestyle = ["pycodestyle>=2.8.0"]
+ pydocstyle = ["pydocstyle>=2.0.0"]
+-pyflakes = ["pyflakes>=2.4.0,<2.5.0"]
++pyflakes = ["pyflakes>=2.4.0"]
+ pylint = ["pylint>=2.5.0"]
+ rope = ["rope>0.10.5"]
+-yapf = ["yapf", "whatthepatch>=1.0.2,<2.0.0"]
++yapf = ["yapf", "whatthepatch>=1.0.2"]
+ websockets = ["websockets>=10.3"]
+ test = [
+     "pylint>=2.5.0",

diff --git a/dev-python/python-lsp-server/python-lsp-server-1.5.0-r1.ebuild 
b/dev-python/python-lsp-server/python-lsp-server-1.5.0-r1.ebuild
new file mode 100644
index 000000000000..ba5da2428f9b
--- /dev/null
+++ b/dev-python/python-lsp-server/python-lsp-server-1.5.0-r1.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Python Language Server for the Language Server Protocol"
+HOMEPAGE="https://github.com/python-lsp/python-lsp-server";
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+IUSE="all-plugins"
+
+BDEPEND="
+       test? (
+               >=dev-python/autopep8-1.6.0[${PYTHON_USEDEP}]
+               dev-python/flaky[${PYTHON_USEDEP}]
+               >=dev-python/flake8-4.0.0[${PYTHON_USEDEP}]
+               dev-python/matplotlib[${PYTHON_USEDEP}]
+               >=dev-python/mccabe-0.6.0[${PYTHON_USEDEP}]
+               <dev-python/numpy-1.23.0[${PYTHON_USEDEP}]
+               dev-python/pandas[${PYTHON_USEDEP}]
+               >=dev-python/pycodestyle-2.8.0[${PYTHON_USEDEP}]
+               >=dev-python/pydocstyle-2.0.0[${PYTHON_USEDEP}]
+               >=dev-python/pyflakes-2.4.0[${PYTHON_USEDEP}]
+               >=dev-python/pylint-2.5.0[${PYTHON_USEDEP}]
+               dev-python/QtPy[gui,testlib,${PYTHON_USEDEP}]
+               >=dev-python/rope-0.10.5[${PYTHON_USEDEP}]
+               dev-python/yapf[${PYTHON_USEDEP}]
+               >=dev-python/whatthepatch-1.0.2[${PYTHON_USEDEP}]
+       )
+"
+
+RDEPEND="
+       >=dev-python/jedi-0.17.2[${PYTHON_USEDEP}]
+       >=dev-python/python-lsp-jsonrpc-1.0.0[${PYTHON_USEDEP}]
+       dev-python/pluggy[${PYTHON_USEDEP}]
+       all-plugins? (
+               >=dev-python/autopep8-1.6.0[${PYTHON_USEDEP}]
+               >=dev-python/flake8-4.0.0[${PYTHON_USEDEP}]
+               >=dev-python/mccabe-0.6.0[${PYTHON_USEDEP}]
+               >=dev-python/pycodestyle-2.8.0[${PYTHON_USEDEP}]
+               >=dev-python/pydocstyle-2.0.0[${PYTHON_USEDEP}]
+               >=dev-python/pyflakes-2.4.0[${PYTHON_USEDEP}]
+               >=dev-python/pylint-2.5.0[${PYTHON_USEDEP}]
+               >=dev-python/rope-0.10.5[${PYTHON_USEDEP}]
+               dev-python/yapf[${PYTHON_USEDEP}]
+               >=dev-python/whatthepatch-1.0.2[${PYTHON_USEDEP}]
+       )
+"
+
+# Upstream is overly cautious, insists on pinning
+# dependencies to versions required by other dependencies.
+# i.e. pin to <dev-python/pycodestyle-2.9.0 because
+# dev-python/autopep8-1.6.0 requires that version.
+# This causes way more problems then it solves.
+PATCHES=(
+       "${FILESDIR}/${P}-unpin-all-the-deps.patch"
+)
+
+EPYTEST_DESELECT=(
+       # This fails because the error output has changed slightly
+       "test/plugins/test_pylint_lint.py::test_syntax_error_pylint_py3"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+       # remove pytest-cov dep
+       sed -i -e '/addopts =/d' pyproject.toml || die
+       distutils-r1_python_prepare_all
+}
+
+pkg_postinst() {
+       optfeature "Automatically format Python code to conform to the PEP 8 
style guide" dev-python/autopep8
+       optfeature "A wrapper around PyFlakes, pep8 & mccabe" dev-python/flake8
+       optfeature "flake8 plugin: McCabe complexity checker" dev-python/mccabe
+       optfeature "Python style guide checker (fka pep8)" 
dev-python/pycodestyle
+       optfeature "Python docstring style checker" dev-python/pydocstyle
+       optfeature "Passive checker for Python programs" dev-python/pyflakes
+       optfeature "Python code static checker" dev-python/pylint
+       optfeature "Python refactoring library" dev-python/rope
+       optfeature "A formatter for Python files" dev-python/yapf
+}

Reply via email to