@syncodeindex pg cp
@copying
-Copyright (c) 2004, 2005 Free Software Foundation, Inc.
+Copyright (c) 2004, 2005, 2007 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
* Gnus Maintainance Guide:: Gnus Maintainance Guide
@end menu
+@c @ref{Gnus Reference Guide, ,Gnus Reference Guide, gnus, The Gnus Newsreader}
+
@node Gnus Coding Style
@chapter Gnus Coding Style
@section Dependencies
@c As of 2005-10-21...
There are no Gnus dependencies in this file.
+@item hex-util.el
+Functions to encode/decode hexadecimal string.
+@c As of 2007-08-25...
+There are no Gnus dependencies in these files.
@end table
@subsection Encryption and security
@c As of 2005-10-21...
There are no Gnus dependencies in these files.
+@item sha1.el
+SHA1 Secure Hash Algorithm.
+@c As of 2007-08-25...
+There are no Gnus dependencies in these files.
@end table
@subsection Networking
There are no serious Gnus dependencies in this file. Uses
@code{gnus-run-mode-hooks} (a wrapper function).
-@item dns*.el
+@item dns.el, dns-mode.el
Domain Name Service lookups.
@c As of 2005-10-21...
There are no Gnus dependencies in these files.
@item rfc2045.el
Functions for decoding rfc2045 headers
+@c As of 2007-08-25...
+There are no Gnus dependencies in these files.
@item rfc2047.el
Functions for encoding and decoding rfc2047 messages
+@c As of 2007-08-25...
+There are no Gnus dependencies in these files.
+@c
+Only a couple of tests for gnusy symbols.
@item rfc2104.el
RFC2104 Hashed Message Authentication Codes
+@c As of 2007-08-25...
+There are no Gnus dependencies in these files.
@item rfc2231.el
Functions for decoding rfc2231 headers
+@c As of 2007-08-25...
+There are no Gnus dependencies in these files.
@item flow-fill.el
-Interpret RFC2646 "flowed" text
+Interpret RFC2646 "flowed" text.
@c As of 2005-10-27...
There are no Gnus dependencies in this file.
+
+@item uudecode.el
+Elisp native uudecode.
+@c As of 2005-12-06...
+There are no Gnus dependencies in this file.
+@c ... but the custom group is gnus-extract.
+
+@item canlock.el
+Functions for Cancel-Lock feature
+@c Cf. draft-ietf-usefor-cancel-lock-01.txt
+@c Although this draft has expired, Canlock-Lock revived in 2007 when
+@c major news providers (e.g. news.individual.org) started to use it.
+@c As of 2007-08-25...
+There are no Gnus dependencies in these files.
+
@end table
@subsection message
All message composition from Gnus (both mail and news) takes place in
Message mode buffers. Message mode is intended to be a replacement for
Emacs mail mode. There should be no Gnus dependencies in
-@file{message.el}.
+@file{message.el}. Alas it is not anymore. Patches and suggestions to
+remove the dependencies are welcome.
+
+@c message.el requires nnheader which requires gnus-util.
@subsection Emacs @acronym{MIME}
functionality for Emacs.
@acronym{MML} (@acronym{MIME} Meta Language) is supposed to be
-independent from Gnus. Alas it is not anymore.
-
+independent from Gnus. Alas it is not anymore. Patches and suggestions
+to remove the dependencies are welcome.
@subsection Gnus backends
ends (probably @file{nnml.el}, @file{nnfolder.el} and
@file{nnmaildir.el} are the most widely used mail back ends).
-
-@c message / gnus
-@c
-@c nn*
-@c
-@c mm*
-@c
-@c rfc*
-@c
-@c pgg*
-@c tla netrc pop3 dig dns ...
-@c format-spec.el
+@c mm-uu requires nnheader which requires gnus-util. message.el also
+@c requires nnheader.
@section Compatibility
-@c Compatibility with XEmacs and older Emacs versions in v5-10 and in
-@c the trunk.
-
-No Gnus should work on:
+No Gnus and Gnus 5.10.10 and up should work on:
@itemize @bullet
@item
Emacs 21.1 and up.
XEmacs 21.4 and up.
@end itemize
-Gnus 5.10 should work on:
+Gnus 5.10.8 and below should work on:
@itemize @bullet
@item
Emacs 20.7 and up.
development of new features started again on the trunk while the 5.10
series is continued on the stable branch (v5-10) from which more stable
releases will be done when needed (5.10.7, @dots{}).
+@ref{Gnus Development, ,Gnus Development, gnus, The Gnus Newsreader}
Stable releases of Gnus finally become part of Emacs. E.g. Gnus 5.8
-became a part of Emacs 21 (relabeled to Gnus 5.9). The 5.10 series will
-become part of Emacs 22 (as Gnus 5.11).
+became a part of Emacs 21 (relabeled to Gnus 5.9). The 5.10 series
+became part of Emacs 22 as Gnus 5.11.
@section Syncing
@file{texi} directory and commit @file{GNUS-NEWS} and
@file{texi/gnus-news.texi}.
+@heading Conventions for version information in defcustoms
+
+For new customizable variables introduced in Oort Gnus (including the
+v5-10 branch) use @code{:version "22.1" ;; Oort Gnus} (including the
+comment) or e.g. @code{:version "22.2" ;; Gnus 5.10.10} if the feature
+was added for Emacs 22.2 and Gnus 5.10.10.
+@c
+If the variable is new in No Gnus use @code{:version "23.0" ;; No Gnus}.
+
+The same applies for customizable variables when its default value was
+changed.
@c Local Variables:
@c mode: texinfo