gnu: emacs-lsp-mode: Update to 9.0.1-0.1472333.

* gnu/packages/emacs-xyz.scm (emacs-lsp-mode): Update to 9.0.1-0.1472333.

Change-Id: I25e85808cadc6e7ef5c8573a0822c8cbac2889eb
Signed-off-by: Hilton Chain <hako@ultrarare.space>
This commit is contained in:
Cayetano Santos 2025-07-18 12:31:44 +02:00 committed by Hilton Chain
parent 48bc3329c6
commit a3cb5f185a
No known key found for this signature in database
GPG key ID: ACC66D09CA528292

View file

@ -34762,87 +34762,103 @@ the standard @code{Dockerfile} file format.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public emacs-lsp-mode (define-public emacs-lsp-mode
(package ;; Last release is one year old.
(name "emacs-lsp-mode") ;; Latest revision enables support for new lsp spec 3.17 features.
(version "9.0.0") (let ((commit "147233313576c844e2bf56640827b0d0e5c2ee6c")
(source (revision "0"))
(origin (package
(method git-fetch) (name "emacs-lsp-mode")
(uri (git-reference (version (git-version "9.0.1" revision commit)) ;taken from lsp-mode.el
(url "https://github.com/emacs-lsp/lsp-mode") (source
(commit version))) (origin
(file-name (git-file-name name version)) (method git-fetch)
(sha256 (uri (git-reference
(base32 "1p4979qbmllmmszmnyml0msxkza4pm14rdacmqczbfs3cs9n6bd3")))) (url "https://github.com/emacs-lsp/lsp-mode/")
(build-system emacs-build-system) (commit commit)))
(arguments (file-name (git-file-name name version))
(list (sha256
#:emacs emacs ;need libxml support (base32 "14317wgi0mrxbcrlgrfqyf80lh86n7x6bv07b43cxl3k4c4fqk0l"))))
#:test-command #~(list "ert-runner" "-L" "." "-L" "clients" (build-system emacs-build-system)
"-t" "!no-win" "-t" "!org") (arguments
#:phases (list
#~(modify-phases %standard-phases #:emacs emacs ;need libxml support
(add-after 'unpack 'move-clients-libraries #:test-command #~(list "ert-runner"
;; Move all clients libraries at top-level, as is done, e.g., in "-L" "."
;; MELPA. "-L" "clients"
(lambda _ "-t" "!no-win"
(for-each (lambda (f) "-t" "!org")
(install-file f ".")) #:phases
(find-files "clients/" "\\.el$")))) #~(modify-phases %standard-phases
(add-before 'check 'skip-failing-tests ;; Move libraries to the top-level.
(lambda _ (add-after 'unpack 'move-libraries
(substitute* "test/lsp-common-test.el" (lambda _
(("\\(require 'elenv" all) ;; REVIEW; Improve style, pair-for-each ?
(string-append all " nil t")) (for-each (lambda (d)
(("\\(ert-deftest lsp--path-to-uri-1 .*" all) (for-each (lambda (f)
(string-append all "(skip-unless (featurep 'elenv))")) (rename-file f (basename f)))
(("\\(ert-deftest lsp-byte-compilation-test .*" all) (find-files d "\\.el$")))
(string-append all "(skip-unless nil)")) (list "use-package/" "clients/"))))
(("\\(ert-deftest lsp--build-.*-response-test-[34] .*" all) (add-before 'check 'skip-failing-tests
(string-append all "(skip-unless nil)"))) (lambda _
(substitute* "test/lsp-mode-test.el" (substitute* "test/lsp-mock-server-test.el"
(("\\(ert-deftest lsp--merge-results .*" all) (("\\(ert-deftest lsp-mock-server-reports.*" all)
(string-append all "(skip-unless nil)"))) (string-append all "(skip-unless nil)"))
(substitute* "test/lsp-integration-test.el" (("\\(ert-deftest lsp-mock-server-updates-.*" all)
(("\\(ert-deftest lsp-.*-hover-request(-tick)? .*" all) (string-append all "(skip-unless nil)")))
(string-append all "(skip-unless nil)")) (substitute* "test/lsp-common-test.el"
(("\\(ert-deftest lsp-test-current-buffer-mode .*" all) (("\\(require 'elenv" all)
(string-append all "(skip-unless nil)"))) (string-append all " nil t"))
(delete-file "test/lsp-clangd-test.el"))) (("\\(ert-deftest lsp--path-to-uri-1 .*" all)
(add-before 'check 'set-home (string-append all "(skip-unless (featurep 'elenv))"))
(lambda _ (setenv "HOME" (getenv "TMPDIR")))) (("\\(ert-deftest lsp-byte-compilation-test .*" all)
(add-after 'unpack 'enable-plists (string-append all "(skip-unless nil)"))
(lambda _ (("\\(ert-deftest lsp--build-.*-response-test-[34] .*" all)
(substitute* "lsp-protocol.el" (string-append all "(skip-unless nil)")))
;; This is faster, and it's officially recommended, (substitute* "test/lsp-mode-test.el"
;; and it's required by emacs-lsp-booster. (("\\(ert-deftest lsp--merge-results .*" all)
;; See also: (string-append all "(skip-unless nil)")))
;; <https://emacs-lsp.github.io/lsp-mode/page/performance/>. (substitute* "test/lsp-integration-test.el"
(("\\(getenv \"LSP_USE_PLISTS\"\\)") "t")))) (("\\(ert-deftest lsp-.*-hover-request(-tick)? .*" all)
(add-before 'move-clients-libraries 'fix-patch-el-files (string-append all "(skip-unless nil)"))
;; /bin/ksh is only used on macOS, which we don't support, so we (("\\(ert-deftest lsp-test-current-buffer-mode .*" all)
;; don't want to add it as input. (string-append all "(skip-unless nil)")))
(lambda _ (delete-file "test/lsp-clangd-test.el")))
(substitute* '("clients/lsp-csharp.el" "clients/lsp-fsharp.el") (add-before 'check 'set-home
(("/bin/ksh") "ksh"))))))) (lambda _ (setenv "HOME" (getenv "TMPDIR"))))
(propagated-inputs (add-after 'unpack 'enable-plists
(list emacs-dash (lambda _
emacs-f (substitute* "lsp-protocol.el"
emacs-ht ;; This is faster, and it's officially recommended,
emacs-hydra ;; and it's required by emacs-lsp-booster.
emacs-markdown-mode ;; See also:
emacs-spinner)) ;; <https://emacs-lsp.github.io/lsp-mode/page/performance/>.
(native-inputs (list emacs-deferred (("\\(getenv \"LSP_USE_PLISTS\"\\)") "t"))))
emacs-el-mock (add-before 'move-libraries 'fix-patch-el-files
emacs-ert-runner)) ;; /bin/ksh is only used on macOS, which we don't support, so we
(home-page "https://emacs-lsp.github.io/lsp-mode/") ;; don't want to add it as input.
(synopsis "Emacs client and library for the Language Server Protocol") (lambda _
(description (substitute* '("clients/lsp-csharp.el"
"LSP mode is a client and library implementation for the Language "clients/lsp-fsharp.el")
(("/bin/ksh") "ksh")))))))
(propagated-inputs
(list emacs-dash
emacs-f
emacs-ht
emacs-hydra
emacs-markdown-mode
emacs-spinner))
(native-inputs
(list emacs-deferred
emacs-el-mock
emacs-ert-runner))
(home-page "https://emacs-lsp.github.io/lsp-mode/")
(synopsis "Emacs client and library for the Language Server Protocol")
(description
"LSP mode is a client and library implementation for the Language
Server Protocol. This mode creates an IDE-like experience by providing Server Protocol. This mode creates an IDE-like experience by providing
optional integration with other popular Emacs packages like Company, Flycheck, optional integration with other popular Emacs packages like Company, Flycheck,
and Projectile.") and Projectile.")
(license license:gpl3+))) (license license:gpl3+))))
(define* (%emacs-lsp-treemacs-upstream-source #:key commit version hash) (define* (%emacs-lsp-treemacs-upstream-source #:key commit version hash)
(origin (origin