[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
nnimap 0.3.15 released
Bugfixes and support for the Lines: header.
I'm attaching patches.
Get it from http://vic20.dzp.se/gnus-imap/nnimap.tar.gz.
/s
1998-08-09 20:18:14 Simon Josefsson <jas@pdc.kth.se>
* nnimap 0.3.15 released
1998-08-09 20:02:14 Simon Josefsson <jas@pdc.kth.se>
* nnimap.el (nnimap-retrieve-headers): add a Lines: header from
BODY information
1998-08-09 16:24:36 Simon Josefsson <jas@pdc.kth.se>
* nnimap.el (nnimap-request-update-info): gnus-message about
what's happening
1998-08-09 16:24:03 Simon Josefsson <jas@pdc.kth.se>
* nnimap.el (nnimap-open-server): we support IMAP4rev1-only
servers too
diff -u -r nnimap-0.3.14/nnimap.el nnimap-0.3.15/nnimap.el
--- nnimap-0.3.14/nnimap.el Mon Aug 3 13:39:23 1998
+++ nnimap-0.3.15/nnimap.el Sun Aug 9 20:17:46 1998
@@ -43,6 +43,7 @@
;;; Todo (in order of priority):
+;;; o Verify that we don't use IMAP4rev1 specific things (RFC2060 App B)
;;; o nnimap-request-close-group should do incremental flag setting
;;; instead of first clearing all flags and setting them again. It also
;;; shouldn't try to set flags at all in read-only groups.
@@ -59,9 +60,7 @@
;;; o Figure out when update-info is called and why and if we need to
;;; call it more often and from where.
;;; o Add update-info calls? To request-group, close-group, retrieve-groups
-;;; o Add asynchronous support with two server connections (we have
-;;; to unset Seen marks when we do asynch fetches, which the server
-;;; sets for us. this will be somewhat ugly...)
+;;; o Add asynchronous support with two server connections (use BODY.PEEK)
;;; o Add support for the following: (if applicable)
;;; request-list-newsgroups, request-regenerate
@@ -78,7 +77,10 @@
;;; o MIME
;;; o Disconnected support (I haven't a clue about the Gnus Agent thing,
;;; but IMAP has very good disconnected support)
-;;; o Support ACL's (RFC2086)
+;;; o Support RFC2086 (ACL editing)
+;;; o Support RFC2221 (Login referrals)
+;;; o Support RFC2095 (MD5 logins -- is there a MD5 library in Elisp?)
+;;; o IMAP2BIS compatibility (RFC2061)
;;;
(require 'imap4rev1)
@@ -95,7 +97,7 @@
(nnoo-declare nnimap) ; we derive from no one
-(defconst nnimap-version "nnimap 0.3.14")
+(defconst nnimap-version "nnimap 0.3.15")
(defvoo nnimap-list-pattern "*"
"*PATTERN or list of PATTERNS use to limit available groups.
@@ -289,6 +291,9 @@
(nnoo-define-basics nnimap)
+;; todo:
+;; use NOV lines instead? BODY gives me everything but references
+;; remove redundant lines:/chars:
(deffoo nnimap-retrieve-headers (articles &optional group server fetch-old)
(when (nnimap-possibly-change-group group server)
(with-current-buffer nntp-server-buffer (erase-buffer))
@@ -307,15 +312,27 @@
(if (and fetch-old (not (numberp fetch-old)))
"1:*"
(nnimap-range-to-string compressed))
- " (UID RFC822.HEADER RFC822.SIZE)")))
+ " (UID RFC822.HEADER RFC822.SIZE BODY)")))
(mapc (lambda (num)
(let ((header (imap-message-get num 'RFC822.HEADER))
- (size (imap-message-get num 'RFC822.SIZE)))
+ (size (imap-message-get num 'RFC822.SIZE))
+ (body (imap-message-get num 'BODY))
+ (lines 0))
+ (mapcar (lambda (mime-imb)
+ (if (and (listp mime-imb)
+ (eq (car mime-imb) "TEXT"))
+ (let ((len (nth 7 mime-imb)))
+ (if (numberp len)
+ (setq lines (+ lines len))))))
+ body)
+ (if (numberp (nth 7 body))
+ (setq lines (+ lines (nth 7 body))))
(with-current-buffer nntp-server-buffer
(if (not header)
(insert "423 Bad article number.\n")
(insert (format "221 %d Article retrieved.\n" num))
(insert (format "Chars: %d\n" size))
+ (insert (format "Lines: %d\n" lines))
(insert header)
(delete-char -1)
(insert ".\n")))))
@@ -340,10 +357,12 @@
nnimap-server-buffer nnimap-imap-defs)
(unless (and (nnimap-ok-p (nnimap-send-command-wait
"CAPABILITY" nnimap-server-buffer))
- (memq 'IMAP4 (imap-capability-get
- nnimap-server-buffer)))
+ (or (memq 'IMAP4 (imap-capability-get
+ nnimap-server-buffer))
+ (memq 'IMAP4REV1 (imap-capability-get
+ nnimap-server-buffer))))
(imap-close-server nnimap-server-buffer)
- (message "Sorry, this is not a IMAP4 server.")
+ (message "Sorry, this is not a IMAP4(rev1) server.")
(sit-for 2)
(error))
;; Login
@@ -615,6 +634,8 @@
(deffoo nnimap-request-update-info (group info &optional server)
(when (nnimap-possibly-change-group group server) ;; SELECT
(with-current-buffer nnimap-server-buffer
+ (gnus-message 9 "Updating active info for mailbox %s" group)
+
;; extend info to have parameters (otherwise when we set them,
;; they don't get set)
(or (gnus-info-params info)
diff -u -r nnimap-0.3.14/ChangeLog nnimap-0.3.15/ChangeLog
--- nnimap-0.3.14/ChangeLog Mon Aug 3 13:46:31 1998
+++ nnimap-0.3.15/ChangeLog Sun Aug 9 20:18:17 1998
@@ -1,3 +1,22 @@
+1998-08-09 20:18:14 Simon Josefsson <jas@pdc.kth.se>
+
+ * nnimap 0.3.15 released
+
+1998-08-09 20:02:14 Simon Josefsson <jas@pdc.kth.se>
+
+ * nnimap.el (nnimap-retrieve-headers): add a Lines: header from
+ BODY information
+
+1998-08-09 16:24:36 Simon Josefsson <jas@pdc.kth.se>
+
+ * nnimap.el (nnimap-request-update-info): gnus-message about
+ what's happening
+
+1998-08-09 16:24:03 Simon Josefsson <jas@pdc.kth.se>
+
+ * nnimap.el (nnimap-open-server): we support IMAP4rev1-only
+ servers too
+
1998-08-03 13:46 Simon Josefsson <jas@pdc.kth.se>
* nnimap 0.3.14 released