From 7b2ad8f199e52398c226413d515eccc589730ffa Mon Sep 17 00:00:00 2001 From: Mohsen Banan Date: Tue, 25 Apr 2023 14:49:28 -0700 Subject: [PATCH 1/7] ; Add missing <> line to TUTORIAL.fa. --- etc/tutorials/TUTORIAL.fa | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/etc/tutorials/TUTORIAL.fa b/etc/tutorials/TUTORIAL.fa index 5c9c0e1941a..1333b47cae2 100644 --- a/etc/tutorials/TUTORIAL.fa +++ b/etc/tutorials/TUTORIAL.fa @@ -15,13 +15,8 @@ برای خروج از یک فرمانِ ناکامل، C-g را تایپ کنید. برای توقف آموزش، C-x k و سپس در پاسخ به نشانگر را تایپ کنید. کاراکترهای ">>" در حاشیه سمت راست فرمانهایی را برای شمامشخص می کند. برای مثال: - - - +<<خطهای خالی بعد از خط بعدی توسط help-with-tutorial درج میشود>> [وسط صفحه برای اهداف آموزشی خالی مانده است. ادامه متن در زیر] - - - >> اکنون C-v را تایپ کنید (نمایش صفحه بعدی) تا یک صفحه کامل به پایین بروید. (این کار را با نگه داشتن کلید CONTROL و فشار کلید v انجام دهید). از این پس، لطفاً هر زمان که به انتهای صفحه رسیدید، این کار را انجام دهید. From b5ace2eed8066259b3aaef0c18652e280cdaefec Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 26 Apr 2023 09:39:35 +0300 Subject: [PATCH 2/7] Document problems with /bin/sh on Solaris 10 * etc/PROBLEMS (Solaris): Document problems with '/bin/sh'. Suggested by Paul Eggert . (Bug#63067) --- etc/PROBLEMS | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/etc/PROBLEMS b/etc/PROBLEMS index 3c75e81b8b9..c0cb5b0d8bb 100644 --- a/etc/PROBLEMS +++ b/etc/PROBLEMS @@ -2688,6 +2688,15 @@ Emacs so that it isn't compiled with '-O5'. We list bugs in current versions here. See also the section on legacy systems. +*** On Solaris 10, running 'configure' with "/bin/sh" produces errors. +The "/bin/sh" shell on Solaris is an ancient and non-POSIX shell, so +we recommend not to use it. The Emacs 'configure' script should find +an appropriate shell and re-exec itself with that shell, unless you +force it to use "/bin/sh" by using "CONFIG_SHELL=/bin/sh" on the +'configure' command line. So either don't use CONFIG_SHELL, or, if +you'd rather pick the shell yourself, choose "/bin/bash" or "/bin/ksh" +or "/usr/xpg4/bin/sh" instead. + *** On Solaris 10 sparc, Emacs crashes during the build while saving state. This was observed for Emacs 28.1 on Solaris 10 32-bit sparc, with Oracle Developer Studio 12.6 (Sun C 5.15). The failure was intermittent, From 10948948c12ec8698616c09f96225ee3b4fc32a5 Mon Sep 17 00:00:00 2001 From: Robert Pluim Date: Wed, 26 Apr 2023 12:27:30 +0200 Subject: [PATCH 3/7] Improve outline-default-state docstring * lisp/outline.el (outline-default-state): Explain which functions are available to affect heading visibility. --- lisp/outline.el | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lisp/outline.el b/lisp/outline.el index 0e90c59c285..97a51c9b92a 100644 --- a/lisp/outline.el +++ b/lisp/outline.el @@ -1500,8 +1500,10 @@ corresponding level. See `outline-default-rules' to customize visibility of the subtree at that level. If equal to a lambda function or function name, this function is -expected to toggle headings visibility, and will be -called without arguments after the mode is enabled." +expected to toggle headings visibility, and will be called +without arguments after the mode is enabled. Heading visibility +can be changed with functions such as `outline-show-subtree', +`outline-show-entry', `outline-hide-entry' etc." :version "29.1" :type '(choice (const :tag "Disabled" nil) (const :tag "Show all" outline-show-all) From af43f0a2954f4a4e735a6e3d159edc3392eaeb6c Mon Sep 17 00:00:00 2001 From: "F. Jason Park" Date: Fri, 21 Apr 2023 07:39:05 -0700 Subject: [PATCH 4/7] * doc/misc/erc.texi: Elaborate on upgrading via ELPA. --- doc/misc/erc.texi | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/doc/misc/erc.texi b/doc/misc/erc.texi index b80affbc954..ad30546c9d5 100644 --- a/doc/misc/erc.texi +++ b/doc/misc/erc.texi @@ -1477,10 +1477,30 @@ questions. You can also try the relatively quiet @samp{#erc}, on the same network, for more involved questions. @item +@anchor{Upgrading} You can check GNU ELPA between Emacs releases to see if a newer version is available that might contain a fix for your issue: @uref{https://elpa.gnu.org/packages/erc.html}. +To upgrade, run @kbd{M-x list-packages @key{RET}}. In the +@file{*Packages*} (@code{package-menu-mode}) buffer, click the +@samp{erc} package link for the desired version. If unsure, or if the +version column is too narrow to tell, try the bottom-most candidate. +In the resulting @code{help-mode} buffer, confirm the version and +click @samp{Install}. Make sure to restart Emacs before reconnecting +to IRC, and don't forget that you can roll back to the previous +version by running @kbd{M-x package-delete @key{RET}}. +@xref{Packages,,,emacs, the Emacs manual} for more information. + +In the rare instance you need an emergency fix or have volunteered to +test an edge feature between ERC releases, you can try adding +@samp{("devel" . "https://elpa.gnu.org/devel/")} to +@code{package-archives} prior to performing the steps above. For +this, you'll want to instead select a ``snapshot'' version from the +menu. Please be aware that when going this route, the latest changes +may not yet be available and you run the risk of incurring other bugs +and encountering unstable features. + @item To report a bug in ERC, use @kbd{M-x erc-bug}. From c46e93b1f50c9a6f7143f347d96a6385bcdf3a05 Mon Sep 17 00:00:00 2001 From: "F. Jason Park" Date: Fri, 21 Apr 2023 07:39:05 -0700 Subject: [PATCH 5/7] Explain ERC 5.5 regressions in new version 5.5.0.29.1 * doc/misc/erc.texi: Bump version to 5.5.0.29.1. * etc/ERC-NEWS: Don't hype bugged option `erc-reconnect-display'. * lisp/erc/erc-dcc.el (erc-dcc-do-GET-command): Add comment explaining parsing bug in ERC 5.5 (bug#62444). * lisp/erc/erc-networks.el (erc-networks-on-MOTD-end): Mention known /MOTD bug in error notice so people don't waste energy reporting it (bug#62151). * lisp/erc/erc.el: Change Version header to 5.5.0.29.1. Don't bother updating the `customize-package-emacs-version-alist' entry because no option defaults are affected. (erc-version): Change version to 5.5.0.29.1. (erc-reconnect-display, erc-query-on-unjoined-chan-privmsg): Add warning to doc strings and `custom-set' functions. It's believed that these bugs degrade the user experience significantly enough to warrant such mentions (bug#62833). (erc-query): Fix erroneous redirect string in deprecation spec. Do not merge to master. --- doc/misc/erc.texi | 2 +- etc/ERC-NEWS | 4 +--- lisp/erc/erc-dcc.el | 6 +++++- lisp/erc/erc-networks.el | 7 +++++-- lisp/erc/erc.el | 41 +++++++++++++++++++++++++++++++--------- 5 files changed, 44 insertions(+), 16 deletions(-) diff --git a/doc/misc/erc.texi b/doc/misc/erc.texi index ad30546c9d5..7f26b9ed181 100644 --- a/doc/misc/erc.texi +++ b/doc/misc/erc.texi @@ -2,7 +2,7 @@ @c %**start of header @setfilename ../../info/erc.info @settitle ERC Manual -@set ERCVER 5.5 +@set ERCVER 5.5.0.29.1 @set ERCDIST as distributed with Emacs @value{EMACSVER} @include docstyle.texi @syncodeindex fn cp diff --git a/etc/ERC-NEWS b/etc/ERC-NEWS index 434bfab94e9..9672a86345b 100644 --- a/etc/ERC-NEWS +++ b/etc/ERC-NEWS @@ -80,9 +80,7 @@ can now opt for an improved 'window-noselect' instead. It still offers the same pronounced visual cue when connecting and joining but now avoids any hijacking of the active window as well. -Beyond this, additional flexibility is now available for controlling -the behavior of newly created target buffers during reconnection. -See the option 'erc-reconnect-display' for more. +(Edited for ERC 5.5.0.29.1 in Emacs 29.1.) ** Improved handling of multiline prompt input. This means better detection and handling of intervening and trailing diff --git a/lisp/erc/erc-dcc.el b/lisp/erc/erc-dcc.el index 4c557e0e0f9..8fc30fddb46 100644 --- a/lisp/erc/erc-dcc.el +++ b/lisp/erc/erc-dcc.el @@ -508,7 +508,11 @@ At least one of TYPE and NICK must be provided." "Do a DCC GET command. NICK is the person who is sending the file. FILE is the filename. If FILE is split into multiple arguments, re-join the arguments, separated by a space. -PROC is the server process." +PROC is the server process. + +WARNING: the /DCC GET command is bugged in ERC 5.5 (Emacs 29). +File names containing the string \" -\" are not honored. If you +need a fix immediately, see Info node `(erc) Upgrading'." (let* ((args (seq-group-by (lambda (s) (eq ?- (aref s 0))) (cons nick file))) (flags (prog1 (cdr (assq t args)) (setq args (cdr (assq nil args)) diff --git a/lisp/erc/erc-networks.el b/lisp/erc/erc-networks.el index 95fd8990c99..e2ba59a3c47 100644 --- a/lisp/erc/erc-networks.el +++ b/lisp/erc/erc-networks.el @@ -1494,8 +1494,11 @@ to be a false alarm. If `erc-reuse-buffers' is nil, let (memq (erc--target-symbol erc--target) erc-networks--bouncer-targets))) proc) - (let ((m (concat "Unexpected state detected. Please report via " - (substitute-command-keys "\\[erc-bug]") "."))) + (let ((m (concat "Unexpected state detected. If you've just issued an" + " /MOTD, please know that the command is bugged in ERC" + " 5.5 (Emacs 29) but will be fixed in the next release." + " Otherwise, please report this occurrence via" + (substitute-command-keys " \\[erc-bug].")))) (erc-display-error-notice parsed m)))) ;; For now, retain compatibility with erc-server-NNN-functions. diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index 69bdb5d71b1..c7e1645ec26 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -12,7 +12,7 @@ ;; David Edmondson (dme@dme.org) ;; Michael Olson (mwolson@gnu.org) ;; Kelvin White (kwhite@gnu.org) -;; Version: 5.5 +;; Version: 5.5.0.29.1 ;; Package-Requires: ((emacs "27.1") (compat "29.1.3.4")) ;; Keywords: IRC, chat, client, Internet ;; URL: https://www.gnu.org/software/emacs/erc.html @@ -71,7 +71,7 @@ (require 'iso8601) (eval-when-compile (require 'subr-x) (require 'url-parse)) -(defconst erc-version "5.5" +(defconst erc-version "5.5.0.29.1" "This version of ERC.") (defvar erc-official-location @@ -1495,9 +1495,19 @@ The available choices are: This only affects automatic reconnections and is ignored when issuing a /reconnect command or reinvoking `erc-tls' with the same args (assuming success, of course). See `erc-join-buffer' -for a description of possible values." +for a description of possible values. + +WARNING: this option is bugged in ERC 5.5 (Emacs 29). Setting it +to anything other than nil results in the chosen value being +permanently adopted by all other buffer-display options for the +remainder of the ERC session. If you need this fixed +immediately, see Info node `(erc) Upgrading'." :package-version '(ERC . "5.5") :group 'erc-buffers + :set (lambda (sym val) + (when (set sym val) + (lwarn 'erc :warning "Setting `%s' to `%s' is currently bugged; %s" + sym val "see doc string for more information."))) :type '(choice (const :tag "Use value of `erc-join-buffer'" nil) (const :tag "Split window and select" window) (const :tag "Split window, don't select" window-noselect) @@ -4501,7 +4511,7 @@ See `erc-default-server-hook'." "Open a query buffer on TARGET using SERVER-BUFFER. To change how this query window is displayed, use `let' to bind `erc-join-buffer' before calling this." - (declare (obsolete "bind `erc-cmd-query' and call `erc-cmd-QUERY'" "29.1")) + (declare (obsolete "call `erc-open' in a live server buffer" "29.1")) (unless (buffer-live-p server-buffer) (error "Couldn't switch to server buffer")) (with-current-buffer server-buffer @@ -4524,16 +4534,29 @@ a new window, but not to select it. See the documentation for (const :tag "Use current buffer" buffer) (const :tag "Use current buffer" t))) -;; FIXME either retire this or put it to use after determining how -;; it's meant to work. Clearly, the doc string does not describe -;; current behavior. It's currently only used by the obsolete -;; function `erc-auto-query'. (defcustom erc-query-on-unjoined-chan-privmsg t "If non-nil create query buffer on receiving any PRIVMSG at all. This includes PRIVMSGs directed to channels. If you are using an IRC bouncer, such as dircproxy, to keep a log of channels when you are -disconnected, you should set this option to t." +disconnected, you should set this option to t. + +WARNING: this option was mistakenly removed from ERC 5.5's client +code, so setting it to nil is temporarily ineffective. That is, +ERC now always creates a buffer when receiving a PRIVMSG directed +at a channel for which none exists. And despite this option's +name and its doc string's use of \"query\" to refer to any +conversation with a target, it did not previously allow for +opting out of buffer creation for direct messages (at least not +in Emacs 27 and 28). However, such behavior has always been and +will continue to be available by setting `erc-auto-query' to nil. +If needing to restore pre-5.5 functionality immediately, see Info +node `(erc) Upgrading'." :group 'erc-query + :set (lambda (sym val) + (unless (set sym val) + (lwarn 'erc :warning + "Setting `%s' to nil is currently ineffective; %s" + sym "see doc string for details."))) :type 'boolean) (defcustom erc-format-query-as-channel-p t From 0e0fd0c38fd57ee206a681d96775f0014357eb71 Mon Sep 17 00:00:00 2001 From: Po Lu Date: Thu, 27 Apr 2023 18:50:47 +0800 Subject: [PATCH 6/7] Fix bootstrap on Unix * admin/charsets/Makefile.in (${charsetdir}/JISX0201.map): Use run_mapconv, which uses the correct awk. * admin/charsets/mapconv (LC_ALL): Don't place assignment in same line as export. --- admin/charsets/Makefile.in | 2 +- admin/charsets/mapconv | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/admin/charsets/Makefile.in b/admin/charsets/Makefile.in index 4c62bb19dc5..efb9106adad 100644 --- a/admin/charsets/Makefile.in +++ b/admin/charsets/Makefile.in @@ -181,7 +181,7 @@ ${charsetdir}/GB180304.map: ${charsetdir}/GB180302.map ${gb180304} ${AM_V_GEN}$(AWK) -f ${gb180304} < $< > $@ ${charsetdir}/JISX0201.map: ${GLIBC_CHARMAPS}/JIS_X0201.gz ${mapconv} ${compact} - ${AM_V_GEN}(${mapconv} $< '/^<.*[ ]\/x[0-9]/' GLIBC-1 ${compact} && \ + ${AM_V_GEN}(${run_mapconv} $< '/^<.*[ ]\/x[0-9]/' GLIBC-1 ${compact} && \ echo "# Generated by hand" && \ echo "0xA1-0xDF 0xFF61" ) > $@ diff --git a/admin/charsets/mapconv b/admin/charsets/mapconv index 4a68d3da53b..f44d72d3850 100755 --- a/admin/charsets/mapconv +++ b/admin/charsets/mapconv @@ -38,7 +38,8 @@ ## So that eg [A-F] as used by KANJI-DATABASE branch below works as expected. ## Otherwise with LANG=en_US.utf8, CNS-6.map was generated with a ## bogus entry. By experiment, LC_COLLATE=C was not enough. -export LC_ALL=C +LC_ALL=c +export LC_ALL BASE=`expr "$1" : '.*/\(.*\)' '|' "$1"` # basename FILE="admin/charsets/mapfiles/$BASE" From 521386f9201d0cacfcc857f7ef7cc1e5e586705a Mon Sep 17 00:00:00 2001 From: Po Lu Date: Thu, 27 Apr 2023 18:51:40 +0800 Subject: [PATCH 7/7] ; * admin/charsets/mapconv (LC_ALL): Fix typo. --- admin/charsets/mapconv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin/charsets/mapconv b/admin/charsets/mapconv index f44d72d3850..19e2ff8d8f7 100755 --- a/admin/charsets/mapconv +++ b/admin/charsets/mapconv @@ -38,7 +38,7 @@ ## So that eg [A-F] as used by KANJI-DATABASE branch below works as expected. ## Otherwise with LANG=en_US.utf8, CNS-6.map was generated with a ## bogus entry. By experiment, LC_COLLATE=C was not enough. -LC_ALL=c +LC_ALL=C export LC_ALL BASE=`expr "$1" : '.*/\(.*\)' '|' "$1"` # basename