1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 08:43:40 -07:00

Remove uses of deprecated ‘flet’ macro

Instead, use the non-deprecated ‘cl-flet’ and ‘cl-letf’ macros from the
‘cl-lib’ package.

This also allows us to remove the ‘plist-delete’ helper function, which was
only used to effectively un-deprecate ‘flet’.
This commit is contained in:
Philipp Stephani 2020-06-21 19:48:03 +02:00
parent ffa5f0397a
commit 11b2184c8d

View file

@ -22,7 +22,7 @@
;;; Code: ;;; Code:
(require 'cl) (require 'cl-lib)
(require 'ert) (require 'ert)
(require 'use-package) (require 'use-package)
@ -99,20 +99,6 @@
(bind-key "C-c C-u" #'fix-expansion emacs-lisp-mode-map) (bind-key "C-c C-u" #'fix-expansion emacs-lisp-mode-map)
(eval-when-compile
(defun plist-delete (plist property)
"Delete PROPERTY from PLIST"
(let (p)
(while plist
(if (not (eq property (car plist)))
(setq p (plist-put p (car plist) (nth 1 plist))))
(setq plist (cddr plist)))
p))
;; `cl-flet' does not work for some of the mocking we do below, while `flet'
;; always does.
(setplist 'flet (plist-delete (symbol-plist 'flet) 'byte-obsolete-info)))
(ert-deftest use-package-test-recognize-function () (ert-deftest use-package-test-recognize-function ()
(should (use-package-recognize-function nil t)) (should (use-package-recognize-function nil t))
(should-not (use-package-recognize-function nil)) (should-not (use-package-recognize-function nil))
@ -232,9 +218,9 @@
(require 'foo nil nil)))) (require 'foo nil nil))))
(ert-deftest use-package-test-normalize/:ensure () (ert-deftest use-package-test-normalize/:ensure ()
(flet ((norm (&rest args) (cl-flet ((norm (&rest args)
(apply #'use-package-normalize/:ensure (apply #'use-package-normalize/:ensure
'foopkg :ensure args))) 'foopkg :ensure args)))
(should (equal (norm '(t)) '(t))) (should (equal (norm '(t)) '(t)))
(should (equal (norm '(nil)) '(nil))) (should (equal (norm '(nil)) '(nil)))
(should (equal (norm '(sym)) '(sym))) (should (equal (norm '(sym)) '(sym)))
@ -333,11 +319,11 @@
(ert-deftest use-package-test/:ensure-11 () (ert-deftest use-package-test/:ensure-11 ()
(let (tried-to-install) (let (tried-to-install)
(flet ((use-package-ensure-elpa (cl-letf (((symbol-function #'use-package-ensure-elpa)
(name ensure state &optional no-refresh) (lambda (name ensure state &optional no-refresh)
(when ensure (when ensure
(setq tried-to-install name))) (setq tried-to-install name))))
(require (&rest ignore))) ((symbol-function #'require) #'ignore))
(use-package foo :ensure t) (use-package foo :ensure t)
(should (eq tried-to-install 'foo))))) (should (eq tried-to-install 'foo)))))
@ -737,9 +723,9 @@
(add-to-list 'interpreter-mode-alist '("interp" . fun))))) (add-to-list 'interpreter-mode-alist '("interp" . fun)))))
(ert-deftest use-package-test-normalize/:mode () (ert-deftest use-package-test-normalize/:mode ()
(flet ((norm (&rest args) (cl-flet ((norm (&rest args)
(apply #'use-package-normalize/:mode (apply #'use-package-normalize/:mode
'foopkg :mode args))) 'foopkg :mode args)))
(should (equal (norm '(".foo")) (should (equal (norm '(".foo"))
'((".foo" . foopkg)))) '((".foo" . foopkg))))
(should (equal (norm '(".foo" ".bar")) (should (equal (norm '(".foo" ".bar"))
@ -993,9 +979,9 @@
(load "foo" nil t)))))))) (load "foo" nil t))))))))
(ert-deftest use-package-test-normalize/:hook () (ert-deftest use-package-test-normalize/:hook ()
(flet ((norm (&rest args) (cl-flet ((norm (&rest args)
(apply #'use-package-normalize/:hook (apply #'use-package-normalize/:hook
'foopkg :hook args))) 'foopkg :hook args)))
(should-error (norm nil)) (should-error (norm nil))
(should (equal (norm '(bar)) (should (equal (norm '(bar))
'((bar . foopkg)))) '((bar . foopkg))))
@ -1117,9 +1103,9 @@
(add-hook 'emacs-lisp-mode-hook #'(lambda nil (function)))))))) (add-hook 'emacs-lisp-mode-hook #'(lambda nil (function))))))))
(ert-deftest use-package-test-normalize/:custom () (ert-deftest use-package-test-normalize/:custom ()
(flet ((norm (&rest args) (cl-flet ((norm (&rest args)
(apply #'use-package-normalize/:custom (apply #'use-package-normalize/:custom
'foopkg :custom args))) 'foopkg :custom args)))
(should-error (norm nil)) (should-error (norm nil))
(should-error (norm '(bar))) (should-error (norm '(bar)))
;; (should-error (norm '((foo bar baz quux)))) ;; (should-error (norm '((foo bar baz quux))))
@ -1818,7 +1804,7 @@
`(bind-key "C-c C-r" #'org-ref-helm-insert-cite-link override-global-map nil))) `(bind-key "C-c C-r" #'org-ref-helm-insert-cite-link override-global-map nil)))
(ert-deftest use-package-test/560 () (ert-deftest use-package-test/560 ()
(flet ((executable-find (name))) (cl-letf (((symbol-function #'executable-find) #'ignore))
(let (notmuch-command) (let (notmuch-command)
(match-expansion (match-expansion
(use-package notmuch (use-package notmuch
@ -1929,7 +1915,8 @@
(use-package-expand-minimally t) (use-package-expand-minimally t)
debug-on-error debug-on-error
warnings) warnings)
(flet ((display-warning (_ msg _) (push msg warnings))) (cl-letf (((symbol-function #'display-warning)
(lambda (_ msg _) (push msg warnings))))
(progn (progn
(macroexpand-1 (macroexpand-1
'(use-package ediff :defer t (setq my-var t))) '(use-package ediff :defer t (setq my-var t)))