me
/
guix
Archived
1
0
Fork 0

gnu: emacs-yasnippet: Fix build.

* gnu/packages/patches/emacs-yasnippet-fix-tests.patch: New file.
* gnu/packages/emacs-xyz.scm (emacs-yasnippet): Use it here.
* gnu/local.mk (dist_patch_DATA): Register it here.
master
Liliana Marie Prikler 2022-05-15 03:05:28 +02:00
parent de68877a51
commit 22d6e36005
No known key found for this signature in database
GPG Key ID: 442A84B8C70E2F87
3 changed files with 99 additions and 1 deletions

View File

@ -1038,6 +1038,7 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-telega-path-placeholder.patch \ %D%/packages/patches/emacs-telega-path-placeholder.patch \
%D%/packages/patches/emacs-telega-test-env.patch \ %D%/packages/patches/emacs-telega-test-env.patch \
%D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \ %D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \
%D%/packages/patches/emacs-yasnippet-fix-tests.patch \
%D%/packages/patches/enjarify-setup-py.patch \ %D%/packages/patches/enjarify-setup-py.patch \
%D%/packages/patches/enlightenment-fix-setuid-path.patch \ %D%/packages/patches/enlightenment-fix-setuid-path.patch \
%D%/packages/patches/eog-update-libportal-usage.patch \ %D%/packages/patches/eog-update-libportal-usage.patch \

View File

@ -13490,7 +13490,9 @@ the Emacs Tempo library. You may also write your templates in Lisp.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0via9dzw8m5lzymg1h78xkwjssh39zr3g6ccyamlf1rjzjsyxknv")))) (base32 "0via9dzw8m5lzymg1h78xkwjssh39zr3g6ccyamlf1rjzjsyxknv"))
(patches
(search-patches "emacs-yasnippet-fix-tests.patch"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
`(#:tests? #t `(#:tests? #t

View File

@ -0,0 +1,95 @@
From 904a058fcf4e1f4985e03f8551eec282ca12ccb5 Mon Sep 17 00:00:00 2001
From: Philipp Stephani <phst@google.com>
Date: Mon, 6 Dec 2021 18:50:10 +0100
Subject: [PATCH] Unbreak unit tests under Emacs 28.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Emacs 28 has a new mode lisp-data-mode for Lisp data.
- A test that was temporarily broken passes again.
- The default for org-adapt-indentation has changed.
---
yasnippet-tests.el | 41 ++++++++++++++++++++++++++---------------
1 file changed, 26 insertions(+), 15 deletions(-)
diff --git a/yasnippet-tests.el b/yasnippet-tests.el
index b8a7980f..9fadf00c 100644
--- a/yasnippet-tests.el
+++ b/yasnippet-tests.el
@@ -1,6 +1,6 @@
;;; yasnippet-tests.el --- some yasnippet tests -*- lexical-binding: t -*-
-;; Copyright (C) 2012-2015, 2017-2018 Free Software Foundation, Inc.
+;; Copyright (C) 2012-2015, 2017-2018, 2021 Free Software Foundation, Inc.
;; Author: João Távora <joaot@siscog.pt>
;; Keywords: emulations, convenience
@@ -556,16 +556,19 @@ XXXXX ------------------------"))))
(yas-mock-insert "foo bar")
(ert-simulate-command '(yas-next-field))
(goto-char (point-min))
- (let ((expected (with-temp-buffer
- (insert (format (concat "* Test foo bar\n"
- " " org-property-format "\n"
- " " org-property-format "\n"
- " " org-property-format)
- ":PROPERTIES:" ""
- ":ID:" "foo bar-after"
- ":END:" ""))
- (delete-trailing-whitespace)
- (buffer-string))))
+ ;; The default value of `org-adapt-indentation' changed between Org-mode 9.4
+ ;; and 9.5, so force a specific value.
+ (let* ((org-adapt-indentation nil)
+ (expected (with-temp-buffer
+ (insert (format (concat "* Test foo bar\n"
+ org-property-format "\n"
+ org-property-format "\n"
+ org-property-format)
+ ":PROPERTIES:" ""
+ ":ID:" "foo bar-after"
+ ":END:" ""))
+ (delete-trailing-whitespace)
+ (buffer-string))))
;; Some org-mode versions leave trailing whitespace, some don't.
(delete-trailing-whitespace)
(should (equal expected (buffer-string))))))
@@ -1390,7 +1393,9 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
,@(if (fboundp 'prog-mode)
'(prog-mode))
emacs-lisp-mode
- lisp-interaction-mode))
+ lisp-interaction-mode
+ ;; `lisp-data-mode' doesn't exist prior to Emacs 28.
+ ,@(and (fboundp 'lisp-data-mode) '(lisp-data-mode))))
(observed (yas--modes-to-activate)))
(should (equal major-mode (car observed)))
(should (equal (sort expected #'string<) (sort observed #'string<))))))))
@@ -1418,7 +1423,11 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
'(prog-mode))
emacs-lisp-mode
and-also-this-one
- lisp-interaction-mode))
+ lisp-interaction-mode
+ ;; `lisp-data-mode' doesn't exist prior to
+ ;; Emacs 28.
+ ,@(and (fboundp 'lisp-data-mode)
+ '(lisp-data-mode))))
(observed (yas--modes-to-activate)))
(should (equal expected-first
(cl-subseq observed 0 (length expected-first))))
@@ -1691,9 +1700,11 @@ TODO: be meaner"
"Test expansion of snippets in org source blocks."
;; org 9+ no longer runs fontification for text-mode, so our hacks
;; don't work. Note that old ert doesn't have skipping, so we have
- ;; to expect failure instead.
+ ;; to expect failure instead. Starting with Org-mode 9.5 this seems
+ ;; to work again.
:expected-result (if (and (fboundp 'org-in-src-block-p)
- (version< (org-version) "9"))
+ (or (version< (org-version) "9")
+ (version<= "9.5" (org-version))))
:passed :failed)
(let ((text-mode-hook #'yas-minor-mode))
(do-yas-org-native-tab-in-source-block "text")))