]> git.lizzy.rs Git - rust.git/commit
auto merge of #6798 : alexcrichton/rust/doc-lints, r=pcwalton
authorbors <bors@rust-lang.org>
Thu, 30 May 2013 07:37:35 +0000 (00:37 -0700)
committerbors <bors@rust-lang.org>
Thu, 30 May 2013 07:37:35 +0000 (00:37 -0700)
commitca74cbdc5cc7747e429a985b7b5fb5c4e4a5d4d5
tree305a99cf736df82bef843fcfdf9270ad237f1f2e
parent31b2804fdab0046b139399589eab74995da3c265
parent395685079a2ef21c93a90ff6ccac2873b3013c7f
auto merge of #6798 : alexcrichton/rust/doc-lints, r=pcwalton

These commits perform a variety of actions:

1. The linting of missing documentation has been consolidated under one `missing_doc` attribute, and many more things are linted about.
2. A test was added for linting missing documentation, which revealed a large number of corner cases in both linting and the `missing_doc` lint pass. Some notable edge cases:
  * When compiling with `--test`, all `missing_doc` warnings are suppressed
  * If any parent of the current item has `#[doc(hidden)]`, then the `missing_doc` warning is suppressed
3. Both the std and extra libraries were modified to `#[deny(missing_doc)]` by default.

I believe that the libraries are getting to the point where they're fairly well documented, and they should definitely stay that way. If developing a particular new module, it's easy enough to add `#[allow(missing_doc)]` at the top, but those should definitely be flags for removal in favor of actual documentation.

I added as much documentation as I could throughout std/extra, although I avoided trying to document things that I knew nothing about. I can't say that this lint pass will vouch for the quality of the documentation of std/extra, but it will certainly make sure that there's at least some describing words.

That being said, I may have a different opinion, so I don't mind amending these commits to turn off the lint by default for std/extra if people think otherwise.