<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libstd/thread_local, branch try</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=try</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=try'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2015-03-23T18:28:54+00:00</updated>
<entry>
<title>Implement RFC 909: move thread_local into thread</title>
<updated>2015-03-23T18:28:54+00:00</updated>
<author>
<name>Aaron Turon</name>
<email>aturon@mozilla.com</email>
</author>
<published>2015-03-20T07:46:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6bd3ab0d8140053475a901ad4e2e80e98955bcb0'/>
<id>urn:sha1:6bd3ab0d8140053475a901ad4e2e80e98955bcb0</id>
<content type='text'>
This commit implements [RFC
909](https://github.com/rust-lang/rfcs/pull/909):

The `std::thread_local` module is now deprecated, and its contents are
available directly in `std::thread` as `LocalKey`, `LocalKeyState`, and
`ScopedKey`.

The macros remain exactly as they were, which means little if any code
should break. Nevertheless, this is technically a:

[breaking-change]

Closes #23547
</content>
</entry>
<entry>
<title>Example -&gt; Examples</title>
<updated>2015-03-12T01:11:40+00:00</updated>
<author>
<name>Steve Klabnik</name>
<email>steve@steveklabnik.com</email>
</author>
<published>2015-03-12T01:11:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=64ab111b5387e9985df188a970350c9e6c7f1451'/>
<id>urn:sha1:64ab111b5387e9985df188a970350c9e6c7f1451</id>
<content type='text'>
This brings comments in line with https://github.com/rust-lang/rfcs/blob/master/text/0505-api-comment-conventions.md#using-markdown
</content>
</entry>
<entry>
<title>Use `#[allow_internal_unstable]` for `thread_local!`</title>
<updated>2015-03-05T13:18:29+00:00</updated>
<author>
<name>Huon Wilson</name>
<email>dbau.pp+github@gmail.com</email>
</author>
<published>2015-03-01T03:09:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ab7ef7402bfab1c767b8be80f7e46947494f6d21'/>
<id>urn:sha1:ab7ef7402bfab1c767b8be80f7e46947494f6d21</id>
<content type='text'>
This destabilises all the implementation details of `thread_local!`,
since they do not *need* to be stable with the new attribute.
</content>
</entry>
<entry>
<title>Enable recursion for visit_ty in lint visitor</title>
<updated>2015-03-02T23:35:48+00:00</updated>
<author>
<name>Ivan Petkov</name>
<email>ivanppetkov@gmail.com</email>
</author>
<published>2015-03-01T07:24:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2b03718618d66e7e672663230be1ee857d3fb89a'/>
<id>urn:sha1:2b03718618d66e7e672663230be1ee857d3fb89a</id>
<content type='text'>
* The lint visitor's visit_ty method did not recurse, and had a
  reference to the now closed #10894
* The newly enabled recursion has only affected the `deprectated` lint
  which now detects uses of deprecated items in trait impls and
  function return types
* Renamed some references to `CowString` and `CowVec` to `Cow&lt;str&gt;` and
  `Cow&lt;[T]&gt;`, respectively, which appear outside of the crate which
  defines them
* Replaced a few instances of `InvariantType&lt;T&gt;` with
  `PhantomData&lt;Cell&lt;T&gt;&gt;`
* Disabled the `deprecated` lint in several places that
  reference/implement traits on deprecated items which will get cleaned
  up in the future
* Disabled the `exceeding_bitshifts` lint for
  compile-fail/huge-array-simple test so it doesn't shadow the expected
  error on 32bit systems
* Unfortunately, this means that if a library declares
  `#![deny(deprecated)]` and marks anything as deprecated, it will have
  to disable the lint for any uses of said item, e.g. any impl the now
  deprecated item

For any library that denies deprecated items but has deprecated items
of its own, this is a [breaking-change]
</content>
</entry>
<entry>
<title>Add some missing stability attributes on struct fields.</title>
<updated>2015-02-27T01:52:43+00:00</updated>
<author>
<name>Huon Wilson</name>
<email>dbau.pp+github@gmail.com</email>
</author>
<published>2015-02-25T12:12:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=060661d2b4a323c83a1bf043234eae8a344ff6aa'/>
<id>urn:sha1:060661d2b4a323c83a1bf043234eae8a344ff6aa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #22728 - vojtechkral:int-audit-thread-local, r=alexcrichton</title>
<updated>2015-02-24T06:38:34+00:00</updated>
<author>
<name>Manish Goregaokar</name>
<email>manishsmail@gmail.com</email>
</author>
<published>2015-02-24T01:44:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9b7c749e7dbcbfcb3e6c3d6b611d6d5093703d8e'/>
<id>urn:sha1:9b7c749e7dbcbfcb3e6c3d6b611d6d5093703d8e</id>
<content type='text'>
 Integer audit in `libstd/thread_local/*`, part of #22240
</content>
</entry>
<entry>
<title>Test fixes and rebase conflicts</title>
<updated>2015-02-23T20:46:11+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2015-02-23T19:52:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ee6f2a1ad6ab79ed954cd96fff6eaddcdfb6a043'/>
<id>urn:sha1:ee6f2a1ad6ab79ed954cd96fff6eaddcdfb6a043</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Integer audit in `libstd/thread_local/*`, part of #22240</title>
<updated>2015-02-23T16:33:57+00:00</updated>
<author>
<name>Vojtech Kral</name>
<email>vojtech@kral.hk</email>
</author>
<published>2015-02-23T16:24:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e5e76e9b968cc61012321d3a916e0315b58c4484'/>
<id>urn:sha1:e5e76e9b968cc61012321d3a916e0315b58c4484</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use boxed functions instead of transmute</title>
<updated>2015-02-22T23:59:17+00:00</updated>
<author>
<name>Stepan Koltsov</name>
<email>stepan.koltsov@gmail.com</email>
</author>
<published>2015-02-22T23:58:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=26d9f0ab1aeb3d7b440911104cf17741f83aa0f5'/>
<id>urn:sha1:26d9f0ab1aeb3d7b440911104cf17741f83aa0f5</id>
<content type='text'>
... to convert between Box and raw pointers. E. g. use

```
let b: Box&lt;Foo&gt; = Box::from_raw(p);
```

instead of

```
let b: Box&lt;Foo&gt; = mem::transmute(p);
```

Patch also changes closure release code in `src/libstd/sys/unix/thread.rs`
when `pthread_create` failed. Raw pointer was transmuted to box of
`FnOnce()` instead of `Thunk`. This code was probably never executed,
because `pthread_create` rarely fails in practice.
</content>
</entry>
<entry>
<title>Test fixes and rebase conflicts</title>
<updated>2015-02-18T03:42:28+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2015-02-18T03:00:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=665ea963d3c29ef7670662707f2f2307f000efa3'/>
<id>urn:sha1:665ea963d3c29ef7670662707f2f2307f000efa3</id>
<content type='text'>
</content>
</entry>
</feed>
