[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#33005: 27.0.50; Data loss with Gnus registry
From: |
Michael Heerdegen |
Subject: |
bug#33005: 27.0.50; Data loss with Gnus registry |
Date: |
Fri, 18 Oct 2019 11:18:54 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) |
Eric Abrahamsen <eric@ericabrahamsen.net> writes:
> 1. Put a breakpoint or edebug or otherwise slow the function down, and
> after the data directory has been copied to /tmp, make sure that it
> belongs to your user and you have the right permissions?
That's the case.
> 2. Try this version of gnus-mock-start and see if it works:
I did something different. Seems that so-long is to blame:
| Debugger entered--entering a function:
| * hack-local-variables(no-mode)
| run-mode-hooks(so-long-mode-hook)
| #f(compiled-function () (interactive nil) #<bytecode 0x156db2ff061d>)()
| apply(#f(compiled-function () (interactive nil) #<bytecode 0x156db2ff061d>)
nil)
| so-long-mode()
| so-long()
| so-long--set-auto-mode((closure (t) (&optional keep-mode-if-same) "Select
major mode appropriate for current buffer.\n..." (let ((try-locals (not
(inhibit-local-variables-p))) end done mode modes) (save-excursion (goto-char
(point-min)) (skip-chars-forward " \11\n") (and enable-local-variables
try-locals (setq end (set-auto-mode-1)) (if (save-excursion (search-forward ":"
end t)) (while (let ... ...) (skip-chars-forward " \11") (let ... ... ... ...))
(setq modes (cons ... modes))))) (if modes (catch 'nop (let ((--dolist-tail--
...)) (while --dolist-tail-- (let ... ... ...))))) (and (not done)
enable-local-variables local-enable-local-variables try-locals (setq mode
(hack-local-variables t)) (not (memq mode modes)) (if (not (functionp mode))
(message "Ignoring unknown mode `%s'" mode) (setq done t) (set-auto-mode-0 mode
keep-mode-if-same))) (and (not done) (setq mode (save-excursion (goto-char
(point-min)) (if (looking-at auto-mode-interpreter-regexp) (match-string 2))))
(setq done (assoc-default (file-name-nondirectory mode) (mapcar #'...
interpreter-mode-alist) #'string-match-p)) (set-auto-mode-0 done
keep-mode-if-same)) (if done nil (if (setq done (save-excursion (goto-char ...)
(save-restriction ... ...))) (set-auto-mode-0 done keep-mode-if-same))) (if
done nil (if buffer-file-name (let ((name buffer-file-name) (remote-id ...)
(case-insensitive-p ...)) (setq name (file-name-sans-versions name)) (if (and
... ...) (progn ...)) (while name (setq mode ...) (if ... ... ...) (if mode
...))))) (if done nil (if (setq done (save-excursion (goto-char ...)
(save-restriction ... ...))) (set-auto-mode-0 done keep-mode-if-same))) (if
done nil (set-buffer-major-mode (current-buffer))))) t)
| apply(so-long--set-auto-mode (closure (t) (&optional keep-mode-if-same)
"Select major mode appropriate for current buffer.\n..." (let ((try-locals (not
(inhibit-local-variables-p))) end done mode modes) (save-excursion (goto-char
(point-min)) (skip-chars-forward " \11\n") (and enable-local-variables
try-locals (setq end (set-auto-mode-1)) (if (save-excursion (search-forward ":"
end t)) (while (let ... ...) (skip-chars-forward " \11") (let ... ... ... ...))
(setq modes (cons ... modes))))) (if modes (catch 'nop (let ((--dolist-tail--
...)) (while --dolist-tail-- (let ... ... ...))))) (and (not done)
enable-local-variables local-enable-local-variables try-locals (setq mode
(hack-local-variables t)) (not (memq mode modes)) (if (not (functionp mode))
(message "Ignoring unknown mode `%s'" mode) (setq done t) (set-auto-mode-0 mode
keep-mode-if-same))) (and (not done) (setq mode (save-excursion (goto-char
(point-min)) (if (looking-at auto-mode-interpreter-regexp) (match-string 2))))
(setq done (assoc-default (file-name-nondirectory mode) (mapcar #'...
interpreter-mode-alist) #'string-match-p)) (set-auto-mode-0 done
keep-mode-if-same)) (if done nil (if (setq done (save-excursion (goto-char ...)
(save-restriction ... ...))) (set-auto-mode-0 done keep-mode-if-same))) (if
done nil (if buffer-file-name (let ((name buffer-file-name) (remote-id ...)
(case-insensitive-p ...)) (setq name (file-name-sans-versions name)) (if (and
... ...) (progn ...)) (while name (setq mode ...) (if ... ... ...) (if mode
...))))) (if done nil (if (setq done (save-excursion (goto-char ...)
(save-restriction ... ...))) (set-auto-mode-0 done keep-mode-if-same))) (if
done nil (set-buffer-major-mode (current-buffer))))) t)
| #f(advice-wrapper :around (closure (t) (&optional keep-mode-if-same)
"Select major mode appropriate for current buffer.\n\nTo find the right major
mode, this function checks for a -*- mode tag\nchecks for a `mode:' entry in
the Local Variables section of the file,\nchecks if it uses an interpreter
listed in `interpreter-mode-alist',\nmatches the buffer beginning against
`magic-mode-alist',\ncompares the filename against the entries in
`auto-mode-alist',\nthen matches the buffer beginning against
`magic-fallback-mode-alist'.\n\nIf `enable-local-variables' is nil, or if the
file name matches\n`inhibit-local-variables-regexps', this function does not
check\nfor any mode: tag anywhere in the file. If
`local-enable-local-variables'\nis nil, then the only mode: tag that can be
relevant is a -*- one.\n\nIf the optional argument KEEP-MODE-IF-SAME is
non-nil, then we\nset the major mode only if that would change it. In other
words\nwe don't actually set it to the same mode the buffer already has." (let
((try-locals (not (inhibit-local-variables-p))) end done mode modes)
(save-excursion (goto-char (point-min)) (skip-chars-forward " \11\n") (and
enable-local-variables try-locals (setq end (set-auto-mode-1)) (if
(save-excursion (search-forward ":" end t)) (while (let ((case-fold-search t))
(or (and (looking-at "mode:") (goto-char (match-end 0))) (re-search-forward "[
\11;]mode:" end t))) (skip-chars-forward " \11") (let ((beg (point))) (if
(search-forward ";" end t) (forward-char -1) (goto-char end))
(skip-chars-backward " \11") (setq modes (cons (intern (concat (downcase
(buffer-substring beg (point))) "-mode")) modes)))) (setq modes (cons (intern
(concat (downcase (buffer-substring (point) end)) "-mode")) modes))))) (if
modes (catch 'nop (let ((--dolist-tail-- (nreverse modes))) (while
--dolist-tail-- (let ((mode (car --dolist-tail--))) (if (not (functionp mode))
(message "Ignoring unknown mode `%s'" mode) (setq done t) (or (set-auto-mode-0
mode keep-mode-if-same) (throw 'nop nil))) (setq --dolist-tail-- (cdr
--dolist-tail--))))))) (and (not done) enable-local-variables
local-enable-local-variables try-locals (setq mode (hack-local-variables t))
(not (memq mode modes)) (if (not (functionp mode)) (message "Ignoring unknown
mode `%s'" mode) (setq done t) (set-auto-mode-0 mode keep-mode-if-same))) (and
(not done) (setq mode (save-excursion (goto-char (point-min)) (if (looking-at
auto-mode-interpreter-regexp) (match-string 2)))) (setq done (assoc-default
(file-name-nondirectory mode) (mapcar #'(lambda (e) (cons (format "\\`%s\\'"
(car e)) (cdr e))) interpreter-mode-alist) #'string-match-p)) (set-auto-mode-0
done keep-mode-if-same)) (if done nil (if (setq done (save-excursion (goto-char
(point-min)) (save-restriction (narrow-to-region (point-min) (min (point-max)
(+ (point-min) magic-mode-regexp-match-limit))) (assoc-default nil
magic-mode-alist #'(lambda (re _dummy) (cond ((functionp re) (funcall re))
((stringp re) (let ((case-fold-search nil)) (looking-at re))) (t (error
"Problem in magic-mode-alist with element %s" re)))))))) (set-auto-mode-0 done
keep-mode-if-same))) (if done nil (if buffer-file-name (let ((name
buffer-file-name) (remote-id (file-remote-p buffer-file-name))
(case-insensitive-p (file-name-case-insensitive-p buffer-file-name))) (setq
name (file-name-sans-versions name)) (if (and (stringp remote-id) (string-match
(regexp-quote remote-id) name)) (progn (setq name (substring name (match-end
0))))) (while name (setq mode (if case-insensitive-p (let ((case-fold-search
t)) (assoc-default name auto-mode-alist 'string-match)) (or (let
((case-fold-search nil)) (assoc-default name auto-mode-alist 'string-match))
(and auto-mode-case-fold (let ((case-fold-search t)) (assoc-default name
auto-mode-alist 'string-match)))))) (if (and mode (consp mode) (car (cdr
mode))) (setq mode (car mode) name (substring name 0 (match-beginning 0)))
(setq name nil)) (if mode (progn (set-auto-mode-0 mode keep-mode-if-same) (setq
done t))))))) (if done nil (if (setq done (save-excursion (goto-char
(point-min)) (save-restriction (narrow-to-region (point-min) (min (point-max)
(+ (point-min) magic-mode-regexp-match-limit))) (assoc-default nil
magic-fallback-mode-alist #'(lambda (re _dummy) (cond ((functionp re) (funcall
re)) ((stringp re) (let ((case-fold-search nil)) (looking-at re))) (t (error
"Problem with magic-fallback-mode-alist element: %s" re))))))))
(set-auto-mode-0 done keep-mode-if-same))) (if done nil (set-buffer-major-mode
(current-buffer))))) so-long--set-auto-mode)(t)
| apply(#f(advice-wrapper :around (closure (t) (&optional keep-mode-if-same)
"Select major mode appropriate for current buffer.\n..." (let ((try-locals (not
(inhibit-local-variables-p))) end done mode modes) (save-excursion (goto-char
(point-min)) (skip-chars-forward " \11\n") (and enable-local-variables
try-locals (setq end (set-auto-mode-1)) (if (save-excursion ...) (while ... ...
...) (setq modes ...)))) (if modes (catch 'nop (let (...) (while
--dolist-tail-- ...)))) (and (not done) enable-local-variables
local-enable-local-variables try-locals (setq mode (hack-local-variables t))
(not (memq mode modes)) (if (not (functionp mode)) (message "Ignoring unknown
mode `%s'" mode) (setq done t) (set-auto-mode-0 mode keep-mode-if-same))) (and
(not done) (setq mode (save-excursion (goto-char ...) (if ... ...))) (setq done
(assoc-default (file-name-nondirectory mode) (mapcar ...
interpreter-mode-alist) #'string-match-p)) (set-auto-mode-0 done
keep-mode-if-same)) (if done nil (if (setq done (save-excursion ... ...))
(set-auto-mode-0 done keep-mode-if-same))) (if done nil (if buffer-file-name
(let (... ... ...) (setq name ...) (if ... ...) (while name ... ... ...)))) (if
done nil (if (setq done (save-excursion ... ...)) (set-auto-mode-0 done
keep-mode-if-same))) (if done nil (set-buffer-major-mode (current-buffer)))))
so-long--set-auto-mode) t)
| set-auto-mode(t)
| (let ((old major-mode)) (set-auto-mode t) (or (eq old major-mode)
(hack-local-variables)))
| (or (not change-major-mode-with-file-name) (get major-mode 'mode-class)
(and old-try-locals (not (inhibit-local-variables-p)) (hack-local-variables t))
(let ((old major-mode)) (set-auto-mode t) (or (eq old major-mode)
(hack-local-variables))))
| (condition-case nil (or (not change-major-mode-with-file-name) (get
major-mode 'mode-class) (and old-try-locals (not (inhibit-local-variables-p))
(hack-local-variables t)) (let ((old major-mode)) (set-auto-mode t) (or (eq old
major-mode) (hack-local-variables)))) (error nil))
| (let (truename old-try-locals) (if filename (setq filename (if
(string-equal filename "") nil (expand-file-name filename)))) (if filename
(progn (setq truename (file-truename filename)) (if find-file-visit-truename
(setq filename truename)))) (if filename (let ((new-name
(file-name-nondirectory filename))) (if (string= new-name "") (error "Empty
file name")))) (let ((buffer (and filename (find-buffer-visiting filename))))
(and buffer (not (eq buffer (current-buffer))) (not no-query) (not (y-or-n-p
(format "A buffer is visiting %s; proceed? " filename))) (user-error
"Aborted"))) (or (equal filename buffer-file-name) (progn (and filename
(lock-buffer filename)) (unlock-buffer))) (setq old-try-locals (not
(inhibit-local-variables-p)) buffer-file-name filename) (if filename (let
((new-name (file-name-nondirectory buffer-file-name))) (setq default-directory
(file-name-directory buffer-file-name)) (or (string= new-name (buffer-name))
(rename-buffer new-name t)))) (setq buffer-backed-up nil) (or along-with-file
(clear-visited-file-modtime)) (if truename (progn (setq buffer-file-truename
(abbreviate-file-name truename)) (if find-file-visit-truename (setq
buffer-file-name truename)))) (setq buffer-file-number (if filename (nthcdr 10
(file-attributes buffer-file-name)) nil)) (kill-local-variable
'write-file-functions) (kill-local-variable 'local-write-file-hooks)
(kill-local-variable 'revert-buffer-function) (kill-local-variable
'backup-inhibited) (if vc-mode (setq buffer-read-only nil))
(kill-local-variable 'vc-mode) (and buffer-file-name backup-enable-predicate
(not (funcall backup-enable-predicate buffer-file-name)) (progn
(make-local-variable 'backup-inhibited) (setq backup-inhibited t))) (let
((oauto buffer-auto-save-file-name)) (cond ((null filename) (setq
buffer-auto-save-file-name nil)) ((not buffer-auto-save-file-name) (and
buffer-file-name auto-save-default (auto-save-mode t))) (t (setq
buffer-auto-save-file-name (make-auto-save-file-name)))) (and oauto
buffer-auto-save-file-name (file-exists-p oauto) (rename-file oauto
buffer-auto-save-file-name t))) (and buffer-file-name (not along-with-file)
(set-buffer-modified-p t)) (condition-case nil (or (not
change-major-mode-with-file-name) (get major-mode 'mode-class) (and
old-try-locals (not (inhibit-local-variables-p)) (hack-local-variables t)) (let
((old major-mode)) (set-auto-mode t) (or (eq old major-mode)
(hack-local-variables)))) (error nil)) (run-hooks
'after-set-visited-file-name-hook))
| (closure (t) (filename &optional no-query along-with-file) "Change name of
file visited in current buff..." (interactive "FSet visited file name: ") (if
(buffer-base-buffer) (error "An indirect buffer cannot visit a file")) (let
(truename old-try-locals) (if filename (setq filename (if (string-equal
filename "") nil (expand-file-name filename)))) (if filename (progn (setq
truename (file-truename filename)) (if find-file-visit-truename (setq filename
truename)))) (if filename (let ((new-name ...)) (if (string= new-name "")
(error "Empty file name")))) (let ((buffer (and filename ...))) (and buffer
(not (eq buffer ...)) (not no-query) (not (y-or-n-p ...)) (user-error
"Aborted"))) (or (equal filename buffer-file-name) (progn (and filename
(lock-buffer filename)) (unlock-buffer))) (setq old-try-locals (not
(inhibit-local-variables-p)) buffer-file-name filename) (if filename (let
((new-name ...)) (setq default-directory (file-name-directory
buffer-file-name)) (or (string= new-name ...) (rename-buffer new-name t))))
(setq buffer-backed-up nil) (or along-with-file (clear-visited-file-modtime))
(if truename (progn (setq buffer-file-truename (abbreviate-file-name truename))
(if find-file-visit-truename (setq buffer-file-name truename)))) (setq
buffer-file-number (if filename (nthcdr 10 (file-attributes buffer-file-name))
nil)) (kill-local-variable 'write-file-functions) (kill-local-variable
'local-write-file-hooks) (kill-local-variable 'revert-buffer-function)
(kill-local-variable 'backup-inhibited) (if vc-mode (setq buffer-read-only
nil)) (kill-local-variable 'vc-mode) (and buffer-file-name
backup-enable-predicate (not (funcall backup-enable-predicate
buffer-file-name)) (progn (make-local-variable 'backup-inhibited) (setq
backup-inhibited t))) (let ((oauto buffer-auto-save-file-name)) (cond ((null
filename) (setq buffer-auto-save-file-name nil)) ((not
buffer-auto-save-file-name) (and buffer-file-name auto-save-default ...)) (t
(setq buffer-auto-save-file-name ...))) (and oauto buffer-auto-save-file-name
(file-exists-p oauto) (rename-file oauto buffer-auto-save-file-name t))) (and
buffer-file-name (not along-with-file) (set-buffer-modified-p t))
(condition-case nil (or (not change-major-mode-with-file-name) (get major-mode
'mode-class) (and old-try-locals (not ...) (hack-local-variables t)) (let (...)
(set-auto-mode t) (or ... ...))) (error nil)) (run-hooks
'after-set-visited-file-name-hook)))("/tmp/emacs-gnus-mock-WDzPUE/init.el" t)
| apply((closure (t) (filename &optional no-query along-with-file) "Change
name of file visited in current buffer to F..." (interactive "FSet visited file
name: ") (if (buffer-base-buffer) (error "An indirect buffer cannot visit a
file")) (let (truename old-try-locals) (if filename (setq filename (if
(string-equal filename "") nil (expand-file-name filename)))) (if filename
(progn (setq truename (file-truename filename)) (if find-file-visit-truename
(setq filename truename)))) (if filename (let ((new-name
(file-name-nondirectory filename))) (if (string= new-name "") (error "Empty
file name")))) (let ((buffer (and filename (find-buffer-visiting filename))))
(and buffer (not (eq buffer (current-buffer))) (not no-query) (not (y-or-n-p
(format "A buffer is visiting %s; proceed? " filename))) (user-error
"Aborted"))) (or (equal filename buffer-file-name) (progn (and filename
(lock-buffer filename)) (unlock-buffer))) (setq old-try-locals (not
(inhibit-local-variables-p)) buffer-file-name filename) (if filename (let
((new-name (file-name-nondirectory buffer-file-name))) (setq default-directory
(file-name-directory buffer-file-name)) (or (string= new-name (buffer-name))
(rename-buffer new-name t)))) (setq buffer-backed-up nil) (or along-with-file
(clear-visited-file-modtime)) (if truename (progn (setq buffer-file-truename
(abbreviate-file-name truename)) (if find-file-visit-truename (setq
buffer-file-name truename)))) (setq buffer-file-number (if filename (nthcdr 10
(file-attributes buffer-file-name)) nil)) (kill-local-variable
'write-file-functions) (kill-local-variable 'local-write-file-hooks)
(kill-local-variable 'revert-buffer-function) (kill-local-variable
'backup-inhibited) (if vc-mode (setq buffer-read-only nil))
(kill-local-variable 'vc-mode) (and buffer-file-name backup-enable-predicate
(not (funcall backup-enable-predicate buffer-file-name)) (progn
(make-local-variable 'backup-inhibited) (setq backup-inhibited t))) (let
((oauto buffer-auto-save-file-name)) (cond ((null filename) (setq
buffer-auto-save-file-name nil)) ((not buffer-auto-save-file-name) (and
buffer-file-name auto-save-default (auto-save-mode t))) (t (setq
buffer-auto-save-file-name (make-auto-save-file-name)))) (and oauto
buffer-auto-save-file-name (file-exists-p oauto) (rename-file oauto
buffer-auto-save-file-name t))) (and buffer-file-name (not along-with-file)
(set-buffer-modified-p t)) (condition-case nil (or (not
change-major-mode-with-file-name) (get major-mode 'mode-class) (and
old-try-locals (not (inhibit-local-variables-p)) (hack-local-variables t)) (let
((old major-mode)) (set-auto-mode t) (or (eq old major-mode)
(hack-local-variables)))) (error nil)) (run-hooks
'after-set-visited-file-name-hook))) ("/tmp/emacs-gnus-mock-WDzPUE/init.el" t))
| set-visited-file-name("/tmp/emacs-gnus-mock-WDzPUE/init.el" t)
| (progn (if (directory-name-p filename) (setq filename (concat filename
(file-name-nondirectory (or buffer-file-name (buffer-name)))))) (and confirm
(file-exists-p filename) (not (and (eq (framep-on-display) 'ns) (listp
last-nonmenu-event) use-dialog-box)) (or (y-or-n-p (format-message "File `%s'
exists; overwrite? " filename)) (user-error "Canceled")))
(set-visited-file-name filename (not confirm)))
| (or (null filename) (string-equal filename "") (progn (if (directory-name-p
filename) (setq filename (concat filename (file-name-nondirectory (or
buffer-file-name (buffer-name)))))) (and confirm (file-exists-p filename) (not
(and (eq (framep-on-display) 'ns) (listp last-nonmenu-event) use-dialog-box))
(or (y-or-n-p (format-message "File `%s' exists; overwrite? " filename))
(user-error "Canceled"))) (set-visited-file-name filename (not confirm))))
| (closure (t) (filename &optional confirm) "Write current buffer into file
FILENAME.\nThis make..." (interactive (list (if buffer-file-name
(read-file-name "Write file: " nil nil nil nil) (read-file-name "Write file: "
default-directory (expand-file-name (file-name-nondirectory ...)
default-directory) nil nil)) (not current-prefix-arg))) (or (null filename)
(string-equal filename "") (progn (if (directory-name-p filename) (setq
filename (concat filename (file-name-nondirectory ...)))) (and confirm
(file-exists-p filename) (not (and (eq ... ...) (listp last-nonmenu-event)
use-dialog-box)) (or (y-or-n-p (format-message "File `%s' exists; overwrite? "
filename)) (user-error "Canceled"))) (set-visited-file-name filename (not
confirm)))) (set-buffer-modified-p t) (and buffer-file-name (file-writable-p
buffer-file-name) (setq buffer-read-only nil)) (save-buffer)
(vc-refresh-state))("/tmp/emacs-gnus-mock-WDzPUE/init.el")
| apply((closure (t) (filename &optional confirm) "Write current buffer into
file FILENAME.\nThis make..." (interactive (list (if buffer-file-name
(read-file-name "Write file: " nil nil nil nil) (read-file-name "Write file: "
default-directory (expand-file-name (file-name-nondirectory ...)
default-directory) nil nil)) (not current-prefix-arg))) (or (null filename)
(string-equal filename "") (progn (if (directory-name-p filename) (setq
filename (concat filename (file-name-nondirectory ...)))) (and confirm
(file-exists-p filename) (not (and (eq ... ...) (listp last-nonmenu-event)
use-dialog-box)) (or (y-or-n-p (format-message "File `%s' exists; overwrite? "
filename)) (user-error "Canceled"))) (set-visited-file-name filename (not
confirm)))) (set-buffer-modified-p t) (and buffer-file-name (file-writable-p
buffer-file-name) (setq buffer-read-only nil)) (save-buffer)
(vc-refresh-state)) "/tmp/emacs-gnus-mock-WDzPUE/init.el")
| write-file("/tmp/emacs-gnus-mock-WDzPUE/init.el")
| gnus-mock-start()
| funcall-interactively(gnus-mock-start)
| call-interactively(gnus-mock-start record nil)
| command-execute(gnus-mock-start record)
When I delete the (buffer-read-only . t) association from
`so-long-variable-overrides' the problem is fixed. The only so-long
thing in my init file is (global-so-long-mode 1). Since some people
will do this and the default behavior breaks gnus-mock I guess you will
want to handle this somehow.
Regards,
Michael.
- bug#33005: 27.0.50; Data loss with Gnus registry, Eric Abrahamsen, 2019/10/01
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/14
- bug#33005: 27.0.50; Data loss with Gnus registry, Eric Abrahamsen, 2019/10/14
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/15
- bug#33005: 27.0.50; Data loss with Gnus registry, Eric Abrahamsen, 2019/10/15
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/16
- bug#33005: 27.0.50; Data loss with Gnus registry, Eric Abrahamsen, 2019/10/16
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/17
- bug#33005: 27.0.50; Data loss with Gnus registry, Eric Abrahamsen, 2019/10/17
- bug#33005: 27.0.50; Data loss with Gnus registry,
Michael Heerdegen <=
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/18
- bug#33005: 27.0.50; Data loss with Gnus registry, Phil Sainty, 2019/10/18
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/19
- bug#33005: 27.0.50; Data loss with Gnus registry, Phil Sainty, 2019/10/19
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/26
- bug#33005: 27.0.50; Data loss with Gnus registry, Eric Abrahamsen, 2019/10/26
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/18
- bug#33005: 27.0.50; Data loss with Gnus registry, Eric Abrahamsen, 2019/10/18
- bug#33005: 27.0.50; Data loss with Gnus registry, Eric Abrahamsen, 2019/10/18
- bug#33005: 27.0.50; Data loss with Gnus registry, Michael Heerdegen, 2019/10/18