Add struct and type doc comments for extra::url::*
Add struct and type doc comments for extra::url::*

Updated doc comments further, following suggestions from huonw in PR
#10752.
rename MutableVector::mut_split(at) to MutableVector::mut_split_at(at)
Declare librustrt a static dependency of libextra

This wasn't uncovered during testing because the librustrt is available locally
in the build directory (and it needs to be for all the tests to link against it
as well).

Closes #10765
Add test for #3053. Fixes #3053.
Add section on closure types to manual
Add a macro to check if logging at a given label is enabled

This is useful when the information that is needed to do useful logging
is expensive to produce.
auto merge of #10770 : alexcrichton/rust/static-librustrt, r=alexcrichton

This wasn't uncovered during testing because the librustrt is available locally
in the build directory (and it needs to be for all the tests to link against it
as well).

Closes #10765
rustdoc: Tell rustc we're building a library

This makes sure that when generating documentation we don't waste time doing
things like looking for a main function.
auto merge of #10772 : alexcrichton/rust/issue-3053, r=alexcrichton

Rebasing #10446 with a `pub fn main`
Add test to check for debug logging disabled at compile time
auto merge of #10773 : jvns/rust/patch-1, r=cmr

The section on closure types was missing, so I added one. I'm new to Rust, so there are probably important things to say about closure types that I'm missing here.

I tested the example with the latest Rust nightly.
auto merge of #10782 : alexcrichton/rust/rustdoc-lib, r=thestinger

This makes sure that when generating documentation we don't waste time doing
things like looking for a main function.
Continue tightening holes in reachability

* Don't flag any address_insignificant statics as reachable because the whole
  point of the address_insignificant optimization is that the static is not
  reachable. Additionally, there's no need for it to be reachable because LLVM
  optimizes it away.

* Be sure to not leak external node ids into our reachable set, this can
  spuriously cause local items to be considered reachable if the node ids just
  happen to line up
Tidy up a few problems with run-make tests

Use the correct set of dependencies as well as CFG_PYTHON instead of assuming
'python' is the right one.
Resume propagation of linking to native dylibs

The reasons for this are outlined in issue #10743 as well as the comment I have
now placed in the code.

Closes #10743
auto merge of #10777 : alexcrichton/rust/issue-10743, r=luqmana

Commit messages have the fun details, the focus of this is closing #10743 though
add MutableVector::mut_split(self, pred) -> DoubleEndedIterator<&mut [T]>

This method is the mutable version of ImmutableVector::split.  It is
a DoubleEndedIterator, making mut_rsplit irrelevent.  The size_hint
method is not optimal because of #9629.

At the same time, clarify *split* iterator doc.
auto merge of #10757 : TeXitoi/rust/mut-split-iter, r=alexcrichton

I've renamed `MutableVector::mut_split(at)` to `MutableVector::mut_split_at(at)` to be coherent with ImmutableVector.  As specified in the commit log, The `size_hint` method is not optimal because of #9629.
auto merge of #10768 : Blei/rust/logging-enabled-macros, r=alexcrichton

This is useful when the information that is needed to do useful logging
is expensive to produce.