From ab2b822b9bbac321ec061de349cf0166cc406fe7 Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Wed, 13 Apr 2022 06:07:32 +0200 Subject: [PATCH 1/4] Revert "Make cl-concatenate an alias of seq-concatenate" This reverts commit 78f76fe16e2737b40694f82af28d17a90a21ed7b. The commit made calls to cl-concatenate bug out, since autoloading defalises doesn't work very well (bug#54901). --- lisp/emacs-lisp/cl-extra.el | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el index ed9b1b7d836..fd94554ca19 100644 --- a/lisp/emacs-lisp/cl-extra.el +++ b/lisp/emacs-lisp/cl-extra.el @@ -554,9 +554,10 @@ too large if positive or too small if negative)." (seq-subseq seq start end)) ;;;###autoload -(defalias 'cl-concatenate #'seq-concatenate +(defun cl-concatenate (type &rest sequences) "Concatenate, into a sequence of type TYPE, the argument SEQUENCEs. -\n(fn TYPE SEQUENCE...)") +\n(fn TYPE SEQUENCE...)" + (apply #'seq-concatenate type sequences)) ;;; List functions. From 5ee959aa8783689627a1553c678fd4d3720236c8 Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Wed, 13 Apr 2022 06:11:43 +0200 Subject: [PATCH 2/4] Add a comment about cl-concatenate * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Add a comment. --- lisp/emacs-lisp/cl-extra.el | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el index fd94554ca19..8e38df43c87 100644 --- a/lisp/emacs-lisp/cl-extra.el +++ b/lisp/emacs-lisp/cl-extra.el @@ -553,6 +553,9 @@ too large if positive or too small if negative)." ,new))))) (seq-subseq seq start end)) +;;; This isn't a defalias because autoloading defalises doesn't work +;;; very well. + ;;;###autoload (defun cl-concatenate (type &rest sequences) "Concatenate, into a sequence of type TYPE, the argument SEQUENCEs. From 880f2734c95cec7ee6a9eec596e86543508415cd Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 13 Apr 2022 16:07:40 +0300 Subject: [PATCH 3/4] A better fix for bug#54800 * lisp/calc/calc.el (calc-align-stack-window): Improve scrolling when windows have non-integral dimensions. --- lisp/calc/calc.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/calc/calc.el b/lisp/calc/calc.el index 2f9afa02af8..171f7711324 100644 --- a/lisp/calc/calc.el +++ b/lisp/calc/calc.el @@ -1815,7 +1815,7 @@ See calc-keypad for details." (if win (progn (calc-cursor-stack-index 0) - (vertical-motion (- 3 (window-height win))) + (vertical-motion (- 3 (window-height win 'floor))) (set-window-start win (point))))) (calc-cursor-stack-index 0) (if (looking-at " *\\.$") From b201823f631082d4f386304ee9ec24b0d85f5def Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Thu, 14 Apr 2022 09:17:01 +0300 Subject: [PATCH 4/4] Describe problems with invoking Python on MS-Windows * etc/PROBLEMS: Describe problems with running an inferior Python interpreter due to the MS-Windows "App Execution Aliases" feature. (Bug#54860) --- etc/PROBLEMS | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/etc/PROBLEMS b/etc/PROBLEMS index e48ce5a8b0c..5e88f289c26 100644 --- a/etc/PROBLEMS +++ b/etc/PROBLEMS @@ -651,6 +651,46 @@ And then rename the system's readline so that it won't be loaded: See for more details on installation. +*** On MS-Windows, invoking "M-x run-python" signals an error. + +If the error says something like this: + + Python was not found; run with arguments to install + from the Microsoft Store, or disable this shortcut + from Settings > Manage App Execution Aliases. + + Process Python exited abnormally with code 49 + +then this is due to the MS-Windows "feature" that is intended to +encourage you to install the latest available Python version. It +works by placing "fake" python.exe and python3.exe executables in a +special directory, and having that directory on your Path _before_ the +directory where the real Python executable is installed. That "fake" +Python then decides whether to redirect you to the Microsoft Store or +invoke the actual Python. The directory where Windows keeps those +"fake" executables is under your Windows user's 'AppData' directory, +typically 'C:\Users\\AppData\Local\Microsoft\WindowsApps', where +"" is the user name of your Windows user. + +To solve this, you have several alternatives: + + . Go to "Settings > Manage App Execution Aliases" and turn OFF the + aliases for python.exe and/or python3.exe. This will affect only + Python, and may require you to manage upgrades to your Python + installation manually, instead of being automatically prompted by + MS-Windows. + . Move the directory with the "fake" executables to the end of Path, + or at least after the directory where the real Python is + installed. Depending on the position in Path where you move it, + it will affect Python and/or other programs which Windows monitors + via the "App Execution Aliases" feature. + . Manually remove python.exe and/or python3.exe from the above + directory. Again, this affects only your Python installation. + +Whatever you do, you will need to restart Emacs to refresh its notion +of the directory where python.exe/python3.exe lives, because that is +recorded when Python mode is started. + *** Visiting files in some auto-mounted directories causes Emacs to print 'Error reading dir-locals: (file-error "Read error" "is a directory" ...'