<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libstd/sync, branch 1.0.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.0.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.0.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2015-05-11T17:05:21+00:00</updated>
<entry>
<title>Squeeze the last bits of `task`s in documentation in favor of `thread`</title>
<updated>2015-05-11T17:05:21+00:00</updated>
<author>
<name>Barosl Lee</name>
<email>vcs@barosl.com</email>
</author>
<published>2015-05-11T17:05:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=276b436530aa9714f23b436dec7e865cbeb8bdc4'/>
<id>urn:sha1:276b436530aa9714f23b436dec7e865cbeb8bdc4</id>
<content type='text'>
An automated script was run against the `.rs` and `.md` files,
subsituting every occurrence of `task` with `thread`. In the `.rs`
files, only the texts in the comment blocks were affected.
</content>
</entry>
<entry>
<title>Clarify Once::call_once memory ordering guarantees in docs</title>
<updated>2015-05-10T19:20:07+00:00</updated>
<author>
<name>inrustwetrust</name>
<email>inrustwetrust@users.noreply.github.com</email>
</author>
<published>2015-04-28T19:07:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b84f018bb48b3ce99d18155b4d8620e04ef058bd'/>
<id>urn:sha1:b84f018bb48b3ce99d18155b4d8620e04ef058bd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge pull request #25192 from alexcrichton/beta-backport</title>
<updated>2015-05-07T23:51:22+00:00</updated>
<author>
<name>Brian Anderson</name>
<email>andersrb@gmail.com</email>
</author>
<published>2015-05-07T23:51:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=83b70c2a6637f782a4cceb9fe34a111128cac473'/>
<id>urn:sha1:83b70c2a6637f782a4cceb9fe34a111128cac473</id>
<content type='text'>
Backport of PRs to Beta</content>
</entry>
<entry>
<title>Make RwLock::try_write try to obtain a write lock</title>
<updated>2015-05-07T21:39:17+00:00</updated>
<author>
<name>John Gallagher</name>
<email>jgallagher@bignerdranch.com</email>
</author>
<published>2015-05-06T15:47:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b94f1589f479a751ec98afd8ee108c7454d44d90'/>
<id>urn:sha1:b94f1589f479a751ec98afd8ee108c7454d44d90</id>
<content type='text'>
Conflicts:
	src/libstd/sync/rwlock.rs
</content>
</entry>
<entry>
<title>std: update select internals to not use mutable transmuting</title>
<updated>2015-05-07T21:22:52+00:00</updated>
<author>
<name>Sean McArthur</name>
<email>sean.monstar@gmail.com</email>
</author>
<published>2015-04-13T21:49:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8ed09972780d8d157cbe7f576d175284fbe097fa'/>
<id>urn:sha1:8ed09972780d8d157cbe7f576d175284fbe097fa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add downcasting to std::error::Error</title>
<updated>2015-05-05T17:57:01+00:00</updated>
<author>
<name>Aaron Turon</name>
<email>aturon@mozilla.com</email>
</author>
<published>2015-04-24T21:34:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=279eaabfda25072f3ba20d4c8ea5fdd4f29382ea'/>
<id>urn:sha1:279eaabfda25072f3ba20d4c8ea5fdd4f29382ea</id>
<content type='text'>
This commit brings the `Error` trait in line with the [Error interoperation
RFC](https://github.com/rust-lang/rfcs/pull/201) by adding downcasting,
which has long been intended. This change means that for any `Error`
trait objects that are `'static`, you can downcast to concrete error
types.

To make this work, it is necessary for `Error` to inherit from
`Reflect` (which is currently used to mark concrete types as "permitted
for reflection, aka downcasting"). This is a breaking change: it means
that impls like

```rust
impl&lt;T&gt; Error for MyErrorType&lt;T&gt; { ... }
```

must change to something like

```rust
impl&lt;T: Reflect&gt; Error for MyErrorType&lt;T&gt; { ... }
```

except that `Reflect` is currently unstable (and should remain so for
the time being). For now, code can instead bound by `Any`:

```rust
impl&lt;T: Any&gt; Error for MyErrorType&lt;T&gt; { ... }
```

which *is* stable and has `Reflect` as a super trait. The downside is
that this imposes a `'static` constraint, but that only
constrains *when* `Error` is implemented -- it does not actually
constrain the types that can implement `Error`.

[breaking-change]

Conflicts:
	src/libcore/marker.rs
</content>
</entry>
<entry>
<title>std: Remove deprecated/unstable num functionality</title>
<updated>2015-04-23T22:18:14+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2015-04-17T22:32:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0372484acc0270585479caf8cdccc6eb0106d8be'/>
<id>urn:sha1:0372484acc0270585479caf8cdccc6eb0106d8be</id>
<content type='text'>
This commit removes all the old casting/generic traits from `std::num` that are
no longer in use by the standard library. This additionally removes the old
`strconv` module which has not seen much use in quite a long time. All generic
functionality has been supplanted with traits in the `num` crate and the
`strconv` module is supplanted with the [rust-strconv crate][rust-strconv].

[rust-strconv]: https://github.com/lifthrasiir/rust-strconv

This is a breaking change due to the removal of these deprecated crates, and the
alternative crates are listed above.

[breaking-change]

Conflicts:
	src/libstd/num/strconv.rs
</content>
</entry>
<entry>
<title>pluralize doc comment verbs and add missing periods</title>
<updated>2015-04-13T17:57:51+00:00</updated>
<author>
<name>Andrew Paseltiner</name>
<email>apaseltiner@gmail.com</email>
</author>
<published>2015-04-13T14:21:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6fa16d6a473415415cb87a1fe6754aace32cbb1c'/>
<id>urn:sha1:6fa16d6a473415415cb87a1fe6754aace32cbb1c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Indicate keyword in doc comment is code-like</title>
<updated>2015-04-09T19:02:14+00:00</updated>
<author>
<name>Corey Farwell</name>
<email>coreyf@rwell.org</email>
</author>
<published>2015-04-09T19:02:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=69f63e9c729962b9d5594cdff57a12ec15f3944d'/>
<id>urn:sha1:69f63e9c729962b9d5594cdff57a12ec15f3944d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #24029 - nagisa:print-locking, r=alexcrichton</title>
<updated>2015-04-08T19:03:09+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2015-04-08T19:03:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ff804778c8d69d7835cf7076886ac5dac9a39659'/>
<id>urn:sha1:ff804778c8d69d7835cf7076886ac5dac9a39659</id>
<content type='text'>
write_fmt calls write for each formatted field. The default implementation of write_fmt is used,
which will call write on not-yet-locked stdout (and write locking after), therefore making print!
in multithreaded environment still interleave contents of two separate prints.

I’m not sure whether we want to do this change, though, because it has the same deadlock hazard which we tried to avoid by not locking inside write_fmt itself (see [this comment](https://github.com/rust-lang/rust/blob/80def6c2447d23a624e611417f24cf0ab2a5a676/src/libstd/io/stdio.rs#L267)).

Spotted on [reddit].

cc @alexcrichton 

[reddit]: http://www.reddit.com/r/rust/comments/31comh/println_with_multiple_threads/
</content>
</entry>
</feed>
