<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libstd/sys/unix/mod.rs, branch 1.27.1</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.27.1</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.27.1'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2018-04-11T10:05:13+00:00</updated>
<entry>
<title>Prevent EPIPE causing ICEs in rustc and rustdoc</title>
<updated>2018-04-11T10:05:13+00:00</updated>
<author>
<name>varkor</name>
<email>github@varkor.com</email>
</author>
<published>2018-04-10T22:55:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=7ab31f6556c2cce433695b113f53d6275edd724d'/>
<id>urn:sha1:7ab31f6556c2cce433695b113f53d6275edd724d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>std: Avoid use of `libc` in portable modules</title>
<updated>2017-11-09T15:56:44+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2017-11-01T20:04:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=5c3fe111d4a6e72f0461320f5166bcd6aaf2f37f'/>
<id>urn:sha1:5c3fe111d4a6e72f0461320f5166bcd6aaf2f37f</id>
<content type='text'>
This commit removes usage of the `libc` crate in "portable" modules like
those at the top level and `sys_common`. Instead common types like `*mut
u8` or `u32` are used instead of `*mut c_void` or `c_int` as well as
switching to platform-specific functions like `sys::strlen` instead of
`libc::strlen`.
</content>
</entry>
<entry>
<title>std: Move the `cmath` module into the `sys` module</title>
<updated>2017-11-09T04:42:23+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2017-11-01T19:59:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=348930eb4e75ee9ce42e783fe9942c8eb5165bc1'/>
<id>urn:sha1:348930eb4e75ee9ce42e783fe9942c8eb5165bc1</id>
<content type='text'>
This commit moves the `f32::cmath` and `f64::cmath` modules into the
`sys` module. Note that these are not publicly exported modules, simply
implementation details. These modules are already platform-specific with
shims on MSVC and this is mostly just a reflection of that reality. This
should also help cut down on `#[cfg]` traffic if platforms are brought on
which don't directly support these functions.
</content>
</entry>
<entry>
<title>std: Remove `rand` crate and module</title>
<updated>2017-11-09T04:41:17+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2017-11-01T19:32:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6bc8f164b09b9994e6a2d4c4ca60d7d36c09d3fe'/>
<id>urn:sha1:6bc8f164b09b9994e6a2d4c4ca60d7d36c09d3fe</id>
<content type='text'>
This commit removes the `rand` crate from the standard library facade as
well as the `__rand` module in the standard library. Neither of these
were used in any meaningful way in the standard library itself. The only
need for randomness in libstd is to initialize the thread-local keys of
a `HashMap`, and that unconditionally used `OsRng` defined in the
standard library anyway.

The cruft of the `rand` crate and the extra `rand` support in the
standard library makes libstd slightly more difficult to port to new
platforms, namely WebAssembly which doesn't have any randomness at all
(without interfacing with JS). The purpose of this commit is to clarify
and streamline randomness in libstd, focusing on how it's only required
in one location, hashmap seeds.

Note that the `rand` crate out of tree has almost always been a drop-in
replacement for the `rand` crate in-tree, so any usage (accidental or
purposeful) of the crate in-tree should switch to the `rand` crate on
crates.io. This then also has the further benefit of avoiding
duplication (mostly) between the two crates!
</content>
</entry>
<entry>
<title>Remove nacl from libstd</title>
<updated>2017-10-05T03:01:41+00:00</updated>
<author>
<name>est31</name>
<email>MTest31@outlook.com</email>
</author>
<published>2017-10-05T03:01:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=aad1c998c7a08dd06719845dd5b3b962dfcb0be7'/>
<id>urn:sha1:aad1c998c7a08dd06719845dd5b3b962dfcb0be7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Re-enable networking module fo rL4Re</title>
<updated>2017-09-08T12:36:56+00:00</updated>
<author>
<name>Sebastian Humenda</name>
<email>shumenda@gmx.de</email>
</author>
<published>2017-09-06T14:01:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0b77464d2234231e13d03acd1d580ab2e3369d64'/>
<id>urn:sha1:0b77464d2234231e13d03acd1d580ab2e3369d64</id>
<content type='text'>
As suggested in the discussion of PR #43972, std should provide a uniform API to
all platforms. Since there's no networking on L4Re, this now is a module in
`sys::net` providing types and functions/methods returning an error for each
action.
</content>
</entry>
<entry>
<title>Add modifications needed for L4re in libstd</title>
<updated>2017-09-08T12:36:56+00:00</updated>
<author>
<name>Tobias Schaffner</name>
<email>tschaff@genua.de</email>
</author>
<published>2017-08-18T09:50:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9bbc6dbde3e3807362680a355098102bb38a67fe'/>
<id>urn:sha1:9bbc6dbde3e3807362680a355098102bb38a67fe</id>
<content type='text'>
This commit adds the needed modifications to compile the std crate
for the L4 Runtime environment (L4Re).

A target for the L4Re was introduced in commit:
c151220a84e40b65e45308cc0f3bbea4466d3acf

In many aspects implementations for linux also apply for the L4Re
microkernel.

Two uncommon characteristics had to be resolved:
* L4Re has no network funktionality
* L4Re has a maximum stacksize of 1Mb for threads

Co-authored-by: Sebastian Humenda &lt;sebastian.humenda@tu-dresden.de&gt;
</content>
</entry>
<entry>
<title>Match c_char definitions and enable signal reset for L4Re</title>
<updated>2017-09-08T12:36:56+00:00</updated>
<author>
<name>Sebastian Humenda</name>
<email>shumenda@gmx.de</email>
</author>
<published>2017-08-17T11:23:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2cf0a4ad4690c587d755dc6e5383779dddb9b178'/>
<id>urn:sha1:2cf0a4ad4690c587d755dc6e5383779dddb9b178</id>
<content type='text'>
*   Match definition of c_char in os/raw.rs with the libc definition

    Due to historic reasons, os/raw.rs redefines types for c_char from
    libc, but these didn't match. Now they do :).

*   Enable signal reset on exec for L4Re

    L4Re has full signal emulation and hence it needs to reset the
    signal set of the child with sigemptyset. However, gid and uid
    should *not* be set.
</content>
</entry>
<entry>
<title>Exposed all platform-specific documentation.</title>
<updated>2017-08-10T05:43:59+00:00</updated>
<author>
<name>kennytm</name>
<email>kennytm@gmail.com</email>
</author>
<published>2017-08-05T06:39:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b4114ebe3a19d7d9bdacf700cc67bd2709eafe5b'/>
<id>urn:sha1:b4114ebe3a19d7d9bdacf700cc67bd2709eafe5b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rustc: Implement the #[global_allocator] attribute</title>
<updated>2017-07-05T21:37:01+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2017-06-03T21:54:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=695dee063bcd40f154bb27b7beafcb3d4dd775ac'/>
<id>urn:sha1:695dee063bcd40f154bb27b7beafcb3d4dd775ac</id>
<content type='text'>
This PR is an implementation of [RFC 1974] which specifies a new method of
defining a global allocator for a program. This obsoletes the old
`#![allocator]` attribute and also removes support for it.

[RFC 1974]: https://github.com/rust-lang/rfcs/pull/197

The new `#[global_allocator]` attribute solves many issues encountered with the
`#![allocator]` attribute such as composition and restrictions on the crate
graph itself. The compiler now has much more control over the ABI of the
allocator and how it's implemented, allowing much more freedom in terms of how
this feature is implemented.

cc #27389
</content>
</entry>
</feed>
