<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libstd/sync, branch 1.29.2</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.29.2</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.29.2'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2018-07-25T01:25:02+00:00</updated>
<entry>
<title>Merge remote-tracking branches 'ljedrz/dyn_libcore', 'ljedrz/dyn_libstd' and 'ljedrz/dyn_libterm' into dyn-rollup</title>
<updated>2018-07-25T01:25:02+00:00</updated>
<author>
<name>Tatsuyuki Ishi</name>
<email>ishitatsuyuki@gmail.com</email>
</author>
<published>2018-07-25T01:25:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4f1d4e4db699d674cae5dec3a8026b1388820895'/>
<id>urn:sha1:4f1d4e4db699d674cae5dec3a8026b1388820895</id>
<content type='text'>
</content>
</entry>
<entry>
<title>sync::Once: Use Acquire on the hot path, and explain why we don't use it elsewhere</title>
<updated>2018-07-17T18:51:31+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2018-07-17T18:51:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3e1254d956d944a2909f61f733427350cd96f410'/>
<id>urn:sha1:3e1254d956d944a2909f61f733427350cd96f410</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Uncapitalize "If"</title>
<updated>2018-07-12T00:19:41+00:00</updated>
<author>
<name>Matt Kraai</name>
<email>kraai@ftbfs.org</email>
</author>
<published>2018-07-12T00:19:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e488cba6784eebc36b9869239b729a4e41048d3f'/>
<id>urn:sha1:e488cba6784eebc36b9869239b729a4e41048d3f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>remove sync::Once::call_once 'static</title>
<updated>2018-07-11T02:47:59+00:00</updated>
<author>
<name>Christopher Durham</name>
<email>cad97@cad97.com</email>
</author>
<published>2018-07-11T02:47:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0f3f292b4c7a15b656a925e7ebe5f2d3955b8553'/>
<id>urn:sha1:0f3f292b4c7a15b656a925e7ebe5f2d3955b8553</id>
<content type='text'>
- [std: Rewrite the `sync` modulehttps://github.com/rust-lang/rust/commit/71d4e77db8ad4b6d821da7e5d5300134ac95974e) (Nov 2014)

    ```diff
    -    pub fn doit(&amp;self, f: ||) {
    +    pub fn doit(&amp;'static self, f: ||) {
    ```

    &gt; ```text
    &gt;  The second layer is the layer provided by `std::sync` which is intended to be
    &gt;  the thinnest possible layer on top of `sys_common` which is entirely safe to
    &gt;  use. There are a few concerns which need to be addressed when making these
    &gt;  system primitives safe:
    &gt;
    &gt;    * Once used, the OS primitives can never be **moved**. This means that they
    &gt;      essentially need to have a stable address. The static primitives use
    &gt;      `&amp;'static self` to enforce this, and the non-static primitives all use a
    &gt;      `Box` to provide this guarantee.
    &gt; ```

The author of this diff is @alexcrichton. `sync::Once` contains only a pointer to (privately hidden) `Waiter`s, which are all stack-allocated. The `'static` bound to `sync::Once` is thus unnecessary to guarantee that any OS primitives are non-relocatable.

See https://internals.rust-lang.org/t/sync-once-per-instance/7918 for more context.</content>
</entry>
<entry>
<title>Deny bare trait objects in `src/libstd`.</title>
<updated>2018-07-10T18:35:36+00:00</updated>
<author>
<name>ljedrz</name>
<email>ljedrz@gmail.com</email>
</author>
<published>2018-07-10T18:35:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=560d8079ec26f2a45ecb80e95d24917025e02104'/>
<id>urn:sha1:560d8079ec26f2a45ecb80e95d24917025e02104</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rename alloc::arc to alloc::sync, to match std::sync</title>
<updated>2018-06-29T12:01:33+00:00</updated>
<author>
<name>Simon Sapin</name>
<email>simon.sapin@exyr.org</email>
</author>
<published>2018-06-15T02:07:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c7638edf5293dd471d951e64671d60febd0b628c'/>
<id>urn:sha1:c7638edf5293dd471d951e64671d60febd0b628c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>libstd: add an RAII utility for sys_common::mutex::Mutex</title>
<updated>2018-06-17T07:18:32+00:00</updated>
<author>
<name>NODA, Kai</name>
<email>nodakai@gmail.com</email>
</author>
<published>2018-06-09T13:13:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b81da278623d9dcda1776008612bd42e1922e9c3'/>
<id>urn:sha1:b81da278623d9dcda1776008612bd42e1922e9c3</id>
<content type='text'>
Signed-off-by: NODA, Kai &lt;nodakai@gmail.com&gt;
</content>
</entry>
<entry>
<title>Update the `Once` docs to use `Once::new`</title>
<updated>2018-05-24T12:09:42+00:00</updated>
<author>
<name>Tobias Bucher</name>
<email>tobiasbucher5991@gmail.com</email>
</author>
<published>2018-05-24T12:09:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2a900e2b84f33a10ef810d6e986fc3d3be0c432d'/>
<id>urn:sha1:2a900e2b84f33a10ef810d6e986fc3d3be0c432d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add `Once::new` as a way of constructing a `Once`</title>
<updated>2018-05-24T12:08:47+00:00</updated>
<author>
<name>Tobias Bucher</name>
<email>tobiasbucher5991@gmail.com</email>
</author>
<published>2018-05-24T12:08:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1c2abda671ace3935a70b9d4c44bf944e1d34189'/>
<id>urn:sha1:1c2abda671ace3935a70b9d4c44bf944e1d34189</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add explanation for #[must_use] on mutex guards</title>
<updated>2018-05-07T17:26:28+00:00</updated>
<author>
<name>Manish Goregaokar</name>
<email>manishsmail@gmail.com</email>
</author>
<published>2018-05-07T16:27:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f8b774fbf1f57e520b58ae3828e4b3a1ddf1d97c'/>
<id>urn:sha1:f8b774fbf1f57e520b58ae3828e4b3a1ddf1d97c</id>
<content type='text'>
</content>
</entry>
</feed>
