summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCayetano Santos <csantosb@inventati.org>2025-07-18 12:31:44 +0200
committerHilton Chain <hako@ultrarare.space>2025-07-24 15:43:51 +0800
commita3cb5f185aa886c58cef9021acdeffb989ca6ff1 (patch)
tree421631197223047bc59a0825c2dc128dcc8b16cc
parent48bc3329c64c85a6a70759c2c7ca617fdd4dd1f3 (diff)
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>
-rw-r--r--gnu/packages/emacs-xyz.scm172
1 files changed, 94 insertions, 78 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 19c0149f88..1e8ab6be05 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -34762,87 +34762,103 @@ the standard @code{Dockerfile} file format.")
(license license:asl2.0)))
(define-public emacs-lsp-mode
- (package
- (name "emacs-lsp-mode")
- (version "9.0.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emacs-lsp/lsp-mode")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1p4979qbmllmmszmnyml0msxkza4pm14rdacmqczbfs3cs9n6bd3"))))
- (build-system emacs-build-system)
- (arguments
- (list
- #:emacs emacs ;need libxml support
- #:test-command #~(list "ert-runner" "-L" "." "-L" "clients"
- "-t" "!no-win" "-t" "!org")
- #:phases
- #~(modify-phases %standard-phases
- (add-after 'unpack 'move-clients-libraries
- ;; Move all clients libraries at top-level, as is done, e.g., in
- ;; MELPA.
- (lambda _
- (for-each (lambda (f)
- (install-file f "."))
- (find-files "clients/" "\\.el$"))))
- (add-before 'check 'skip-failing-tests
- (lambda _
- (substitute* "test/lsp-common-test.el"
- (("\\(require 'elenv" all)
- (string-append all " nil t"))
- (("\\(ert-deftest lsp--path-to-uri-1 .*" all)
- (string-append all "(skip-unless (featurep 'elenv))"))
- (("\\(ert-deftest lsp-byte-compilation-test .*" all)
- (string-append all "(skip-unless nil)"))
- (("\\(ert-deftest lsp--build-.*-response-test-[34] .*" all)
- (string-append all "(skip-unless nil)")))
- (substitute* "test/lsp-mode-test.el"
- (("\\(ert-deftest lsp--merge-results .*" all)
- (string-append all "(skip-unless nil)")))
- (substitute* "test/lsp-integration-test.el"
- (("\\(ert-deftest lsp-.*-hover-request(-tick)? .*" all)
- (string-append all "(skip-unless nil)"))
- (("\\(ert-deftest lsp-test-current-buffer-mode .*" all)
- (string-append all "(skip-unless nil)")))
- (delete-file "test/lsp-clangd-test.el")))
- (add-before 'check 'set-home
- (lambda _ (setenv "HOME" (getenv "TMPDIR"))))
- (add-after 'unpack 'enable-plists
- (lambda _
- (substitute* "lsp-protocol.el"
- ;; This is faster, and it's officially recommended,
- ;; and it's required by emacs-lsp-booster.
- ;; See also:
- ;; <https://emacs-lsp.github.io/lsp-mode/page/performance/>.
- (("\\(getenv \"LSP_USE_PLISTS\"\\)") "t"))))
- (add-before 'move-clients-libraries 'fix-patch-el-files
- ;; /bin/ksh is only used on macOS, which we don't support, so we
- ;; don't want to add it as input.
- (lambda _
- (substitute* '("clients/lsp-csharp.el" "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
+ ;; Last release is one year old.
+ ;; Latest revision enables support for new lsp spec 3.17 features.
+ (let ((commit "147233313576c844e2bf56640827b0d0e5c2ee6c")
+ (revision "0"))
+ (package
+ (name "emacs-lsp-mode")
+ (version (git-version "9.0.1" revision commit)) ;taken from lsp-mode.el
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emacs-lsp/lsp-mode/")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "14317wgi0mrxbcrlgrfqyf80lh86n7x6bv07b43cxl3k4c4fqk0l"))))
+ (build-system emacs-build-system)
+ (arguments
+ (list
+ #:emacs emacs ;need libxml support
+ #:test-command #~(list "ert-runner"
+ "-L" "."
+ "-L" "clients"
+ "-t" "!no-win"
+ "-t" "!org")
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; Move libraries to the top-level.
+ (add-after 'unpack 'move-libraries
+ (lambda _
+ ;; REVIEW; Improve style, pair-for-each ?
+ (for-each (lambda (d)
+ (for-each (lambda (f)
+ (rename-file f (basename f)))
+ (find-files d "\\.el$")))
+ (list "use-package/" "clients/"))))
+ (add-before 'check 'skip-failing-tests
+ (lambda _
+ (substitute* "test/lsp-mock-server-test.el"
+ (("\\(ert-deftest lsp-mock-server-reports.*" all)
+ (string-append all "(skip-unless nil)"))
+ (("\\(ert-deftest lsp-mock-server-updates-.*" all)
+ (string-append all "(skip-unless nil)")))
+ (substitute* "test/lsp-common-test.el"
+ (("\\(require 'elenv" all)
+ (string-append all " nil t"))
+ (("\\(ert-deftest lsp--path-to-uri-1 .*" all)
+ (string-append all "(skip-unless (featurep 'elenv))"))
+ (("\\(ert-deftest lsp-byte-compilation-test .*" all)
+ (string-append all "(skip-unless nil)"))
+ (("\\(ert-deftest lsp--build-.*-response-test-[34] .*" all)
+ (string-append all "(skip-unless nil)")))
+ (substitute* "test/lsp-mode-test.el"
+ (("\\(ert-deftest lsp--merge-results .*" all)
+ (string-append all "(skip-unless nil)")))
+ (substitute* "test/lsp-integration-test.el"
+ (("\\(ert-deftest lsp-.*-hover-request(-tick)? .*" all)
+ (string-append all "(skip-unless nil)"))
+ (("\\(ert-deftest lsp-test-current-buffer-mode .*" all)
+ (string-append all "(skip-unless nil)")))
+ (delete-file "test/lsp-clangd-test.el")))
+ (add-before 'check 'set-home
+ (lambda _ (setenv "HOME" (getenv "TMPDIR"))))
+ (add-after 'unpack 'enable-plists
+ (lambda _
+ (substitute* "lsp-protocol.el"
+ ;; This is faster, and it's officially recommended,
+ ;; and it's required by emacs-lsp-booster.
+ ;; See also:
+ ;; <https://emacs-lsp.github.io/lsp-mode/page/performance/>.
+ (("\\(getenv \"LSP_USE_PLISTS\"\\)") "t"))))
+ (add-before 'move-libraries 'fix-patch-el-files
+ ;; /bin/ksh is only used on macOS, which we don't support, so we
+ ;; don't want to add it as input.
+ (lambda _
+ (substitute* '("clients/lsp-csharp.el"
+ "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
optional integration with other popular Emacs packages like Company, Flycheck,
and Projectile.")
- (license license:gpl3+)))
+ (license license:gpl3+))))
(define* (%emacs-lsp-treemacs-upstream-source #:key commit version hash)
(origin