Alex Crichton [Sun, 11 Jan 2015 06:56:01 +0000 (22:56 -0800)]
test: Use Thread::scoped in two more tests
I saw these hanging on a windows bot, and the previous ones seem to have calmed
down after switching from Thread::spawn to Thread::scoped, so try that here as
well!
Guillaume Pinot [Sat, 10 Jan 2015 19:14:21 +0000 (20:14 +0100)]
Improvement of shootout-binarytrees.rs
Part of #18085
Instead of using an Enum, we use a struct with Option<&Tree> as leaves. It allow
to limit a lot of allocation.
before:
```
texitoi@vaio:~/dev/benchmarksgame-rs$ time ./bin/binary-trees-orig 20
stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152
524288 trees of depth 6 check: -524288
131072 trees of depth 8 check: -131072
32768 trees of depth 10 check: -32768
8192 trees of depth 12 check: -8192
2048 trees of depth 14 check: -2048
512 trees of depth 16 check: -512
128 trees of depth 18 check: -128
32 trees of depth 20 check: -32
long lived tree of depth 20 check: -1
real 0m3.860s
user 0m11.032s
sys 0m3.572s
```
after:
```
texitoi@vaio:~/dev/benchmarksgame-rs$ time ./bin/binary-trees 20
stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152
524288 trees of depth 6 check: -524288
131072 trees of depth 8 check: -131072
32768 trees of depth 10 check: -32768
8192 trees of depth 12 check: -8192
2048 trees of depth 14 check: -2048
512 trees of depth 16 check: -512
128 trees of depth 18 check: -128
32 trees of depth 20 check: -32
long lived tree of depth 20 check: -1
bors [Sat, 10 Jan 2015 05:55:07 +0000 (05:55 +0000)]
auto merge of #20802 : huonw/rust/book-css, r=steveklabnik
There is likely to be new users with the alpha release, and there are a lot of documents on the internet (StackOverflow, reddit, blogs) that refer to these guides, so emitting a more helpful error than "404" is nice. Hence, I've temporarily reinstated stub documents for each of the old guides, referring to as relevant a part of the book as possible.
Also, rustbook was silently ignoring some errors, which lead to an inconsistency with directory creation/file writing. This meant the CSS file was not being written if no `doc` directory existed in the users build dir (e.g. the buildbots). This should mean that the CSS will appear automatically in later builds.
bors [Sat, 10 Jan 2015 03:45:11 +0000 (03:45 +0000)]
auto merge of #20782 : iKevinY/rust/trpl-formatting, r=steveklabnik
Here's my PR for the changes discussed in #19823. I decided to leave `_these_` types of italics the way there were because it differentiates the use of italics for emphasis from `*key term*` italics. Otherwise, bolded terms have been changed to italics, and single and double quotes have been changed appropriately, depending on their context (my judgement may not be the best, though).
r? @steveklabnik (congratulations on #19897 being finalized and merged, by the way!)
bors [Sat, 10 Jan 2015 00:55:12 +0000 (00:55 +0000)]
auto merge of #20828 : alexcrichton/rust/issue-20823, r=brson
This will temporarily prevent warnings generated from expanding to code that the
test harness itself uses. This solution will require tweaking around the beta
cycle, but it will prevent spurious warnings for now.
Alex Crichton [Fri, 9 Jan 2015 21:26:21 +0000 (13:26 -0800)]
syntax: Add #[allow(unstable)] to --test expansion
This will temporarily prevent warnings generated from expanding to code that the
test harness itself uses. This solution will require tweaking around the beta
cycle, but it will prevent spurious warnings for now.
Huon Wilson [Fri, 9 Jan 2015 09:26:31 +0000 (20:26 +1100)]
Ensure that the book is built after the doc/ directory.
Without this, rustbook was failing because it was expecting the
directory to exist. (Previously, rustbook was just silently failing to
install the CSS files due to this.)
Huon Wilson [Fri, 9 Jan 2015 08:47:09 +0000 (19:47 +1100)]
Add stub deprecation files for each of the old guides.
There are hundreds of stackoverflow answers, reddit posts and blog
articles that link to these documents, so it's a nicer user experience
if they're not plain 404s.
The intention is to let these hang around only for relatively short
while. The alpha is likely to bring in many new users and they will be
reading the documents mentioned above.
Kevin Yap [Fri, 9 Jan 2015 00:52:50 +0000 (16:52 -0800)]
Standardize punctuation & formatting of TRPL
This commit is an attempt to standardize the use of punctuation and
formatting in "The Rust Programming Language" as discussed in #19823.
- Convert bold text to italicized textcwhen referring to terminology.
- Convert single-quoted text to italicized or double-quoted text,
depending on context.
- Use double quotes only in the case of scare quotes or quotations.
Michael Neumann [Thu, 8 Jan 2015 18:04:34 +0000 (19:04 +0100)]
Fix destroy assertions in mutex/rwlock/condvar
On DragonFly pthread_{mutex,rwlock,condvar}_destroy() returns EINVAL
when called on a pthread_{mutex,rwlock,condvar}_t that was just
initialized via PTHREAD_{MUTEX,RWLOCK,CONDVAR}_INITIALIZER and not used
in the meantime or initialized via pthread_{mutex,rwlock,condvar}_init().
Change the code to treat a return value of EINVAL on DragonFly as success.
Alex Crichton [Thu, 8 Jan 2015 17:22:03 +0000 (09:22 -0800)]
rollup merge of #20738: brson/feature-staging2
This gets rid of the 'experimental' level, removes the non-staged_api
case (i.e. stability levels for out-of-tree crates), and lets the
staged_api attributes use 'unstable' and 'deprecated' lints.
This makes the transition period to the full feature staging design
a bit nicer.
Alex Crichton [Thu, 8 Jan 2015 17:21:57 +0000 (09:21 -0800)]
rollup merge of #19897: steveklabnik/trpl
An updated version of https://github.com/rust-lang/rust/pull/19461
This version vendors aturon/rust-book@731f7bf and builds it when building the docs. This is almost great, except my `make`-foo is poor, so I have my own personal paths in `mk/docs.mk`. How should I best get around that?
Steve Klabnik [Tue, 2 Dec 2014 14:20:48 +0000 (09:20 -0500)]
"The Rust Programming Language"
This pulls all of our long-form documentation into a single document,
nicknamed "the book" and formally titled "The Rust Programming
Language."
A few things motivated this change:
* People knew of The Guide, but not the individual Guides. This merges
them together, helping discoverability.
* You can get all of Rust's longform documentation in one place, which
is nice.
* We now have rustbook in-tree, which can generate this kind of
documentation. While its style is basic, the general idea is much
better: a table of contents on the left-hand side.
* Rather than a almost 10,000-line guide.md, there are now smaller files
per section.
bors [Thu, 8 Jan 2015 16:15:03 +0000 (16:15 +0000)]
auto merge of #20032 : Manishearth/rust/plugin-loader, r=cmr
`rustc something.rs -L folder_with_plugin_dylib/ -Z extra-plugins=foo` works via this
My way of testing this is by cloning https://github.com/Manishearth/rust-clippy, `cargo build`ing it, and then running `rustc examples/box_vec.rs -L target/ -Z extra-plugins=rust_clippy` after editing out the `exern crate rust_clippy` from `box_vec.rs`