all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eric Abrahamsen <eric@ericabrahamsen.net>
To: Bastien <bzg@gnu.org>
Cc: 34983@debbugs.gnu.org
Subject: bug#34983: 27.0.50; Gnus cannot start
Date: Mon, 25 Mar 2019 07:58:49 -0700	[thread overview]
Message-ID: <87k1gnhufq.fsf@ericabrahamsen.net> (raw)
In-Reply-To: <87ftrbpije.fsf@bzg.fr> (Bastien's message of "Mon, 25 Mar 2019 07:36:21 +0100")


On 03/25/19 07:36 AM, Bastien wrote:
> Hi Eric,
>
> good luck with fixing this.
>
> Eric Abrahamsen <eric@ericabrahamsen.net> writes:
>
>> This is frustrating -- this was the most important part of the patch,
>> and the part I thought I'd tested most thoroughly. At worst I think Gnus
>> may be trying to read .newsrc.eld using the wrong encoding, so I don't
>> think you will have lost anything permanently. (Still, I'm very sorry
>> this is causing you Gnus outage.)
>>
>> First -- did you run "make bootstrap" before running this new version?
>
> No.  I regularily build Emacs from the master branch but I only use
> `make' to compile it then.  I had no idea I had to `make bootstrap'.
> Why was it necessary after your commit?

My commit changed the definition of some macros, and some *elc files
with the older definitions are still hanging around. This does happen
from time to time when you're running master, though in this case it
coincides with a real bug. You can also just delete all the *elc files
in lisp/gnus and run regular "make". This will fix some of the problems
you're seeing, though from the backtrace below and your previous report
it looks like you've also maybe got a literal "nil" as a group name in
your newsrc.eld.

>> Second, can you tell me if your non-ascii group names are being saved in
>> .newsrc.eld in utf-8, or if they have literal byte sequences in them?
>
> There is no literal byte sequence in the .newsrc.eld file that I was
> able to backup, right after I got this Gnus initialization error.

But there are group names with properly-encoded non-ascii names? There
shouldn't be, which is why I'm curious.

> Now I recompiled an Emacs from before your commit.  Starting with my
> backup does trigger this error:
>
> Debugger entered--Lisp error: (wrong-type-argument stringp nil)
>   intern(nil [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
> 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...])
>   gnus-make-hashtable-from-newsrc-alist()
>   gnus-read-newsrc-el-file("/home/guerry/.newsrc.el")
>   gnus-read-newsrc-file(nil)
>   gnus-setup-news(nil nil nil)
>   #f(compiled-function () #<bytecode 0x1559c202fd35>)()
>   gnus-1(nil nil nil)
>   gnus(nil)
>   funcall-interactively(gnus nil)
>   call-interactively(gnus record nil)
>   command-execute(gnus record)
>   execute-extended-command(nil "gnus" "gnus")
>   funcall-interactively(execute-extended-command nil "gnus" "gnus")
>   call-interactively(execute-extended-command nil nil)
>   command-execute(execute-extended-command)
>
> ... so I suspect I did not save my .newsrc.eld in time to properly use
> it with a stable Emacs (too bad).
>
> I hope I will be able to find my group subscriptions and my marks.

I don't think you will have lost any data! There's probably just a bogus
group name or two in your newsrc.eld file which is preventing Gnus from
starting up. If you feel comfortable doing this, would you send me your
.newsrc.eld file off list?

Sorry for this train wreck...

> I'm trying to better understand a few things, can you educate me?
>
> What is the Gnus "active" file?
> Where is it on my computer?
> What is the .newsrc.eld file?
> What is the difference between .newsrc.eld and the active file?

Basil's explanations are correct, I'll just add that you've only got
one.newsrc.eld file, recording marks for all the groups you're
subscribed to, but each of your backends produces its own active file,
saying what groups it contains, and what the newest messages are. For
nntp you request it from the server. For nnml it lives on your computer
(I think it goes under (concat gnus-home-directory "News/")). For
nnimap, the server sends Gnus a list of groups and Gnus munges the list
into something that *looks* like an active file. Gnus knows if you have
new mail by comparing the active file information with your.newsrc.eld
information.

Eric





  parent reply	other threads:[~2019-03-25 14:58 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-24 22:09 bug#34983: 27.0.50; Gnus cannot start Bastien
2019-03-24 23:43 ` Eric Abrahamsen
2019-03-25  0:24   ` Deus Max
2019-03-25  0:36     ` Eric Abrahamsen
2019-03-25  5:04       ` Deus Max
2019-03-25  7:09         ` Colin Baxter
2019-03-25 10:54           ` Bastien
2019-03-25 12:24             ` Colin Baxter
2019-03-25 14:47               ` Eric Abrahamsen
2019-03-25 15:23                 ` Colin Baxter
2019-03-25 17:12                   ` Eric Abrahamsen
2019-06-22 12:48                   ` Lars Ingebrigtsen
2019-06-22 15:54                     ` Eric Abrahamsen
2019-03-25 15:01         ` Eric Abrahamsen
2019-03-25 17:45           ` Deus Max
2019-03-25 17:56             ` Deus Max
2019-03-25  6:36   ` Bastien
2019-03-25 13:07     ` Basil L. Contovounesios
2019-03-25 14:58     ` Eric Abrahamsen [this message]
2019-04-02  5:35       ` Bastien
2019-04-02 10:55         ` Basil L. Contovounesios
2019-04-03  0:26           ` Eric Abrahamsen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87k1gnhufq.fsf@ericabrahamsen.net \
    --to=eric@ericabrahamsen.net \
    --cc=34983@debbugs.gnu.org \
    --cc=bzg@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.