[PATCH] Update python-lsp-server

  • Open
  • quality assurance status badge
Details
3 participants
  • jgart
  • Jonathan Pieper
  • Nicolas Graves
Owner
unassigned
Submitted by
Jonathan Pieper
Severity
normal
J
J
Jonathan Pieper wrote on 15 Apr 19:34 +0200
(address . guix-patches@gnu.org)
87sezmsf33.fsf@mailbox.org
Hi!

This patch series updates the python-lsp-server to 1.11.0.
The packages python-rope, python-snowballstemmer, python-lsp-jsonrpc and python-pydocstyle have been updated and python-docstring-to-markdown and python-pytoolconfig were added and they all build reproducible (with --rounds=2 --check).

I have also taken steps to ensure compatibility by rebuild Guix and checking dependent packages using guix refresh --list-dependent the the best extend possible.

It's important to note that there are numerous packages dependent on python-pydocstyle. Some of these packages are currently failing to build on the master branch. Additionally, due to limited resources on my local machine, some packages could not be build (issues included out of memory error and exceeded maximum silent time of 2 hours). However, there is no indication to suggest that the updates to python-pydocstyle are causing any new build failures.

--
Best regards,
Jonathan Pieper
J
J
Jonathan Pieper wrote on 15 Apr 19:45 +0200
[PATCH 1/7] gnu: Add python-docstring-to-markdown.
(address . 70400@debbugs.gnu.org)(name . Jonathan Pieper)(address . jpieper@mailbox.org)
7d0ec10d21258d9f858f9c9fe2cde132d4a06106.1713203110.git.jpieper@mailbox.org
* gnu/packages/python-xyz.scm (python-docstring-to-markdown): New variable.
---
gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 92566abfed..9521119a84 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -1376,6 +1376,25 @@ (define-public python-mkdocs-markdownextradata-plugin
variables into the markdown template")
(license license:expat)))
+(define-public python-docstring-to-markdown
+ (package
+ (name "python-docstring-to-markdown")
+ (version "0.15")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "docstring-to-markdown" version))
+ (sha256
+ (base32 "0gdpabnyl1kyy0cjrnph6xl4fyhgim50a1amsaqq3hahki6i2ip1"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/python-lsp/docstring-to-markdown")
+ (synopsis "On the fly conversion of Python docstrings to markdown")
+ (description
+ "This module can convert Python docstrings to Markdown.
+It can recognise reStructuredText inside docstrings and convert multiple of its
+features to Markdown. It also includes initial support for Google-formatted docstrings.")
+ (license license:lgpl2.1+)))
+
(define-public python-mysql-connector-python
(package
(name "python-mysql-connector-python")

base-commit: 6b3c90f638292f9604a221ac6dbf22234f6e4c4b
--
2.41.0
J
J
Jonathan Pieper wrote on 15 Apr 19:45 +0200
[PATCH 2/7] gnu: Add python-pytoolconfig.
(address . 70400@debbugs.gnu.org)(name . Jonathan Pieper)(address . jpieper@mailbox.org)
06a250000a633c62b5d806c8849b94ed7b84fb3d.1713203110.git.jpieper@mailbox.org
* gnu/packages/python-xyz.scm (python-pytoolconfig): New variable.
---
gnu/packages/python-xyz.scm | 52 +++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)

Toggle diff (65 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 9521119a84..27107c3d8f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -36309,6 +36309,58 @@ (define-public python-zeroc-ice-3.6
(base32
"0mikjfvq26kh8asnn9v55z41pap4c5ypymqnwwi4xkavc3mzyda2"))))))
+(define-public python-pytoolconfig
+ (package
+ (name "python-pytoolconfig")
+ (version "1.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pytoolconfig" version))
+ (sha256
+ (base32 "18isxi4ijarl949d0zmf0b4606r6hihpi3p5yb7763m4c7ra24i5"))))
+ (build-system pyproject-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'update-license
+ (lambda _
+ (substitute* "pyproject.toml"
+ (("license-expression = (\"[^\"]*\")" all license)
+ (string-append "license = {text = " license "}")))))
+ (add-after 'unpack 'remove-mypy
+ (lambda _
+ (substitute* "pyproject.toml"
+ (("^.*mypy.*")
+ "")
+ (("strict = true")
+ ""))))
+ (add-after 'unpack 'use-pdm-backend-instead-of-pep517
+ (lambda _
+ (substitute* "pyproject.toml"
+ (("pdm-pep517")
+ "pdm-backend")
+ (("pdm\\.pep517\\.api")
+ "pdm.backend"))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ ;; Disable failing test.
+ (invoke "python" "-m" "pytest" "-k"
+ "not test_documentation")))))))
+ (native-inputs (list python-pdm-backend
+ python-tomli
+ python-pytest
+ python-docutils
+ python-sphinx
+ python-tabulate))
+ (propagated-inputs (list python-appdirs))
+ (home-page "https://github.com/bagel897/pytoolconfig")
+ (synopsis "Python Tool Configuration")
+ (description
+ "This module manages configuration for python tools,
+such as rope and add support for a pyproject.toml configuration file.")
+ (license license:lgpl3+)))
+
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar
--
2.41.0
J
J
Jonathan Pieper wrote on 15 Apr 19:45 +0200
[PATCH 4/7] gnu: python-snowballstemmer: Update to 2.2.0.
(address . 70400@debbugs.gnu.org)(name . Jonathan Pieper)(address . jpieper@mailbox.org)
c2d0e72ff711f56f6a0c5a13de0de7bc050e34da.1713203110.git.jpieper@mailbox.org
* gnu/packages/python-xyz.scm (python-snowballstemmer): Update to 2.2.0.
---
gnu/packages/python-xyz.scm | 21 +++++++++++----------
1 file changed, 11 insertions(+), 10 deletions(-)

Toggle diff (38 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e0817e4c9d..82833e876b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22562,20 +22562,21 @@ (define-public python-random2
(define-public python-snowballstemmer
(package
(name "python-snowballstemmer")
- (version "2.0.0")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "snowballstemmer" version))
- (sha256
- (base32
- "0ligk61idlz8kkgd5hpip5whm172riwglb6xydii7h62yhysqfyz"))))
+ (version "2.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "snowballstemmer" version))
+ (sha256
+ (base32 "1ccwy75i0f5yi1vy6fyvr1gf43ydhjani45mswm43ls7hpmnvc89"))))
(build-system python-build-system)
(arguments
- `(;; No tests exist
- #:tests? #f))
+ `( ;No tests exist
+ #:tests? #f))
(home-page "https://github.com/shibukawa/snowball_py")
(synopsis "Snowball stemming library collection for Python")
- (description "This package provides 16 word stemmer algorithms generated
+ (description
+ "This package provides 16 word stemmer algorithms generated
from Snowball algorithms. It includes the 15 original ones plus the Poerter
English stemmer.")
(license license:bsd-3)))
--
2.41.0
J
J
Jonathan Pieper wrote on 15 Apr 19:45 +0200
[PATCH 3/7] gnu: python-lsp-jsonrpc: Update to 1.1.2.
(address . 70400@debbugs.gnu.org)(name . Jonathan Pieper)(address . jpieper@mailbox.org)
5563651b86d1e60edc8c173091918d87ba693831.1713203110.git.jpieper@mailbox.org
* gnu/packages/python-xyz.scm (python-lsp-jsonrpc): Update to 1.1.2.
[build-system]: Change to pyproject-build-system.
[arguments]{set-version}: Set version explicitly to pass sanity-check.
[native-inputs]: Add python-pytest-cov.

Change-Id: I3ffaf75ced25bd95d8f7486294364fb52b86b08b
---
gnu/packages/python-xyz.scm | 21 +++++++++++++--------
1 file changed, 13 insertions(+), 8 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 27107c3d8f..e0817e4c9d 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -7559,19 +7559,24 @@ (define-public python-feedgenerator
(define-public python-lsp-jsonrpc
(package
(name "python-lsp-jsonrpc")
- (version "1.0.0")
+ (version "1.1.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-lsp-jsonrpc" version))
(sha256
- (base32
- "1gb0fsamxndhplx25v8m0b3k7aknzy454fpa0qsqsqnv6c3igv3v"))))
- (build-system python-build-system)
- (native-inputs
- (list python-mock python-pytest))
- (propagated-inputs
- (list python-ujson))
+ (base32 "04n95h0cqnsrdyh1gv0abh2i5ynyrq2wfqpppx9djp7mxr9y9226"))))
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'set-version
+ (lambda _
+ (substitute* "pyproject.toml"
+ (("dynamic = \\[\"version\"\\]")
+ (string-append "version = \""
+ ,version "\""))))))))
+ (build-system pyproject-build-system)
+ (native-inputs (list python-mock python-pytest python-pytest-cov))
+ (propagated-inputs (list python-ujson))
(home-page "https://github.com/python-lsp/python-lsp-jsonrpc")
(synopsis "JSON RPC 2.0 server library")
(description
--
2.41.0
J
J
Jonathan Pieper wrote on 15 Apr 19:45 +0200
[PATCH 5/7] gnu: python-pydocstyle: Update to 6.3.0.
(address . 70400@debbugs.gnu.org)(name . Jonathan Pieper)(address . jpieper@mailbox.org)
cc934db396a442b5f86498e85ded4d3ec94d1850.1713203110.git.jpieper@mailbox.org
* gnu/packages/python-xyz.scm (python-pydocstyle): Update to 6.3.0.

Change-Id: I1c2bfcee80cbdac33adaf08968276954d72182dc
---
gnu/packages/python-xyz.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 82833e876b..33410c0a06 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -7852,14 +7852,14 @@ (define-public python-pydoc-markdown
(define-public python-pydocstyle
(package
(name "python-pydocstyle")
- (version "3.0.0")
+ (version "6.3.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pydocstyle" version))
(sha256
(base32
- "1m1xv9clkg9lgzyza6dnj359z04vh5g0h49nhzghv7lg81gchhap"))))
+ "1qa4gqmwgvakdd6j0zw0fvr6ygmpq1ib9h5r9r4hfyy81863zr3w"))))
(build-system python-build-system)
(propagated-inputs
(list python-six python-snowballstemmer))
--
2.41.0
J
J
Jonathan Pieper wrote on 15 Apr 19:45 +0200
[PATCH 6/7] gnu: python-rope: Update to 1.13.0.
(address . 70400@debbugs.gnu.org)(name . Jonathan Pieper)(address . jpieper@mailbox.org)
cda478d3dcc7af02cf45bca45b6211d124b50f2a.1713203110.git.jpieper@mailbox.org
* gnu/packages/python-xyz.scm (python-rope): Update to 1.13.0.
[arguments]{disable-broken-tests}: Disable test_hint_or.
[propagated-inputs]: Add python-pytoolconfig.

Change-Id: I0717c76631ca744a0f601734f707f45fa05b62c2
---
gnu/packages/python-xyz.scm | 34 ++++++++++++++++++----------------
1 file changed, 18 insertions(+), 16 deletions(-)

Toggle diff (56 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 33410c0a06..cead2adb44 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -20057,31 +20057,33 @@ (define-public python-cysignals
(define-public python-rope
(package
(name "python-rope")
- (version "1.1.1")
+ (version "1.13.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "rope" version))
(sha256
- (base32
- "0bkzwkllxxdxd3w70xiy137lqvnlmmaplsc2ya3s23ss4kq8y10k"))))
+ (base32 "1078mkzivz45my8x2y5gxisr0vba630xj7yxx7anr068xhnpshsi"))))
(build-system python-build-system)
(arguments
- (list #:phases
- `(modify-phases %standard-phases
- (add-after 'unpack 'disable-broken-test
- (lambda _
- (substitute* "ropetest/contrib/autoimporttest.py"
- (("def test_search_module")
- "def __notest_search_module")
- (("def test_search_submodule")
- "def __notest_search_submodule")))))))
- (native-inputs
- (list python-pytest-timeout
- python-pytest))
+ (list
+ #:phases `(modify-phases %standard-phases
+ (add-after 'unpack 'disable-broken-test
+ (lambda _
+ (substitute* "ropetest/contrib/autoimporttest.py"
+ (("def test_search_module")
+ "def __notest_search_module")
+ (("def test_search_submodule")
+ "def __notest_search_submodule"))
+ (substitute* "ropetest/type_hinting_test.py"
+ (("def test_hint_or")
+ "def __notest_hint_or")))))))
+ (native-inputs (list python-pytest-timeout python-pytest))
+ (propagated-inputs (list python-pytoolconfig))
(home-page "https://github.com/python-rope/rope")
(synopsis "Refactoring library for Python")
- (description "Rope is a refactoring library for Python. It facilitates
+ (description
+ "Rope is a refactoring library for Python. It facilitates
the renaming, moving and extracting of attributes, functions, modules, fields
and parameters in Python source code. These refactorings can also be applied
to occurrences in strings and comments.")
--
2.41.0
J
J
Jonathan Pieper wrote on 15 Apr 19:45 +0200
[PATCH 7/7] gnu: python-lsp-server: Update to 1.11.0.
(address . 70400@debbugs.gnu.org)(name . Jonathan Pieper)(address . jpieper@mailbox.org)
7084c71bde60c693444abd0631acf1537b5ab86b.1713203110.git.jpieper@mailbox.org
* gnu/packages/python-xyz.scm (python-lsp-server): Update to 1.11.0.
[build-system]: Change to pyproject-build-system.
[arguments]{set-version}: Set version explicitly to pass sanity-check.
{check}: Do not replace it as test_pyqt_completion is no longer failing.
[propagated-inputs]: Remove python-future and add python-docstring-to-markdown.
[native-inputs]: Remove python-mock, python-versioneer and add python-whatthepatch, python-pyqt.

Change-Id: I937730caaae394141af13881a107157868b18bab
---
gnu/packages/python-xyz.scm | 75 ++++++++++++++++++-------------------
1 file changed, 37 insertions(+), 38 deletions(-)

Toggle diff (104 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index cead2adb44..586d83a8cb 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -152,6 +152,7 @@
;;; Copyright © 2024 Adriel Dumas--Jondeau <leirda@disroot.org>
;;; Copyright © 2024 Navid Afkhami <navid.afkhami@mdc-berlin.de>
;;; Copyright © 2024 TakeV <takev@disroot.org>
+;;; Copyright © 2024 Jonathan Pieper <jpieper@mailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -7874,53 +7875,51 @@ (define-public python-pydocstyle
(define-public python-lsp-server
(package
(name "python-lsp-server")
- (version "1.3.3")
+ (version "1.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-lsp-server" version))
(sha256
- (base32
- "0h6wxzmm6qjfwkkn3mnzn1fpmcp23fpbk74bi8p540q1nzccqj0v"))))
- (build-system python-build-system)
+ (base32 "11lf7c9dpf8jzz5y7dllz8l1lka887m9a79xbazy8lkq7zxxdvc9"))))
+ (build-system pyproject-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-before 'check 'set-HOME
- (lambda _ (setenv "HOME" "/tmp")))
- (replace 'check
- (lambda _
- ;; Disable failing test.
- (invoke "python" "-m" "pytest" "-k"
- "not test_pyqt_completion"))))))
- (propagated-inputs
- (list python-autopep8
- python-pydocstyle
- python-flake8
- python-future
- python-jedi
- python-lsp-jsonrpc
- python-pluggy
- python-pycodestyle
- python-pyflakes
- python-rope
- python-ujson
- python-yapf))
- (native-inputs
- (list python-coverage
- python-flaky
- python-matplotlib
- python-mock
- python-numpy
- python-pandas
- python-pylint
- python-pytest
- python-pytest-cov
- python-versioneer))
+ `(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'set-version
+ (lambda _
+ (substitute* "pyproject.toml"
+ (("dynamic = \\[\"version\"\\]")
+ (string-append "version = \""
+ ,version "\"")))))
+ (add-before 'check 'set-HOME
+ (lambda _
+ (setenv "HOME" "/tmp"))))))
+ (propagated-inputs (list python-autopep8
+ python-docstring-to-markdown
+ python-pydocstyle
+ python-flake8
+ python-jedi
+ python-lsp-jsonrpc
+ python-pluggy
+ python-pycodestyle
+ python-pyflakes
+ python-rope
+ python-ujson
+ python-yapf))
+ (native-inputs (list python-coverage
+ python-flaky
+ python-matplotlib
+ python-numpy
+ python-pandas
+ python-pylint
+ python-pyqt
+ python-pytest
+ python-pytest-cov
+ python-whatthepatch))
(home-page "https://github.com/python-lsp/python-lsp-server")
(synopsis "Python implementation of the Language Server Protocol")
(description
-"The Python Language Server @command{pylsp} is an implementation of the
+ "The Python Language Server @command{pylsp} is an implementation of the
Python 3 language specification for the Language Server Protocol (LSP).
This tool is used in text editing environments to provide a complete
and integrated feature-set for programming Python effectively.")
--
2.41.0
N
N
Nicolas Graves wrote on 16 Jun 00:23 +0200
Re: [bug#70400] [PATCH] Update python-lsp-server
87ttht3kw0.fsf@ngraves.fr
Hi Jonathan,

Thanks for all this, you took great care it seems indeed. Because of the
extensive list of dependents (caused by isort's dependency on pylama and
thus on pydocstyle), it should probably go to the python-team branch
though.

I'm going through the patches for a review, can you take them into
account, rebase on python-team and send an updated patch series after
that? Thanks!

Nicolas

On 2024-04-15 19:34, Jonathan Pieper via Guix-patches via wrote:

Toggle quote (9 lines)
> Hi!
>
> This patch series updates the python-lsp-server to 1.11.0.
> The packages python-rope, python-snowballstemmer, python-lsp-jsonrpc and python-pydocstyle have been updated and python-docstring-to-markdown and python-pytoolconfig were added and they all build reproducible (with --rounds=2 --check).
>
> I have also taken steps to ensure compatibility by rebuild Guix and checking dependent packages using guix refresh --list-dependent the the best extend possible.
>
> It's important to note that there are numerous packages dependent on python-pydocstyle. Some of these packages are currently failing to build on the master branch. Additionally, due to limited resources on my local machine, some packages could not be build (issues included out of memory error and exceeded maximum silent time of 2 hours). However, there is no indication to suggest that the updates to python-pydocstyle are causing any new build failures.

--
Best regards,
Nicolas Graves
N
N
Nicolas Graves wrote on 16 Jun 00:29 +0200
Re: [bug#70400] [PATCH 1/7] gnu: Add python-docstring-to-markdown.
87plsh3knf.fsf@ngraves.fr
On 2024-04-15 19:45, Jonathan Pieper via Guix-patches via wrote:

Toggle quote (25 lines)
> * gnu/packages/python-xyz.scm (python-docstring-to-markdown): New variable.
> ---
> gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 92566abfed..9521119a84 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -1376,6 +1376,25 @@ (define-public python-mkdocs-markdownextradata-plugin
> variables into the markdown template")
> (license license:expat)))
>
> +(define-public python-docstring-to-markdown
> + (package
> + (name "python-docstring-to-markdown")
> + (version "0.15")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (pypi-uri "docstring-to-markdown" version))
> + (sha256
> + (base32 "0gdpabnyl1kyy0cjrnph6xl4fyhgim50a1amsaqq3hahki6i2ip1"))))
> + (build-system python-build-system)

You can use pyproject-build-system directly here.

Toggle quote (6 lines)
> + (synopsis "On the fly conversion of Python docstrings to markdown")
> + (description
> + "This module can convert Python docstrings to Markdown.
> +It can recognise reStructuredText inside docstrings and convert multiple of its
> +features to Markdown. It also includes initial support for Google-formatted docstrings.")
^ You need two spaces here.
Also ensure you match the maximum line length of 78.

Toggle quote (8 lines)
> + (license license:lgpl2.1+)))
> +
> (define-public python-mysql-connector-python
> (package
> (name "python-mysql-connector-python")
>
> base-commit: 6b3c90f638292f9604a221ac6dbf22234f6e4c4b

--
Best regards,
Nicolas Graves
N
N
Nicolas Graves wrote on 16 Jun 00:45 +0200
Re: [bug#70400] [PATCH 2/7] gnu: Add python-pytoolconfig.
(address . 70400@debbugs.gnu.org)
87cyoh3jwv.fsf@ngraves.fr
On 2024-04-15 19:45, Jonathan Pieper via Guix-patches via wrote:

Toggle quote (52 lines)
> * gnu/packages/python-xyz.scm (python-pytoolconfig): New variable.
> ---
> gnu/packages/python-xyz.scm | 52 +++++++++++++++++++++++++++++++++++++
> 1 file changed, 52 insertions(+)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 9521119a84..27107c3d8f 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -36309,6 +36309,58 @@ (define-public python-zeroc-ice-3.6
> (base32
> "0mikjfvq26kh8asnn9v55z41pap4c5ypymqnwwi4xkavc3mzyda2"))))))
>
> +(define-public python-pytoolconfig
> + (package
> + (name "python-pytoolconfig")
> + (version "1.2.2")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (pypi-uri "pytoolconfig" version))
> + (sha256
> + (base32 "18isxi4ijarl949d0zmf0b4606r6hihpi3p5yb7763m4c7ra24i5"))))
> + (build-system pyproject-build-system)
> + (arguments
> + '(#:phases (modify-phases %standard-phases
> + (add-after 'unpack 'update-license
> + (lambda _
> + (substitute* "pyproject.toml"
> + (("license-expression = (\"[^\"]*\")" all license)
> + (string-append "license = {text = " license "}")))))
> + (add-after 'unpack 'remove-mypy
> + (lambda _
> + (substitute* "pyproject.toml"
> + (("^.*mypy.*")
> + "")
> + (("strict = true")
> + ""))))
> + (add-after 'unpack 'use-pdm-backend-instead-of-pep517
> + (lambda _
> + (substitute* "pyproject.toml"
> + (("pdm-pep517")
> + "pdm-backend")
> + (("pdm\\.pep517\\.api")
> + "pdm.backend"))))
> + (replace 'check
> + (lambda* (#:key tests? #:allow-other-keys)
> + (when tests?
> + ;; Disable failing test.
> + (invoke "python" "-m" "pytest" "-k"
> + "not test_documentation")))))))

Instead of replacing the 'check phase here, you can use the #:test-flags
option with (list "-k" "not test_documentation).

Toggle quote (10 lines)
> + (native-inputs (list python-pdm-backend
> + python-tomli
> + python-pytest
> + python-docutils
> + python-sphinx
> + python-tabulate))
> + (propagated-inputs (list python-appdirs))
> + (home-page "https://github.com/bagel897/pytoolconfig")
> + (synopsis "Python Tool Configuration")

I see that the name of the project, but it doesn't seem correct english.
maybe "Configure Python tools" is a better alternative, WDYT?

Toggle quote (3 lines)
> + (description
> + "This module manages configuration for python tools,

"package" is much more used than "module" here

Toggle quote (3 lines)
> +such as rope and add support for a pyproject.toml configuration file.")
> + (license license:lgpl3+)))

Otherwise LGTM.
Toggle quote (5 lines)
> +
> ;;;
> ;;; Avoid adding new packages to the end of this file. To reduce the chances
> ;;; of a merge conflict, place them above by existing packages with similar

--
Best regards,
Nicolas Graves
N
N
Nicolas Graves wrote on 16 Jun 00:53 +0200
Re: [bug#70400] [PATCH 3/7] gnu: python-lsp-jsonrpc: Update to 1.1.2.
(address . 70400@debbugs.gnu.org)
878qz53jj8.fsf@ngraves.fr
On 2024-04-15 19:45, Jonathan Pieper via Guix-patches via wrote:

Toggle quote (4 lines)
> * gnu/packages/python-xyz.scm (python-lsp-jsonrpc): Update to 1.1.2.
> [build-system]: Change to pyproject-build-system.
> [arguments]{set-version}: Set version explicitly to pass sanity-check.

I rather use "<#:phases>: Add phase 'set-version to pass sanity-check"
but I'm not sure that's a stabilized standard.

Toggle quote (40 lines)
> [native-inputs]: Add python-pytest-cov.
>
> Change-Id: I3ffaf75ced25bd95d8f7486294364fb52b86b08b
> ---
> gnu/packages/python-xyz.scm | 21 +++++++++++++--------
> 1 file changed, 13 insertions(+), 8 deletions(-)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 27107c3d8f..e0817e4c9d 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -7559,19 +7559,24 @@ (define-public python-feedgenerator
> (define-public python-lsp-jsonrpc
> (package
> (name "python-lsp-jsonrpc")
> - (version "1.0.0")
> + (version "1.1.2")
> (source
> (origin
> (method url-fetch)
> (uri (pypi-uri "python-lsp-jsonrpc" version))
> (sha256
> - (base32
> - "1gb0fsamxndhplx25v8m0b3k7aknzy454fpa0qsqsqnv6c3igv3v"))))
> - (build-system python-build-system)
> - (native-inputs
> - (list python-mock python-pytest))
> - (propagated-inputs
> - (list python-ujson))
> + (base32 "04n95h0cqnsrdyh1gv0abh2i5ynyrq2wfqpppx9djp7mxr9y9226"))))
> + (arguments
> + `(#:phases (modify-phases %standard-phases
> + (add-after 'unpack 'set-version
> + (lambda _
> + (substitute* "pyproject.toml"
> + (("dynamic = \\[\"version\"\\]")
> + (string-append "version = \""
> + ,version "\""))))))))
> + (build-system pyproject-build-system)

nitpick: arguments is clearer after build-system field.
Otherwise LGTM.
Toggle quote (6 lines)
> + (native-inputs (list python-mock python-pytest python-pytest-cov))
> + (propagated-inputs (list python-ujson))
> (home-page "https://github.com/python-lsp/python-lsp-jsonrpc")
> (synopsis "JSON RPC 2.0 server library")
> (description

--
Best regards,
Nicolas Graves
N
N
Nicolas Graves wrote on 16 Jun 01:10 +0200
Re: [bug#70400] [PATCH 7/7] gnu: python-lsp-server: Update to 1.11.0.
(address . 70400@debbugs.gnu.org)
874j9t3iqg.fsf@ngraves.fr
The other patches LGTM. Maybe if you want it to be merged quicker, we
can update it to 1.7.0 without updating pycodestyle in master, and
further update it to 1.11.0 in python-team branch.

WDYT?

On 2024-04-15 19:45, Jonathan Pieper via Guix-patches via wrote:

Toggle quote (115 lines)
> * gnu/packages/python-xyz.scm (python-lsp-server): Update to 1.11.0.
> [build-system]: Change to pyproject-build-system.
> [arguments]{set-version}: Set version explicitly to pass sanity-check.
> {check}: Do not replace it as test_pyqt_completion is no longer failing.
> [propagated-inputs]: Remove python-future and add python-docstring-to-markdown.
> [native-inputs]: Remove python-mock, python-versioneer and add python-whatthepatch, python-pyqt.
>
> Change-Id: I937730caaae394141af13881a107157868b18bab
> ---
> gnu/packages/python-xyz.scm | 75 ++++++++++++++++++-------------------
> 1 file changed, 37 insertions(+), 38 deletions(-)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index cead2adb44..586d83a8cb 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -152,6 +152,7 @@
> ;;; Copyright © 2024 Adriel Dumas--Jondeau <leirda@disroot.org>
> ;;; Copyright © 2024 Navid Afkhami <navid.afkhami@mdc-berlin.de>
> ;;; Copyright © 2024 TakeV <takev@disroot.org>
> +;;; Copyright © 2024 Jonathan Pieper <jpieper@mailbox.org>
> ;;;
> ;;; This file is part of GNU Guix.
> ;;;
> @@ -7874,53 +7875,51 @@ (define-public python-pydocstyle
> (define-public python-lsp-server
> (package
> (name "python-lsp-server")
> - (version "1.3.3")
> + (version "1.11.0")
> (source
> (origin
> (method url-fetch)
> (uri (pypi-uri "python-lsp-server" version))
> (sha256
> - (base32
> - "0h6wxzmm6qjfwkkn3mnzn1fpmcp23fpbk74bi8p540q1nzccqj0v"))))
> - (build-system python-build-system)
> + (base32 "11lf7c9dpf8jzz5y7dllz8l1lka887m9a79xbazy8lkq7zxxdvc9"))))
> + (build-system pyproject-build-system)
> (arguments
> - `(#:phases
> - (modify-phases %standard-phases
> - (add-before 'check 'set-HOME
> - (lambda _ (setenv "HOME" "/tmp")))
> - (replace 'check
> - (lambda _
> - ;; Disable failing test.
> - (invoke "python" "-m" "pytest" "-k"
> - "not test_pyqt_completion"))))))
> - (propagated-inputs
> - (list python-autopep8
> - python-pydocstyle
> - python-flake8
> - python-future
> - python-jedi
> - python-lsp-jsonrpc
> - python-pluggy
> - python-pycodestyle
> - python-pyflakes
> - python-rope
> - python-ujson
> - python-yapf))
> - (native-inputs
> - (list python-coverage
> - python-flaky
> - python-matplotlib
> - python-mock
> - python-numpy
> - python-pandas
> - python-pylint
> - python-pytest
> - python-pytest-cov
> - python-versioneer))
> + `(#:phases (modify-phases %standard-phases
> + (add-after 'unpack 'set-version
> + (lambda _
> + (substitute* "pyproject.toml"
> + (("dynamic = \\[\"version\"\\]")
> + (string-append "version = \""
> + ,version "\"")))))
> + (add-before 'check 'set-HOME
> + (lambda _
> + (setenv "HOME" "/tmp"))))))
> + (propagated-inputs (list python-autopep8
> + python-docstring-to-markdown
> + python-pydocstyle
> + python-flake8
> + python-jedi
> + python-lsp-jsonrpc
> + python-pluggy
> + python-pycodestyle
> + python-pyflakes
> + python-rope
> + python-ujson
> + python-yapf))
> + (native-inputs (list python-coverage
> + python-flaky
> + python-matplotlib
> + python-numpy
> + python-pandas
> + python-pylint
> + python-pyqt
> + python-pytest
> + python-pytest-cov
> + python-whatthepatch))
> (home-page "https://github.com/python-lsp/python-lsp-server")
> (synopsis "Python implementation of the Language Server Protocol")
> (description
> -"The Python Language Server @command{pylsp} is an implementation of the
> + "The Python Language Server @command{pylsp} is an implementation of the
> Python 3 language specification for the Language Server Protocol (LSP).
> This tool is used in text editing environments to provide a complete
> and integrated feature-set for programming Python effectively.")

--
Best regards,
Nicolas Graves
J
Re: [PATCH] Update python-lsp-server
c7d9d98fdb46e86f8032537340b019ebc16bcefb@dismail.de
Hi,

Should we close this ticket?

This update is already on the python-team branch authored by rekado.

all best,

jgart
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 70400@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 70400
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch