+2002-09-18 Simon Josefsson <jas@extundo.com>
+
+ * nnimap.el (nnimap-request-expire-articles): Make flag setting
+ conditional. From Nevin Kapur <nevin@jhu.edu>.
+
2002-09-17 Simon Josefsson <jas@extundo.com>
* nnimap.el (nnimap-expiry-target): Don't search for which
(concat "UID "
(imap-range-to-message-set artseq)))))
(when oldarts
- (nnimap-expiry-target oldarts group server))
- (when (imap-message-flags-add
- (imap-range-to-message-set oldarts) "\\Deleted")
- (setq articles (gnus-set-difference
- articles oldarts)))))
+ (nnimap-expiry-target oldarts group server)
+ (when (imap-message-flags-add
+ (imap-range-to-message-set oldarts) "\\Deleted")
+ (setq articles (gnus-set-difference
+ articles oldarts))))))
((numberp days)
(let ((oldarts (imap-search
(format nnimap-expunge-search-string
(imap-fetch-data-hook
'(nnimap-request-expire-articles-progress)))
(when oldarts
- (nnimap-expiry-target oldarts group server))
- (when (imap-message-flags-add
- (imap-range-to-message-set oldarts) "\\Deleted")
- (setq articles (gnus-set-difference
- articles oldarts))))))))))
+ (nnimap-expiry-target oldarts group server)
+ (when (imap-message-flags-add
+ (imap-range-to-message-set oldarts) "\\Deleted")
+ (setq articles (gnus-set-difference
+ articles oldarts)))))))))))
;; return articles not deleted
articles)
+2002-09-18 Simon Josefsson <jas@extundo.com>
+
+ * gnus.texi (A note on namespaces): New.
+
2002-09-16 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
* gnus.texi (Splitting Mail): "By default, splitting is performed
* Editing IMAP ACLs:: \e$B%a!<%k%\%C%/%9$X$NB>$NMxMQ<T$N;HMQ$r@)8B\e(B
/\e$B5v2D$9$k\e(B
* Expunging mailboxes:: "\e$B%a!<%k%\%C%/%905=L\e(B" \e$B%\%?%s$HEy2A$J$b$N\e(B
+* A note on namespaces:: gnus \e$B$G\e(B IMAP \e$BL>A06u4V$r;H$&\e(B(\e$B;H$o$J$$\e(B)\e$BJ}K!\e(B
Other Sources
* Editing IMAP ACLs:: \e$B%a!<%k%\%C%/%9$X$NB>$NMxMQ<T$N;HMQ$r@)8B\e(B
/\e$B5v2D$9$k\e(B
* Expunging mailboxes:: "\e$B%a!<%k%\%C%/%905=L\e(B" \e$B%\%?%s$HEy2A$J$b$N\e(B
+* A note on namespaces:: gnus \e$B$G\e(B IMAP \e$BL>A06u4V$r;H$&\e(B(\e$B;H$o$J$$\e(B)\e$BJ}K!\e(B
@end menu
@node Splitting in IMAP
\e$B8=;~E@$G$O!">C5n$5$l$?5-;v$rI=<($9$kJ}K!$O$"$j$^$;$s!#$?$@>C5n$G$-$k$@$1\e(B
\e$B$G$9!#\e(B
+@node A note on namespaces
+@subsection \e$BL>A06u4V$K4X$9$kCm0U\e(B
+@cindex IMAP namespace
+@cindex namespaces
+
+IMAP \e$B%W%m%H%3%k$K$OL>A06u4V\e(B (namespaces) \e$B$H8F$P$l$k35G0$,$"$j!"0J2<\e(B
+\e$B$N\e(B RFC2060 \e$B$NJ8=q$G5-=R$5$l$F$$$^$9!#\e(B
+
+@example
+5.1.2. \e$B%a!<%k%\%C%/%9L>A06u4VL?L>5,B'\e(B
+
+ \e$B=,47$K$h$j\e(B "#" \e$B$G;O$^$C$F$$$k$9$Y$F$N%a!<%k%\%C%/%9L>$N:G=i$N3,AXMWAG\e(B
+ \e$B$O!";D$j$NL>A0$N\e(B "\e$BL>A06u4V\e(B" \e$B$r<($7$F$$$k!#$3$l$O!"$=$l$>$lFH<+$NL>A0\e(B
+ \e$B6u4V$r;}$D0[$J$k%a!<%k%\%C%/%9J]4I$N4V$G$N!"[#Kf$5$r<h$j=|$/$3$H$r2D\e(B
+ \e$BG=$K$9$k!#\e(B
+
+ \e$BNc$($P\e(B USENET \e$B%K%e!<%9%0%k!<%W$X$N%"%/%;%9$rDs6!$9$k<BAu$O!"\e(BUSENET
+ \e$B%K%e!<%9%0%k!<%WL>A06u4V$rB>$N%a!<%k%\%C%/%9$+$iJ,N%$9$k$?$a$K!"\e(B
+ "#news" \e$BL>A06u4V$rMQ$$$F$b$h$$!#$3$&$7$F\e(B comp.mail.misc \e$B%K%e!<%9%0\e(B
+ \e$B%k!<%W$O\e(B "#news.comp.mail.misc" \e$B$H$$$&%a!<%k%\%C%/%9L>$r;}$A!"L>A0\e(B
+ "comp.mail.misc" \e$B$OJL$N%*%V%8%'%/%H\e(B (\e$BNc$($P!"%f!<%6$N8D?M%a!<%k%\%C\e(B
+ \e$B%/%9\e(B) \e$B$r;X$9$3$H$O$"$j$&$k!#\e(B
+
+(\e$BLuCp\e(B: http://kame.zit.to/~obata/imap/rfc/rfc2060ja.txt \e$B$h$jE>:\\e(B)
+@end example
+
+\e$B$3$3$K$O\e(B gnus \e$B$K$*$1$k\e(B IMAP \e$B$N<BAu$KBP$9$k4X78$rJ]>Z$9$kJ8=q$,L5$$$N$G$9\e(B
+\e$B$,!"$$$/$D$+$N%5!<%P!<$O\e(B gnus \e$B$N%a!<%k%\%C%/%9$NL>A0$N;H$$J}$G$OF0:n$7$J\e(B
+\e$B$$$d$jJ}$GL>A06u4V@\F,<-$r;H$C$F$$$^$9!#\e(B
+
+\e$B6qBNE*$K$O!"%o%7%s%H%sBg3X$N\e(B IMAP \e$B%5!<%P!<\e(B
+\e$B$O\e(B @code{#driver.mbx/read-mail} \e$B$N$h$&$J%a!<%k%\%C%/%9L>$r;H$C$F$$$F!"$=\e(B
+\e$B$l$O\e(B @sc{create} \e$B$H\e(B @sc{append} \e$B%3%^%s%I$G$@$1M-8z$G$9!#%a!<%k%\%C%/%9$,\e(B
+\e$B:n$i$l$?8e\e(B (\e$B$^$?$O%a%C%;!<%8$,%a!<%k%\%C%/%9$KDI2C$5$l$?8e\e(B) \e$B$G$O!"$=$l$O\e(B
+\e$BL>A06u4V@\F,<-$rIU$1$:$K%"%/%;%9!"$9$J$o$A\e(B @code{read-mail} \e$B$5$l$J$1$l$P\e(B
+\e$B$J$j$^$;$s!#\e(Bgnus \e$B$O%f!<%6!<$,\e(B CREATE \e$B$H\e(B APPEND \e$B%3%^%s%I$@$1$GF~NO$7$?%a!<\e(B
+\e$B%k%\%C%/%9L>$rJ]>Z$G$-$J$$$N$G!"@dBP$KL>A06u4V@\F,<-$,IU$$$?%a!<%k%\%C%/\e(B
+\e$B%9L>$r\e(B gnus \e$B$G;H$C$F$O$$$1$^$;$s!#\e(B
+
+@code{#driver.*/} \e$B@\F,<-$K$D$$$F$N$5$i$J$k;H$$J}$N>pJs\e(B
+\e$B$O\e(B UoW @sc{imapd} \e$B$NJ8=q$r8+$F2<$5$$!#$=$l$i$O6/NO$J9)6q$J$N$G!"$I$s$J8z\e(B
+\e$B2L$,$"$k$+$,3N$+$J>l9g$@$1;H$C$F2<$5$$!#\e(B
+
@node Other Sources
@section \e$B$=$NB>$N%0%k!<%W8;\e(B
* Splitting in IMAP:: Splitting mail with nnimap.
* Editing IMAP ACLs:: Limiting/enabling other users access to a mailbox.
* Expunging mailboxes:: Equivalent of a "compress mailbox" button.
+* A note on namespaces:: How to (not) use IMAP namespace in Gnus.
Other Sources
* Splitting in IMAP:: Splitting mail with nnimap.
* Editing IMAP ACLs:: Limiting/enabling other users access to a mailbox.
* Expunging mailboxes:: Equivalent of a "compress mailbox" button.
+* A note on namespaces:: How to (not) use IMAP namespace in Gnus.
@end menu
Currently there is no way of showing deleted articles, you can just
delete them.
+@node A note on namespaces
+@subsection A note on namespaces
+@cindex IMAP namespace
+@cindex namespaces
+The IMAP protocol has a concept called namespaces, described by the
+following text in the RFC:
+
+@example
+5.1.2. Mailbox Namespace Naming Convention
+
+ By convention, the first hierarchical element of any mailbox name
+ which begins with "#" identifies the "namespace" of the remainder of
+ the name. This makes it possible to disambiguate between different
+ types of mailbox stores, each of which have their own namespaces.
+
+ For example, implementations which offer access to USENET
+ newsgroups MAY use the "#news" namespace to partition the USENET
+ newsgroup namespace from that of other mailboxes. Thus, the
+ comp.mail.misc newsgroup would have an mailbox name of
+ "#news.comp.mail.misc", and the name "comp.mail.misc" could refer
+ to a different object (e.g. a user's private mailbox).
+@end example
+
+While there is nothing in this text that warrants concern for the IMAP
+implementation in Gnus, some servers use namespace prefixes in a way
+that does not work with how Gnus uses mailbox names.
+
+Specifically, University of Washington's IMAP server uses mailbox
+names like @code{#driver.mbx/read-mail} which are valid only in the
+@sc{create} and @sc{append} commands. After the mailbox is created
+(or a messages is appended to a mailbox), it must be accessed without
+the namespace prefix, i.e @code{read-mail}. Since Gnus do not make it
+possible for the user to guarantee that user entered mailbox names
+will only be used with the CREATE and APPEND commands, you should
+simply not use the namespace prefixed mailbox names in Gnus.
+
+See the UoW @sc{imapd} documentation for the @code{#driver.*/} prefix
+for more information on how to use the prefixes. They are a power
+tool and should be used only if you are sure what the effects are.
@node Other Sources
@section Other Sources