Gnus development mailing list
 help / color / mirror / Atom feed
From: Dan Christensen <jdc@uwo.ca>
To: ding@gnus.org
Subject: Re: [PATCH 0/2] two minor fixes for new/empty nnimap group handling
Date: Wed, 08 Jul 2015 22:52:04 -0400	[thread overview]
Message-ID: <87r3oixctn.fsf@uwo.ca> (raw)
In-Reply-To: <871tgi9jvc.fsf@ericabrahamsen.net>

Eric Abrahamsen <eric@ericabrahamsen.net> writes:

> I pushed a small change to `nnimap-request-group' yesterday that would
> have prevented the first patch from applying cleanly -- sorry, I should
> have mentioned you'd need to pull again first.

No problem!

> I thought my changes to the group creation process would have ensured
> that all new groups had an "active" entry, but I guess not.
>
> I'd like to take one more whack at this, and then I'm going to give up
> and just put Bjørn's guard in. Would you mind removing Bjørn's patches,
> pulling once more, and trying these two?

I just tried your latest patches against the latest git version.  As
before, the problem with info being nil is handled, but active is still
nil and I get the backtrace below.  If I add Bjørn's line

+	(or active (setq active (cons 0 0)))

then the error goes away, but Gnus thinks that the group is empty
(not surprisingly), so this isn't really a solution.

I only update Gnus periodically.  I had no trouble with nnmairix 
with the 2014/10/10 version, but when I next updated on 2015/5/4
the problem started.  Would it be helpful to bisect?  Based on
"git log nnimap.el", there aren't many relevant changes, and the
ones most likely responsible are (from newer to older):

commit 10c00cefb79ea94c49a659b1f063218152e9b379
commit 04550947fe524054fdc5626ff7b342baca0c18d9
commit 1b4d1bd1ca7a32d8f9cb7c1ffe02af08f2c4b2c6
commit 062698a34df9fd679229f7dea14cfaaf408f87de
commit c2b17919646859aef0e1d329e052dadbbf042eca
commit 447c56af7cb2afac14a0f3ed23f85d907c443a5d

447c5 looks especially relevant, but seems to have been buggy since
later ones made fixes.

Could nnmairix be adjusted to make an extra call at some point to
activate the appropriate group?  Maybe it needs to call
nnimap-request-group-scan instead of nnimap-request-group, now that
447c5 changed the behaviour of the latter?

Anything else I can do to help get this working?

Dan

Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p nil)
  -(nil nil)
  (format "211 %d %d %d %S\n" (- (cdr active) (car active)) (car active) (cdr active) group)
  (insert (format "211 %d %d %d %S\n" (- (cdr active) (car active)) (car active) (cdr active) group))
  (progn (when (or (not dont-check) (not (setq active (nth 2 (assoc group nnimap-current-infos))))) (let ((sequences (nnimap-retrieve-group-data-early server info))) (nnimap-finish-retrieve-group-infos server info sequences t) (setq active (nth 2 (assoc group nnimap-current-infos))))) (erase-buffer) (message "%s" active) (insert (format "211 %d %d %d %S\n" (- (cdr active) (car active)) (car active) (cdr active) group)) t)
  (if result (progn (when (or (not dont-check) (not (setq active (nth 2 (assoc group nnimap-current-infos))))) (let ((sequences (nnimap-retrieve-group-data-early server info))) (nnimap-finish-retrieve-group-infos server info sequences t) (setq active (nth 2 (assoc group nnimap-current-infos))))) (erase-buffer) (message "%s" active) (insert (format "211 %d %d %d %S\n" (- (cdr active) (car active)) (car active) (cdr active) group)) t))
  (when result (when (or (not dont-check) (not (setq active (nth 2 (assoc group nnimap-current-infos))))) (let ((sequences (nnimap-retrieve-group-data-early server info))) (nnimap-finish-retrieve-group-infos server info sequences t) (setq active (nth 2 (assoc group nnimap-current-infos))))) (erase-buffer) (message "%s" active) (insert (format "211 %d %d %d %S\n" (- (cdr active) (car active)) (car active) (cdr active) group)) t)
  (save-current-buffer (set-buffer nntp-server-buffer) (when result (when (or (not dont-check) (not (setq active (nth 2 (assoc group nnimap-current-infos))))) (let ((sequences (nnimap-retrieve-group-data-early server info))) (nnimap-finish-retrieve-group-infos server info sequences t) (setq active (nth 2 (assoc group nnimap-current-infos))))) (erase-buffer) (message "%s" active) (insert (format "211 %d %d %d %S\n" (- (cdr active) (car active)) (car active) (cdr active) group)) t))
  (with-current-buffer nntp-server-buffer (when result (when (or (not dont-check) (not (setq active (nth 2 (assoc group nnimap-current-infos))))) (let ((sequences (nnimap-retrieve-group-data-early server info))) (nnimap-finish-retrieve-group-infos server info sequences t) (setq active (nth 2 (assoc group nnimap-current-infos))))) (erase-buffer) (message "%s" active) (insert (format "211 %d %d %d %S\n" (- (cdr active) (car active)) (car active) (cdr active) group)) t))
  (let ((result (nnimap-change-group (if (and (not dont-check) (assoc group nnimap-current-infos)) nil group) server)) (info (when info (list info))) active) (with-current-buffer nntp-server-buffer (when result (when (or (not dont-check) (not (setq active (nth 2 ...)))) (let ((sequences (nnimap-retrieve-group-data-early server info))) (nnimap-finish-retrieve-group-infos server info sequences t) (setq active (nth 2 (assoc group nnimap-current-infos))))) (erase-buffer) (message "%s" active) (insert (format "211 %d %d %d %S\n" (- (cdr active) (car active)) (car active) (cdr active) group)) t)))
  nnimap-request-group("zz_mairix-nnmairixsearch-1" "rocky")
  apply(nnimap-request-group ("zz_mairix-nnmairixsearch-1" "rocky"))
  nnmairix-call-backend("request-group" "zz_mairix-nnmairixsearch-1" "rocky")
  nnmairix-request-group-with-article-number-correction("zz_mairix-nnmairixsearch-1" "nnmairix+mairixserver:nnmairixsearch")
  nnmairix-request-group("nnmairixsearch" "mairixserver" t ("nnmairix+mairixserver:nnmairixsearch" 2 nil nil (nnmairix "mairixserver" (nnmairix-backend nnimap) (nnmairix-backend-server "rocky") (nnmairix-mairix-command "mairix") (nnmairix-hidden-folders t) (nnmairix-default-group "nnmairixsearch")) ((query "test" "d:1w-") (numcorr nil 47850 47888) (display) (folder . "zz_mairix-nnmairixsearch-1") (threads))))
  gnus-request-group("nnmairix+mairixserver:nnmairixsearch" t nil ("nnmairix+mairixserver:nnmairixsearch" 2 nil nil (nnmairix "mairixserver" (nnmairix-backend nnimap) (nnmairix-backend-server "rocky") (nnmairix-mairix-command "mairix") (nnmairix-hidden-folders t) (nnmairix-default-group "nnmairixsearch")) ((query "test" "d:1w-") (numcorr nil 47850 47888) (display) (folder . "zz_mairix-nnmairixsearch-1") (threads))))
  gnus-select-newsgroup("nnmairix+mairixserver:nnmairixsearch" nil nil)
  gnus-summary-read-group-1("nnmairix+mairixserver:nnmairixsearch" nil nil nil nil nil)
  gnus-summary-read-group("nnmairix+mairixserver:nnmairixsearch" nil nil nil nil nil nil)
  gnus-group-read-group(nil nil nil)
  gnus-topic-read-group(nil)
  call-interactively(gnus-topic-read-group nil nil)




  reply	other threads:[~2015-07-09  2:52 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-01 11:37 Bjørn Mork
2015-07-01 11:37 ` [PATCH 1/2] nnimap.el (nnimap-request-group): don't make nil into a list Bjørn Mork
2015-07-01 11:37 ` [PATCH 2/2] nnimap.el (nnimap-request-group): group could be empty Bjørn Mork
2015-07-01 11:50 ` [PATCH 0/2] two minor fixes for new/empty nnimap group handling Alan Schmitt
2015-07-01 12:23   ` Bjørn Mork
2015-07-01 13:49     ` Alan Schmitt
2015-07-02  2:18 ` Nikolaus Rath
2015-07-06  2:45 ` Eric Abrahamsen
2015-07-06  8:40   ` Bjørn Mork
2015-07-06 15:11     ` Eric Abrahamsen
2015-07-06 15:32 ` Dan Christensen
2015-07-07  2:48   ` Eric Abrahamsen
2015-07-07 23:12     ` Dan Christensen
2015-07-08  4:20       ` Eric Abrahamsen
2015-07-08 21:45         ` Dan Christensen
2015-07-09  1:53           ` Eric Abrahamsen
2015-07-09  2:52             ` Dan Christensen [this message]
2015-07-09 13:47               ` Dan Christensen
2015-07-10  2:41                 ` Eric Abrahamsen
2015-07-10 12:42                   ` Dan Christensen
2015-07-12  4:11               ` Eric Abrahamsen
2015-07-12  4:27                 ` Eric Abrahamsen
2015-07-12 17:01                   ` Dan Christensen
2015-07-13  5:36                     ` Eric Abrahamsen
2015-07-08 12:41       ` 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=87r3oixctn.fsf@uwo.ca \
    --to=jdc@uwo.ca \
    --cc=ding@gnus.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).