strtod: Restore errno when successfully parsing Infinity or NaN.
[gnulib.git] / doc / maintain.texi
index 0eb366a..7d4f582 100644 (file)
@@ -5,7 +5,7 @@
 @c For double-sided printing, uncomment:
 @c @setchapternewpage odd
 @c This date is automagically updated when you save this file:
-@set lastupdate May 13, 2010
+@set lastupdate December 9, 2010
 @c %**end of header
 
 @dircategory GNU organization
@@ -70,6 +70,7 @@ Texts.  A copy of the license is included in the section entitled
 * Ethical and Philosophical Consideration::
 * Terminology::
 * Hosting::
+* Donations::
 * Free Software Directory::
 * Using the Proofreaders List::
 * GNU Free Documentation License::
@@ -134,12 +135,11 @@ questions for new maintainers.
 
 @cindex advisory committee
 The GNU Advisory Committee helps to coordinate activities in the GNU
-project on behalf of RMS.  If you have any organizational questions or
-concerns you can contact the committee at
-@email{gnu-advisory@@gnu.org}.  The committee holds a regular monthly
-meeting to discuss any issues that have been raised.  The minutes of
-the meeting are sent to the @code{gnu-prog} list, and can also be
-found, along with additional information, in
+project on behalf of RMS (Richard Stallman, the Chief GNUisance).  If
+you have any organizational questions or concerns you can contact the
+committee at @email{gnu-advisory@@gnu.org}.  See
+@url{http://www.gnu.org/contact/gnu-advisory.html} for the current
+committee members.  Additional information is in
 @file{/gd/gnuorg/advisory}.
 
 
@@ -160,7 +160,7 @@ ask for accounts for people who significantly help you in working on
 the package.
 @end macro
 
-@gdgnuorgtext
+@gdgnuorgtext{}
 
 @cindex down, when GNU machines are
 @cindex outage, of GNU machines
@@ -278,7 +278,7 @@ expected papers arrive.
 @cindex @file{/gd/gnuorg} directory
 @c This paragraph intentionally duplicates information given
 @c near the beginning of the file--to make sure people don't miss it.
-@gdgnuorgtext
+@gdgnuorgtext{}
 
 In order for the contributor to know person should sign papers, you need
 to ask per for the necessary papers.  If you don't know per well, and you
@@ -625,8 +625,11 @@ domain, if the movie companies don't continue buying laws to further
 extend copyright.  If you copy a file into the package from some other
 program, keep the copyright years that come with the file.
 
-Do not abbreviate the year list using a range; for instance, do not
-write @samp{1996--1998}; instead, write @samp{1996, 1997, 1998}.
+You can use a range (@samp{2008-2010}) instead of listing individual
+years (@samp{2008, 2009, 2010}) if and only if: 1)@tie{}every year in
+the range, inclusive, really is a ``copyrightable'' year that would be
+listed individually; @emph{and} 2)@tie{}you make an explicit statement
+in a @file{README} file about this usage.
 
 For files which are regularly copied from another project (such as
 @samp{gnulib}), leave the copyright notice as it is in the original.
@@ -1022,7 +1025,7 @@ default configuration for antispam purposes (see below).
 
 To create and maintain simple aliases and unmanaged lists, you can
 edit @file{/com/mailer/aliases} on the main GNU server.  If you don't
-have an account there,
+have an account there, please read
 @url{http://www.gnu.org/software/README.accounts.html} (@pxref{Getting
 a GNU Account}).
 
@@ -1096,10 +1099,10 @@ useful for your package.
 @cindex version control
 
 It is very important to keep backup files of all source files of GNU.
-You can do this using a source control system (such as RCS, CVS, Git,
-@dots{}) if you like.  The easiest way to use RCS or CVS is via the
-Version Control library in Emacs (@pxref{VC Concepts,, Concepts of
-Version Control, emacs, The GNU Emacs Manual}).
+You can do this using a source control system (such as Bazaar, RCS,
+CVS, Git, Subversion, @dots{}) if you like.  The easiest way to use
+RCS or CVS is via the Version Control library in Emacs (@pxref{VC
+Concepts,, Concepts of Version Control, emacs, The GNU Emacs Manual}).
 
 The history of previous revisions and log entries is very important for
 future maintainers of the package, so even if you do not make it
@@ -1110,15 +1113,14 @@ some day.
 @cindex @code{savannah-hackers@@gnu.org}
 The GNU Project provides a server that GNU software packages can use
 for source control and other package needs: @code{savannah.gnu.org}.
-You don't have to use this repository, but if you plan to allow public
-read-only access to your development sources, it is convenient for
-people to be able to find various GNU packages in a central place.
-Savannah is managed by @email{savannah-hackers@@gnu.org}.
+Savannah is managed by @email{savannah-hackers@@gnu.org}.  For more
+details on using and contributing to Savannah, see
+@url{http://savannah.gnu.org/maintenance}.
 
-All GNU maintainers are strongly encouraged to take advantage of
-Savannah, as sharing such a central point can serve to foster a sense
-of community among GNU developers and help in keeping up with project
-management.
+It's not a requirement, but all GNU maintainers are strongly
+encouraged to take advantage of Savannah, as sharing such a central
+point can serve to foster a sense of community among GNU developers
+and help in keeping up with project management.
 
 @cindex @code{savannah-announce@@gnu.org} mailing list
 If you do use Savannah, please subscribe to the
@@ -1233,12 +1235,12 @@ version, and checking that the result exactly matches the new version.
 @node Distribution on ftp.gnu.org
 @section Distribution on @code{ftp.gnu.org}
 @cindex GNU ftp site
-@cindex @code{ftp.gnu.org}, the GNU ftp site
+@cindex @code{ftp.gnu.org}, the GNU release site
 
-GNU packages are distributed through directory @file{/gnu} on
-@code{ftp.gnu.org}.  Each package should have a subdirectory
-named after the package, and all the distribution files for the package
-should go in that subdirectory.
+GNU packages are distributed through the directory @file{/gnu} on
+@code{ftp.gnu.org}, via both HTTP and FTP.  Each package should have a
+subdirectory named after the package, and all the distribution files
+for the package should go in that subdirectory.
 
 @c If you have an interest in seeing the monthly download logs from the FTP
 @c site at @code{ftp.gnu.org} for your program, that is something that
@@ -1254,13 +1256,13 @@ versions on @code{ftp.gnu.org}.
 @cindex beta releases
 @cindex pretest releases
 
-@cindex @code{alpha.gnu.org}, ftp site for test releases
+@cindex @code{alpha.gnu.org}, test release site
 When you release a greatly changed new major version of a program, you
 might want to do so as a pretest.  This means that you make a tar file,
 but send it only to a group of volunteers that you have recruited.  (Use
 a suitable GNU mailing list/newsgroup to recruit them.)
 
-We normally use the FTP server @code{alpha.gnu.org} for pretests and
+We normally use the server @code{alpha.gnu.org} for pretests and
 prerelease versions.  @xref{Automated FTP Uploads}, for procedural details
 of putting new versions on @code{alpha.gnu.org}.
 
@@ -1342,7 +1344,7 @@ good to also send your key to the GPG public key server: @code{gpg
 --keyserver keys.gnupg.net --send-keys @var{keyid}}, where @var{keyid}
 is the eight hex digits reported by @code{gpg --list-public-keys} on
 the @code{pub} line before the date.  For full information about GPG,
-see @url{http://www.gnu.org/software/gpg})
+see @url{http://www.gnu.org/software/gpg}.
 
 @item
 Compose a message with the following items in some @var{msgfile}.
@@ -1645,7 +1647,7 @@ Your package's web page (normally
 @item
 Your package's download location (normally
 @indicateurl{http://ftp.gnu.org/gnu/@var{package}/}).  It is also
-useful to mention the FTP mirror list at
+useful to mention the mirror list at
 @url{http://www.gnu.org/order/ftp.html}, and that
 @url{http://ftpmirror.gnu.org/@var{package/}} will automatically
 redirect to a nearby mirror.
@@ -1669,7 +1671,7 @@ simple and uniform.
 
 We encourage you to use the standard @code{www.gnu.org} template as
 the basis for your pages:
-@url{http://www.gnu.org/server/@/standards@/boilerplate-source.html}.
+@url{http://www.gnu.org/server/@/standards/@/boilerplate-source.html}.
 
 Some GNU packages have just simple web pages, but the more information
 you provide, the better.  So please write as much as you usefully can,
@@ -1884,7 +1886,10 @@ For new files:
 cvs add -ko @var{file1} @var{file2} ...
 @end example
 
-@xref{Keyword substitution,,,cvs,Version Management with CVS}.
+@c The CVS manual is now built with numeric references and no nonsplit
+@c form, so it's not worth trying to give a direct link.
+See the ``Keyword Substitution'' section in the CVS manual, available
+at @url{http://ximbiot.com/cvs/manual}.
 
 In Texinfo source, the recommended way to literally specify a
 ``dollar'' keyword is:
@@ -2035,15 +2040,16 @@ Note that this uses a space, not a slash.
 @cindex source repository
 @cindex version control system
 @cindex FTP site
+@cindex release site
 @cindex hosting
 
 We recommend using @code{savannah.gnu.org} for the source code
 repository for your package, but that's not required.  @xref{Old
 Versions}, for more information about Savannah.
 
-We strongly urge you to use @code{ftp.gnu.org} as the standard FTP
+We strongly urge you to use @code{ftp.gnu.org} as the standard
 distribution site.  Doing so makes it easier for developers and users
-to find the latest GNU releases.  However, it is ok to use another FTP
+to find the latest GNU releases.  However, it is ok to use another
 server if you wish, provided it allows access from the general public
 without limitation (for instance, without excluding any country).
 
@@ -2060,7 +2066,7 @@ following the rules stated in the license of each package.  For more
 information, see http://www.gnu.org/philosophy/free-sw.html.
 
 If you are looking for service or support for GNU software, see
-http://www.gnu.org/help/gethelp.html for suggestions of where to ask.
+http://www.gnu.org/gethelp/ for suggestions of where to ask.
 
 If you would like to contribute to the development of one of these
 packages, contact the package maintainer or the bug-reporting address
@@ -2069,6 +2075,50 @@ on www.gnu.org for more information on how to contribute.
 @end smallexample
 
 
+@node Donations
+@chapter Donations
+@cindex Donations, for packages
+@cindex Money, donated to packages
+
+As a maintainer, you might want to accept donations for your work,
+especially if you pay for any of your own hosting/development
+infrastructure.  Following is some text you can adapt to your own
+situation, and use on your package's web site, @file{README}, or
+in wherever way you find it useful:
+
+@smallexample
+We appreciate contributions of any size -- donations enable us to spend
+more time working on the project, and help cover our infrastructure
+expenses.
+
+If you'd like to make a small donation, please visit @var{url1} and do
+it through @var{payment-service}.  Since our project isn't a
+tax-exempt organization, we can't offer you a tax deduction, but for
+all donations over @var{amount1}, we'd be happy to recognize your
+contribution on @var{url2}.
+
+We are also happy to consider making particular improvements or
+changes, or giving specific technical assistance, in return for a
+substantial donation over @var{amount2}.  If you would like to discuss
+this possibility, write to us at @var{address}.
+
+Another possibility is to pay a software maintenance fee.  Again,
+write to us about this at @var{address} to discuss how much you want
+to pay and how much maintenance we can offer in return.  If you pay
+more than @var{amount1}, we can give you a document for your records.
+
+Thanks for your support!
+@end smallexample
+
+We don't recommend any specific payment service.  However, GNU
+developers should not use a service that requires them to sign a
+proprietary software license, such as Google's payment service.
+
+Of course, it is also good to encourage people to join or contribute
+to the FSF (@url{http://www.fsf.org}), either instead of or as well as
+package-specific donations.
+
+
 @node Free Software Directory
 @chapter Free Software Directory
 @cindex Free Software Directory