From 2d17585dbb6fc287facbbeda7d89a817430349dd Mon Sep 17 00:00:00 2001
From: Beman Dawes Introduction This page describes requirements and guidelines for the content
of a library submitted to Boost.Boost Library Requirements and Guidelines
+
+Requirements
+ License requirements
+ Portability requirements
+ Ownership
+Guidelines
+ Design and programming
+ Directory structure and
+filenames
+ Naming consistency
+ Documentation
+Rationale
+ Exception-specification
+rationale
+ Naming conventions rationale
+ Source code fonts rationale
+ Rationale rationale
+ Acknowledgements rationaleIntroduction
Place a copyright notice in all the important files you submit. -Boost.org won't accept libraries without clear copyright information.
+Boost won't accept libraries without clear copyright information.Please use these guidelines as a checklist for preparing the content a library submission. Not every guideline applies to every @@ -133,7 +152,7 @@ library, but a reasonable effort to comply is expected.
buildIf the documentation is in a doc sub-directory, the primary directory should +contain an index.html file which redirects to the doc subdirectory:
+++<html> +<head> +<meta http-equiv="refresh" content="0; URL=doc/index.html"> +</head> +<body> +Automatic redirection failed, please go to +<a href="doc/index.html">doc/index.html</a> +</body> +</html>+
As library developers and users have gained experience with Boost, the +following consistent naming approach has come to be viewed as very helpful, +particularly for larger libraries which need their own header subdirectories and +namespaces.
+Here is how it works. The library is given a name which describes the +contents of the library. Cryptic abbreviations are not acceptable. +Following the practice of the C++ Standard Library, names are usually singular +rather than plural. For example, a library dealing with file systems might +chose the name "filesystem", but not "filesystems", "fs" or "nicecode".
+Even the simplest library needs some documentation; the amount should be proportional to the need. The documentation should assume the readers have a basic knowledge of C++, but are not necessarily experts.
The format for documentation should be HTML, and should not require an -advanced browser or server-side extensions.
+advanced browser or server-side extensions. The documentation entry point should +always be a file named index.html or index.htm.There is no single right way to do documentation. HTML documentation is often organized quite differently from traditional printed documents. Task-oriented styles differ from reference oriented styles. In the end, it comes down to the @@ -277,7 +330,7 @@ C++ programmer to use the library successfully?
If you need more help with how to write documentation you can check out the article on Writing Documentation for Boost.
-Rationale for some of the requirements and guidelines follows.
Rationale is defined as "The fundamental reasons for something; basis." by the American Heritage Dictionary.
Beman Dawes comments: Failure to supply contemporaneous rationale for @@ -351,8 +404,8 @@ suggestion. Major contributions are usually acknowledged in the documentation, while minor fixes are often mentioned in comments within the code itself.
Revised 02 November, 2001
+Revised 15 August, 2002