From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 25 18:57:11 2019 Received: (at submit) by debbugs.gnu.org; 25 Nov 2019 23:57:12 +0000 Received: from localhost ([127.0.0.1]:49966 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZOEB-0007u1-9m for submit@debbugs.gnu.org; Mon, 25 Nov 2019 18:57:11 -0500 Received: from lists.gnu.org ([209.51.188.17]:51449) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZOE9-0007ts-8g for submit@debbugs.gnu.org; Mon, 25 Nov 2019 18:57:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:50263) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iZOE6-0003j9-Pg for bug-gnu-emacs@gnu.org; Mon, 25 Nov 2019 18:57:09 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_50,RCVD_IN_DNSWL_MED, URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iZOE4-0008CE-DY for bug-gnu-emacs@gnu.org; Mon, 25 Nov 2019 18:57:06 -0500 Received: from ericabrahamsen.net ([52.70.2.18]:56120 helo=mail.ericabrahamsen.net) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iZOE4-000892-6g for bug-gnu-emacs@gnu.org; Mon, 25 Nov 2019 18:57:04 -0500 Received: from localhost (unknown [205.175.106.123]) (Authenticated sender: eric@ericabrahamsen.net) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id EBA98FA0E4 for ; Mon, 25 Nov 2019 23:56:56 +0000 (UTC) From: Eric Abrahamsen To: bug-gnu-emacs@gnu.org Subject: 27.0.50; Bump Gnus version to 5.14, properly encode group names on disk X-Debbugs-CC: larsi@gnus.org Date: Mon, 25 Nov 2019 15:56:55 -0800 Message-ID: <87blszy0fs.fsf@ericabrahamsen.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 52.70.2.18 X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) --=-=-= Content-Type: text/plain As part of switching Gnus group names to fully-decoded strings, I left some code (really horrible code) in place to make sure that the group names stayed in their previous encoding in Gnus' save files, so that people running Emacs from git builds could switch back and forth without worrying about the save files becoming unreadable. Right now, there are several routines in place that decode non-ascii group names on file read, and re-encode them on file write. This only has an effect on non-ascii group names. Now Emacs 27.1 is on its way, and I would really like to make this change permanent. The attached patch moves all the ugly compatibility code into an upgrade routine as part of `gnus-convert-old-newsrc'. Users will be prompted once to upgrade, and then the various files will be fixed to use properly encoded group names, and you won't be able to go back. Again, this only affects users who had non-ascii group names to begin with. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Encode-Gnus-group-names-properly-on-disk-bump-Gnus-v.patch >From 7a5194edff2d69cfcd8f5ee2bdec61bc12c1a11b Mon Sep 17 00:00:00 2001 From: Eric Abrahamsen Date: Sun, 24 Nov 2019 16:34:00 -0800 Subject: [PATCH] Encode Gnus group names properly on disk, bump Gnus version to 5.14 * lisp/gnus/gnus.el (gnus-version-number): Bump to 5.14 to trigger upgrade routines. * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc): Check for new version. (gnus-convert-encoded-group-names, gnus-convert-encoded-category-group-names, gnus-convert-encoded-registry-group-names): Do a one-time conversion of encoded group names read from various persistence files. (gnus-read-newsrc-el-file, gnus-gnus-to-quick-newsrc-format): Stop doing the work here. * lisp/gnus/gnus-agent.el (gnus-category-read, gnus-category-write): Don't check group names. * lisp/gnus/gnus-registry.el (gnus-registry--munge-group-names): Remove function. (gnus-registry-save, gnus-registry-fixup-registry): Don't call it. --- lisp/gnus/gnus-agent.el | 46 ++++---------- lisp/gnus/gnus-registry.el | 50 +-------------- lisp/gnus/gnus-start.el | 124 +++++++++++++++++++++++++------------ lisp/gnus/gnus.el | 4 +- 4 files changed, 101 insertions(+), 123 deletions(-) diff --git a/lisp/gnus/gnus-agent.el b/lisp/gnus/gnus-agent.el index 1f25255278..768b3beaa6 100644 --- a/lisp/gnus/gnus-agent.el +++ b/lisp/gnus/gnus-agent.el @@ -2721,14 +2721,6 @@ gnus-category-read '(agent-predicate agent-score-file agent-groups)))) c) old-list))))))) - ;; Possibly decode group names. - (dolist (cat list) - (setf (alist-get 'agent-groups cat) - (mapcar (lambda (g) - (if (string-match-p "[^[:ascii:]]" g) - (decode-coding-string g 'utf-8-emacs) - g)) - (alist-get 'agent-groups cat)))) list) (list (gnus-agent-cat-make 'default 'short))))) @@ -2736,31 +2728,19 @@ gnus-category-write "Write the category alist." (setq gnus-category-predicate-cache nil gnus-category-group-cache nil) - ;; Temporarily encode non-ascii group names when saving to file, - ;; pending an upgrade of Gnus' file formats. - (let ((gnus-category-alist - (mapcar (lambda (cat) - (setf (alist-get 'agent-groups cat) - (mapcar (lambda (g) - (if (multibyte-string-p g) - (encode-coding-string g 'utf-8-emacs) - g)) - (alist-get 'agent-groups cat))) - cat) - (copy-tree gnus-category-alist)))) - (gnus-make-directory (nnheader-concat gnus-agent-directory "lib")) - (with-temp-file (nnheader-concat gnus-agent-directory "lib/categories") - ;; This prin1 is temporary. It exists so that people can revert - ;; to an earlier version of gnus-agent. - (prin1 (mapcar (lambda (c) - (list (car c) - (cdr (assoc 'agent-predicate c)) - (cdr (assoc 'agent-score-file c)) - (cdr (assoc 'agent-groups c)))) - gnus-category-alist) - (current-buffer)) - (newline) - (prin1 gnus-category-alist (current-buffer))))) + (gnus-make-directory (nnheader-concat gnus-agent-directory "lib")) + (with-temp-file (nnheader-concat gnus-agent-directory "lib/categories") + ;; This prin1 is temporary. It exists so that people can revert + ;; to an earlier version of gnus-agent. + (prin1 (mapcar (lambda (c) + (list (car c) + (cdr (assoc 'agent-predicate c)) + (cdr (assoc 'agent-score-file c)) + (cdr (assoc 'agent-groups c)))) + gnus-category-alist) + (current-buffer)) + (newline) + (prin1 gnus-category-alist (current-buffer)))) (defun gnus-category-edit-predicate (category) "Edit the predicate for CATEGORY." diff --git a/lisp/gnus/gnus-registry.el b/lisp/gnus/gnus-registry.el index e6fb382c2f..7691e3e916 100644 --- a/lisp/gnus/gnus-registry.el +++ b/lisp/gnus/gnus-registry.el @@ -266,47 +266,7 @@ gnus-registry-sort-by-creation-time ;; Remove this from the save routine (and fix it to only decode) at ;; next Gnus version bump. -(defun gnus-registry--munge-group-names (db &optional encode) - "Encode/decode group names in DB, before saving or after loading. -Encode names if ENCODE is non-nil, otherwise decode." - (let ((datahash (slot-value db 'data)) - (grouphash (registry-lookup-secondary db 'group)) - reset-pairs) - (when (hash-table-p grouphash) - (maphash - (lambda (group-name val) - (if encode - (when (multibyte-string-p group-name) - (remhash group-name grouphash) - (puthash (encode-coding-string group-name 'utf-8-emacs) - val grouphash)) - (when (string-match-p "[^[:ascii:]]" group-name) - (remhash group-name grouphash) - (puthash (decode-coding-string group-name 'utf-8-emacs) val grouphash)))) - grouphash)) - (maphash - (lambda (id data) - (let ((groups (cdr-safe (assq 'group data)))) - (when (seq-some (lambda (g) - (if encode - (multibyte-string-p g) - (string-match-p "[^[:ascii:]]" g))) - groups) - ;; Create a replacement DATA. - (push (list id (cons (cons 'group (mapcar - (lambda (g) - (funcall - (if encode - #'encode-coding-string - #'decode-coding-string) - g 'utf-8-emacs)) - groups)) - (assq-delete-all 'group data))) - reset-pairs)))) - datahash) - (pcase-dolist (`(,id ,data) reset-pairs) - (remhash id datahash) - (puthash id data datahash)))) + (defun gnus-registry-fixup-registry (db) (when db @@ -325,8 +285,7 @@ gnus-registry-fixup-registry '(mark group keyword))) (when (not (equal old (oref db tracked))) (gnus-message 9 "Reindexing the Gnus registry (tracked change)") - (registry-reindex db)) - (gnus-registry--munge-group-names db))) + (registry-reindex db)))) db) (defun gnus-registry-make-db (&optional file) @@ -410,11 +369,6 @@ gnus-registry-save (registry-size db) file) (registry-prune db gnus-registry-default-sort-function) - ;; Write a clone of the database with non-ascii group names - ;; encoded as 'utf-8. Let-bind `gnus-registry-db' so that - ;; functions in the munging process work on our clone. - (let ((gnus-registry-db clone)) - (gnus-registry--munge-group-names clone 'encode)) ;; TODO: call (gnus-string-remove-all-properties v) on all elements? (eieio-persistent-save clone file) (gnus-message 5 "Saving Gnus registry (size %d) to %s...done" diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el index e142c438ee..776f60f972 100644 --- a/lisp/gnus/gnus-start.el +++ b/lisp/gnus/gnus-start.el @@ -36,6 +36,10 @@ (autoload 'gnus-agent-save-local "gnus-agent") (autoload 'gnus-agent-possibly-alter-active "gnus-agent") (declare-function gnus-group-decoded-name "gnus-group" (string)) +(declare-function eieio-object-p "eieio-core" (obj)) +(declare-function slot-value "eieio" (obj slot)) +(declare-function registry-lookup-secondary "registry" + (db tracksym &optional create)) (eval-when-compile (require 'cl-lib)) @@ -43,6 +47,9 @@ gnus-agent-covered-methods (defvar gnus-agent-file-loading-local) (defvar gnus-agent-file-loading-cache) (defvar gnus-topic-alist) +(defvar gnus-category-alist) +(defvar gnus-registry-enabled) +(defvar gnus-registry-db) (defcustom gnus-startup-file (nnheader-concat gnus-home-directory ".newsrc") "Your `.newsrc' file. @@ -1824,17 +1831,13 @@ gnus-make-hashtable-from-newsrc-alist gnus-newsrc-alist (cons (list "dummy.group" 0 nil) alist)))) (while alist - (setq info (car alist)) + (setq info (car alist) + gname (car info)) ;; Make the same select-methods identical Lisp objects. (when (setq method (gnus-info-method info)) (if (setq rest (member method methods)) (gnus-info-set-method info (car rest)) (push method methods))) - ;; Check for encoded group names and decode them. - (when (string-match-p "[^[:ascii:]]" (setq gname (car info))) - (let ((decoded (gnus-group-decoded-name gname))) - (setf gname decoded - (car info) decoded))) ;; Check for duplicates. (if (gethash gname gnus-newsrc-hashtb) ;; Remove this entry from the alist. @@ -2295,7 +2298,9 @@ gnus-convert-old-newsrc ("Gnus v5.10.7" "legacy-gnus-agent" gnus-agent-unlist-expire-days) ("Gnus v5.10.7" "legacy-gnus-agent" - gnus-agent-unhook-expire-days))) + gnus-agent-unhook-expire-days) + ("Gnus v5.14" nil + gnus-convert-encoded-group-names))) #'car-less-than-car))) ;; Skip converters older than the file version (while (and converters (>= fcv (caar converters))) @@ -2369,6 +2374,78 @@ gnus-convert-old-ticks (nconc (gnus-uncompress-range dormant) (gnus-uncompress-range ticked))))))))) +(defun gnus-convert-encoded-group-names (_converting-to) + "Decode encoded group names. +Non-ascii group names were previously stored on disk as encoded +bytes. This conversion makes sure names are encoded/decoded +properly." + (setq gnus-group-list + ;; Edit group names in `gnus-group-list', and incidentally + ;; edit them in `gnus-newsrc-hashtb' and `gnus-newsrc-alist', + ;; as well. + (mapcar + (lambda (gname) + (if (string-match-p "[^[:ascii:]]" gname) + (let ((decoded (gnus-group-decoded-name gname)) + (entry (gethash gname gnus-newsrc-hashtb))) + ;; First doctor the entry -- this will also touch + ;; `gnus-newsrc-alist'. + (setcar (nth 1 entry) decoded) + ;; Then re-hash. + (remhash gname gnus-newsrc-hashtb) + (puthash decoded entry gnus-newsrc-hashtb) + decoded) + gname)) + gnus-group-list)) + (add-hook 'gnus-agent-mode-hook #'gnus-convert-encoded-category-group-names) + (add-hook 'gnus-started-hook #'gnus-convert-encoded-registry-group-names)) + +(defun gnus-convert-encoded-category-group-names () + "Possibly decode group names stored in the agent category." + (when gnus-category-alist + (mapc (lambda (category) + (setf (alist-get 'agent-groups category) + (mapcar (lambda (g) + (if (string-match-p "[^[:ascii:]]" g) + (decode-coding-string g 'utf-8-emacs) + g)) + (alist-get 'agent-groups category)))) + gnus-category-alist))) + +(defun gnus-convert-encoded-registry-group-names () + "Possibly decode group names in the Gnus registry file." + (when (and (featurep 'gnus-registry) + gnus-registry-enabled + (eieio-object-p gnus-registry-db)) + (let ((datahash (slot-value gnus-registry-db 'data)) + (grouphash (registry-lookup-secondary gnus-registry-db 'group)) + reset-pairs) + (when (hash-table-p grouphash) + (maphash + (lambda (group-name val) + (when (string-match-p "[^[:ascii:]]" group-name) + (remhash group-name grouphash) + (puthash (decode-coding-string group-name 'utf-8-emacs) val grouphash))) + grouphash)) + (maphash + (lambda (id data) + (let ((groups (cdr-safe (assq 'group data)))) + (when (seq-some (lambda (g) + (string-match-p "[^[:ascii:]]" g)) + groups) + ;; Create a replacement DATA. + (push (list id (cons (cons 'group (mapcar + (lambda (g) + (decode-coding-string + g 'utf-8-emacs)) + groups)) + (assq-delete-all 'group data))) + reset-pairs)))) + datahash) + (pcase-dolist (`(,id ,data) reset-pairs) + (remhash id datahash) + (puthash id data datahash))))) + (defun gnus-load (file) "Load FILE, but in such a way that read errors can be reported." (with-temp-buffer @@ -2403,17 +2480,6 @@ gnus-read-newsrc-el-file (when gnus-newsrc-assoc (setq gnus-newsrc-alist gnus-newsrc-assoc)))) (gnus-make-hashtable-from-newsrc-alist) - (when gnus-topic-alist - (setq gnus-topic-alist - (mapcar - (lambda (elt) - (cons (car elt) - (mapcar (lambda (g) - (if (string-match-p "[^[:ascii:]]" g) - (gnus-group-decoded-name g) - g)) - (cdr elt)))) - gnus-topic-alist))) (when (file-newer-than-file-p file ding-file) ;; Old format quick file (gnus-message 5 "Reading %s..." file) @@ -2878,8 +2944,6 @@ gnus-gnus-to-quick-newsrc-format (delete "dummy.group" gnus-group-list))) (let* ((print-quoted t) (print-readably t) - (print-escape-multibyte nil) - (print-escape-nonascii t) (print-length nil) (print-level nil) (print-circle nil) @@ -2895,26 +2959,6 @@ gnus-gnus-to-quick-newsrc-format ;; Remove the `gnus-killed-list' from the list of variables ;; to be saved, if required. (delq 'gnus-killed-list (copy-sequence gnus-variable-list))))) - ;; Encode group names in `gnus-newsrc-alist' and - ;; `gnus-topic-alist' in order to keep newsrc.eld files - ;; compatible with older versions of Gnus. At some point, - ;; if/when a new version of Gnus is released, stop doing - ;; this and move the corresponding decode in - ;; `gnus-read-newsrc-el-file' into a conversion routine. - (gnus-newsrc-alist - (mapcar (lambda (info) - (cons (encode-coding-string (car info) 'utf-8-emacs) - (cdr info))) - gnus-newsrc-alist)) - (gnus-topic-alist - (when (memq 'gnus-topic-alist variables) - (mapcar (lambda (elt) - (cons (car elt) ; Topic name - (mapcar (lambda (g) - (encode-coding-string - g 'utf-8-emacs)) - (cdr elt)))) - gnus-topic-alist))) variable) ;; Insert the variables into the file. (while variables diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index 0673ac15f6..90b70e0923 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el @@ -6,7 +6,7 @@ ;; Author: Masanobu UMEDA ;; Lars Magne Ingebrigtsen ;; Keywords: news, mail -;; Version: 5.13 +;; Version: 5.14 ;; This file is part of GNU Emacs. @@ -292,7 +292,7 @@ gnus-fun :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) -(defconst gnus-version-number "5.13" +(defconst gnus-version-number "5.14" "Version number for this version of Gnus.") (defconst gnus-version (format "Gnus v%s" gnus-version-number) -- 2.24.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 25 19:02:48 2019 Received: (at 38381) by debbugs.gnu.org; 26 Nov 2019 00:02:48 +0000 Received: from localhost ([127.0.0.1]:49972 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZOJc-00083X-C4 for submit@debbugs.gnu.org; Mon, 25 Nov 2019 19:02:48 -0500 Received: from quimby.gnus.org ([95.216.78.240]:57206) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZOJa-00083J-7a for 38381@debbugs.gnu.org; Mon, 25 Nov 2019 19:02:46 -0500 Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=marnie) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1iZOJR-0007Nd-Qv; Tue, 26 Nov 2019 01:02:40 +0100 From: Lars Ingebrigtsen To: Eric Abrahamsen Subject: Re: bug#38381: 27.0.50; Bump Gnus version to 5.14, properly encode group names on disk References: <87blszy0fs.fsf@ericabrahamsen.net> Date: Tue, 26 Nov 2019 01:02:37 +0100 In-Reply-To: <87blszy0fs.fsf@ericabrahamsen.net> (Eric Abrahamsen's message of "Mon, 25 Nov 2019 15:56:55 -0800") Message-ID: <87ftibjyhu.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Eric Abrahamsen writes: > Now Emacs 27.1 is on its way, and I would really like to make this > change permanent. The attached patch moves all the ugly compatibility > code into an upgrade routine as part of `gnus-convert-old [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [URIs: ericabrahamsen.net] -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 38381 Cc: 38381@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eric Abrahamsen writes: > Now Emacs 27.1 is on its way, and I would really like to make this > change permanent. The attached patch moves all the ugly compatibility > code into an upgrade routine as part of `gnus-convert-old-newsrc'. Users > will be prompted once to upgrade, and then the various files will be > fixed to use properly encoded group names, and you won't be able to go > back. I don't think that's a good idea. The .newsrc.eld file should remain backwards compatible -- people do move back and forth between newer and older versions of Emacs. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 25 19:50:21 2019 Received: (at 38381) by debbugs.gnu.org; 26 Nov 2019 00:50:21 +0000 Received: from localhost ([127.0.0.1]:49988 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZP3d-0000hY-Fy for submit@debbugs.gnu.org; Mon, 25 Nov 2019 19:50:21 -0500 Received: from ericabrahamsen.net ([52.70.2.18]:59216 helo=mail.ericabrahamsen.net) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZP3b-0000hI-Ih for 38381@debbugs.gnu.org; Mon, 25 Nov 2019 19:50:20 -0500 Received: from localhost (c-73-254-86-141.hsd1.wa.comcast.net [73.254.86.141]) (Authenticated sender: eric@ericabrahamsen.net) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id 303D0FA087; Tue, 26 Nov 2019 00:50:13 +0000 (UTC) From: Eric Abrahamsen To: Lars Ingebrigtsen Subject: Re: bug#38381: 27.0.50; Bump Gnus version to 5.14, properly encode group names on disk References: <87blszy0fs.fsf@ericabrahamsen.net> <87ftibjyhu.fsf@gnus.org> Date: Mon, 25 Nov 2019 16:50:11 -0800 In-Reply-To: <87ftibjyhu.fsf@gnus.org> (Lars Ingebrigtsen's message of "Tue, 26 Nov 2019 01:02:37 +0100") Message-ID: <877e3nxxz0.fsf@ericabrahamsen.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 38381 Cc: 38381@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Lars Ingebrigtsen writes: > Eric Abrahamsen writes: > >> Now Emacs 27.1 is on its way, and I would really like to make this >> change permanent. The attached patch moves all the ugly compatibility >> code into an upgrade routine as part of `gnus-convert-old-newsrc'. Users >> will be prompted once to upgrade, and then the various files will be >> fixed to use properly encoded group names, and you won't be able to go >> back. > > I don't think that's a good idea. The .newsrc.eld file should remain > backwards compatible -- people do move back and forth between newer and > older versions of Emacs. Okay, but there is a whole upgrade mechanism in place that's specifically for upgrading the .newsrc.eld file to a new version, so this wouldn't be the first time it's happened. That said, the current situation seems to be working fine; if we've got to keep it, we've got to keep it. I'd like to keep this bug report open, though. Eric From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 25 20:11:56 2019 Received: (at 38381) by debbugs.gnu.org; 26 Nov 2019 01:11:56 +0000 Received: from localhost ([127.0.0.1]:50005 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZPOW-0001CD-IT for submit@debbugs.gnu.org; Mon, 25 Nov 2019 20:11:56 -0500 Received: from quimby.gnus.org ([95.216.78.240]:57876) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZPOU-0001C0-UO for 38381@debbugs.gnu.org; Mon, 25 Nov 2019 20:11:55 -0500 Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=marnie) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1iZPOL-00082q-VZ; Tue, 26 Nov 2019 02:11:48 +0100 From: Lars Ingebrigtsen To: Eric Abrahamsen Subject: Re: bug#38381: 27.0.50; Bump Gnus version to 5.14, properly encode group names on disk References: <87blszy0fs.fsf@ericabrahamsen.net> <87ftibjyhu.fsf@gnus.org> <877e3nxxz0.fsf@ericabrahamsen.net> Date: Tue, 26 Nov 2019 02:11:45 +0100 In-Reply-To: <877e3nxxz0.fsf@ericabrahamsen.net> (Eric Abrahamsen's message of "Mon, 25 Nov 2019 16:50:11 -0800") Message-ID: <87a78jjvam.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Eric Abrahamsen writes: > Okay, but there is a whole upgrade mechanism in place that's > specifically for upgrading the .newsrc.eld file to a new version, so > this wouldn't be the first time it's happened. Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [URIs: ericabrahamsen.net] -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 38381 Cc: 38381@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eric Abrahamsen writes: > Okay, but there is a whole upgrade mechanism in place that's > specifically for upgrading the .newsrc.eld file to a new version, so > this wouldn't be the first time it's happened. It's only been used once, back in... what... 1996? (There's other converters for agentey stuff, but that's not very impactful.) And if I remember correctly, it wasn't backwards-incompatible... just forwards-incompatible. > That said, the current situation seems to be working fine; if we've got > to keep it, we've got to keep it. I'd like to keep this bug report open, > though. If we're not going to do conversion like that, I don't see much point in keeping the bug report open? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 25 23:26:51 2019 Received: (at 38381) by debbugs.gnu.org; 26 Nov 2019 04:26:51 +0000 Received: from localhost ([127.0.0.1]:50097 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZSR9-0001Up-1X for submit@debbugs.gnu.org; Mon, 25 Nov 2019 23:26:51 -0500 Received: from ericabrahamsen.net ([52.70.2.18]:35776 helo=mail.ericabrahamsen.net) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZSR6-0001Ub-Ia for 38381@debbugs.gnu.org; Mon, 25 Nov 2019 23:26:49 -0500 Received: from localhost (c-73-254-86-141.hsd1.wa.comcast.net [73.254.86.141]) (Authenticated sender: eric@ericabrahamsen.net) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id ED4A0FA087; Tue, 26 Nov 2019 04:26:41 +0000 (UTC) From: Eric Abrahamsen To: Lars Ingebrigtsen Subject: Re: bug#38381: 27.0.50; Bump Gnus version to 5.14, properly encode group names on disk References: <87blszy0fs.fsf@ericabrahamsen.net> <87ftibjyhu.fsf@gnus.org> <877e3nxxz0.fsf@ericabrahamsen.net> <87a78jjvam.fsf@gnus.org> Date: Mon, 25 Nov 2019 20:26:40 -0800 In-Reply-To: <87a78jjvam.fsf@gnus.org> (Lars Ingebrigtsen's message of "Tue, 26 Nov 2019 02:11:45 +0100") Message-ID: <87sgmbw9dr.fsf@ericabrahamsen.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 38381 Cc: 38381@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Lars Ingebrigtsen writes: > Eric Abrahamsen writes: > >> Okay, but there is a whole upgrade mechanism in place that's >> specifically for upgrading the .newsrc.eld file to a new version, so >> this wouldn't be the first time it's happened. > > It's only been used once, back in... what... 1996? (There's other > converters for agentey stuff, but that's not very impactful.) And if I > remember correctly, it wasn't backwards-incompatible... just > forwards-incompatible. > >> That said, the current situation seems to be working fine; if we've got >> to keep it, we've got to keep it. I'd like to keep this bug report open, >> though. > > If we're not going to do conversion like that, I don't see much point in > keeping the bug report open? One can hope... Never mind. From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 25 23:31:17 2019 Received: (at control) by debbugs.gnu.org; 26 Nov 2019 04:31:17 +0000 Received: from localhost ([127.0.0.1]:50101 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZSVR-0001cP-IA for submit@debbugs.gnu.org; Mon, 25 Nov 2019 23:31:17 -0500 Received: from ericabrahamsen.net ([52.70.2.18]:35886 helo=mail.ericabrahamsen.net) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iZSVQ-0001cD-EB for control@debbugs.gnu.org; Mon, 25 Nov 2019 23:31:16 -0500 Received: from slip (c-73-254-86-141.hsd1.wa.comcast.net [73.254.86.141]) (Authenticated sender: eric@ericabrahamsen.net) by mail.ericabrahamsen.net (Postfix) with ESMTPSA id DC681FA087 for ; Tue, 26 Nov 2019 04:31:10 +0000 (UTC) Date: Mon, 25 Nov 2019 20:28:11 -0800 Message-Id: <87r21vw9b8.fsf@ericabrahamsen.net> To: control@debbugs.gnu.org From: Eric Abrahamsen Subject: control message for bug #38381 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) tags 38381 wontfix close 38381 quit From unknown Mon Jun 23 04:13:26 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 24 Dec 2019 12:24:06 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator