<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/library/std/src/sys/thread_local/statik.rs, branch 1.84.1</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.84.1</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.84.1'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2024-10-24T20:44:42+00:00</updated>
<entry>
<title>Avoid use imports in thread_local_inner! in statik</title>
<updated>2024-10-24T20:44:42+00:00</updated>
<author>
<name>Jeong YunWon</name>
<email>jeong@youknowone.org</email>
</author>
<published>2024-10-24T08:50:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=5368b120a1742893460c515bb198342d6f0a3800'/>
<id>urn:sha1:5368b120a1742893460c515bb198342d6f0a3800</id>
<content type='text'>
Fixes #131863 for wasm targets

All other macros were done in #131866, but this sub module is missed.
</content>
</entry>
<entry>
<title>std: make `thread::current` available in all `thread_local!` destructors</title>
<updated>2024-10-02T16:04:21+00:00</updated>
<author>
<name>joboet</name>
<email>jonasboettiger@icloud.com</email>
</author>
<published>2024-07-18T11:59:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d868fdce6b9ddef6abcc8de86b3ba8459def36a2'/>
<id>urn:sha1:d868fdce6b9ddef6abcc8de86b3ba8459def36a2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix doc nits</title>
<updated>2024-07-26T12:26:33+00:00</updated>
<author>
<name>John Arundel</name>
<email>john@bitfieldconsulting.com</email>
</author>
<published>2024-07-15T11:26:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a19472a93e2eecce1477011fa9f7ec49b45ca164'/>
<id>urn:sha1:a19472a93e2eecce1477011fa9f7ec49b45ca164</id>
<content type='text'>
Many tiny changes to stdlib doc comments to make them consistent (for example
"Returns foo", rather than "Return foo", per RFC1574), adding missing periods, paragraph
breaks, backticks for monospace style, and other minor nits.

https://github.com/rust-lang/rfcs/blob/master/text/1574-more-api-documentation-conventions.md#appendix-a-full-conventions-text
</content>
</entry>
<entry>
<title>std: refactor the TLS implementation</title>
<updated>2024-06-15T15:47:35+00:00</updated>
<author>
<name>joboet</name>
<email>jonasboettiger@icloud.com</email>
</author>
<published>2024-06-15T15:47:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f3facf11758af878bcfaf47fc773962dbb565024'/>
<id>urn:sha1:f3facf11758af878bcfaf47fc773962dbb565024</id>
<content type='text'>
As discovered by Mara in #110897, our TLS implementation is a total mess. In the past months, I have simplified the actual macros and their expansions, but the majority of the complexity comes from the platform-specific support code needed to create keys and register destructors. In keeping with #117276, I have therefore moved all of the `thread_local_key`/`thread_local_dtor` modules to the `thread_local` module in `sys` and merged them into a new structure, so that future porters of `std` can simply mix-and-match the existing code instead of having to copy the same (bad) implementation everywhere. The new structure should become obvious when looking at `sys/thread_local/mod.rs`.

Unfortunately, the documentation changes associated with the refactoring have made this PR rather large. That said, this contains no functional changes except for two small ones:
* the key-based destructor fallback now, by virtue of sharing the implementation used by macOS and others, stores its list in a `#[thread_local]` static instead of in the key, eliminating one indirection layer and drastically simplifying its code.
* I've switched over ZKVM (tier 3) to use the same implementation as WebAssembly, as the implementation was just a way worse version of that

Please let me know if I can make this easier to review! I know these large PRs aren't optimal, but I couldn't think of any good intermediate steps.

@rustbot label +A-thread-locals
</content>
</entry>
</feed>
