Commit graph

10404 commits

Author SHA1 Message Date
Sean Griffin
5dbc373f70 Fix tests for SystemTime addition on mac and ios
Those platforms don't support nanosecond precision, so adding 1
nanosecond does nothing.
2015-12-03 08:27:32 -07:00
Sean Griffin
a59cd363cc Fixed make tidy error 2015-12-02 15:01:58 -07:00
Sean Griffin
a69bcd885b Ensure two SystemTimes are equal when nanos add to exactly 1B
Currently if you add a duration which should lead to 0 nanos and 1
additional second, we end up with no additional seconds, and 1000000000
nanos.
2015-12-02 13:55:35 -07:00
bors
88397e092e Auto merge of #30160 - adambadawy:fix_wait_with_output_typo, r=bluss
r? @steveklabnik
2015-12-02 07:36:40 +00:00
Adam Badawy
3bbc632344 Fix typo in src/libstd/process.rs 2015-12-01 23:12:01 -05:00
Steve Klabnik
9d05f56aab Rollup merge of #30150 - steveklabnik:fix_exe_suffix, r=alexcrichton 2015-12-01 19:01:42 -05:00
Steve Klabnik
f798f25073 Rollup merge of #30129 - tbu-:pr_doc_arrays_coerce, r=steveklabnik
Fixes #29993.
2015-12-01 19:01:41 -05:00
bors
2f95de3b3b Auto merge of #30129 - tbu-:pr_doc_arrays_coerce, r=steveklabnik
Fixes #29993.
2015-12-01 23:35:54 +00:00
Steve Klabnik
4fb296e077 Small fix to EXE_SUFFIX and DLL_EXTENSION docs 2015-12-01 16:53:48 -05:00
bors
0bfdedb010 Auto merge of #30118 - alexcrichton:fix-time-again, r=aturon
I believe that because Windows' unit of resolution is 100ns that this unit of
time will ensure that the assertions will hold true as it's representable in the
native format.

cc #29970
2015-12-01 07:40:41 +00:00
bors
baf020802f Auto merge of #30057 - steveklabnik:doc_str, r=alexcrichton
Part of #29338
2015-12-01 03:37:58 +00:00
Tobias Bucher
53f026948a Arrays don't dereference but coerce to slices
Fixes #29993.
2015-12-01 02:13:35 +00:00
bors
7269f0e9f3 Auto merge of #30080 - durka:patch-10, r=alexcrichton
Fixes #30073. The input to `cfg!` is a meta attribute, but not _any_ meta attribute (e.g. `cfg!(allow(dead_code))` doesn't compile). But the macro_rules syntax can't quite express this, so I added a note to the doc.
2015-11-30 21:15:56 +00:00
Steve Klabnik
7b30f5c256 Better docs for the str primitive
Part of #29338
2015-11-30 16:10:47 -05:00
Alex Crichton
903444015c std: Bump time margin in std::time tests
I believe that because Windows' unit of resolution is 100ns that this unit of
time will ensure that the assertions will hold true as it's representable in the
native format.

cc #29970
2015-11-30 10:53:20 -08:00
Alex Burka
f18bfb3168 tweak cfg! doc comment 2015-11-29 22:53:19 -05:00
Jack Fransham
6a56147a86 Fix #30093 2015-11-29 13:36:01 +00:00
bors
7499558dd0 Auto merge of #30092 - semarie:to_socket_addr_str_bad, r=alexcrichton
I don't reproduce it on severals hosts (virtual or real), so I can't
debug it. As Bitrig has disabled this test too, I will follow the same
here.

r? @alexcrichton
2015-11-28 19:57:45 +00:00
Sébastien Marie
6a7733a358 disable net::addr::to_socket_addr_str_bad test under openbsd
I don't reproduce it on severals hosts (virtual or real), so I can't
debug it. As Bitrig has disabled this test too, I will follow the same
here.
2015-11-28 09:10:48 +01:00
Alex Burka
f542d4aba7 fix docs for compiler builtin macros 2015-11-26 22:45:55 -05:00
bors
6f3becb18a Auto merge of #30061 - tshepang:doc-time, r=brson 2015-11-26 14:50:36 +00:00
Tshepang Lekhonkhobe
cc815d2de0 doc: this is already mentioned in previous paragraph, and is harder to read 2015-11-26 04:43:17 +02:00
Tshepang Lekhonkhobe
3dd7e6ed7c doc: fix type name 2015-11-25 22:51:01 +02:00
Tshepang Lekhonkhobe
44665c4e61 doc: add a pause 2015-11-25 22:50:47 +02:00
Tshepang Lekhonkhobe
d447ceaedb doc: split overlong sentence 2015-11-25 22:47:17 +02:00
Tshepang Lekhonkhobe
a4c0a6fccd doc: add missing commas 2015-11-25 22:46:39 +02:00
Tshepang Lekhonkhobe
e15dd99b7b doc: fix grammar 2015-11-25 22:45:39 +02:00
Tshepang Lekhonkhobe
a5b294864a doc: remove info repeated on next paragraph 2015-11-25 22:45:14 +02:00
Vadim Petrochenkov
be8ace8cac Remove all uses of #[staged_api] 2015-11-25 21:55:26 +03:00
bors
e3dfb2c45f Auto merge of #30052 - Ryman:bind_docs, r=apasel422
`socket_addr` was renamed to `local_addr` in 1.0beta.

See: f798674b86

r? @steveklabnik
2015-11-25 13:18:16 +00:00
Kevin Butler
add5054bea Fix docs for TcpListener::bind
`socket_addr` was renamed to `local_addr` in 1.0beta.

See: f798674b86
2015-11-25 13:16:37 +00:00
Manish Goregaokar
4a8f2004a6 Rollup merge of #30013 - steveklabnik:doc_char, r=brson
Part of https://github.com/rust-lang/rust/issues/29333
2015-11-25 09:21:18 +05:30
bors
338cdd7e05 Auto merge of #30016 - alexcrichton:fix-off-by-one, r=brson
Typical algebra currently doesn't work on the types in std::time currently (see
[this comment][comment]), so tweak the tests to account for this property.

[comment]: https://github.com/rust-lang/rust/issues/29866#issuecomment-159093809

Closes #29970
2015-11-24 23:24:18 +00:00
Steve Klabnik
10c6737ecf Fix up docs for char
Part of https://github.com/rust-lang/rust/issues/29333
2015-11-24 13:25:55 -05:00
bors
92f96b2445 Auto merge of #30006 - ntrepid8:skip-check-for-DYLD-libs-in-child-proc, r=alexcrichton
It seems that OS X El Capitan does not pass DYLD_* environment variables to child processes anymore.  See this link: https://forums.developer.apple.com/thread/9233

The causes a test in `src/libstd/process.rs' to fail when those environment variables are not found in the child process.  This PR skips those variables similar to how the Windows envars that start with `=` are skipped.
2015-11-24 04:26:47 +00:00
Alex Crichton
27ee3fea7a std: Tweak tests of std::time
Typical algebra currently doesn't work on the types in std::time currently (see
[this comment][comment]), so tweak the tests to account for this property.

[comment]: https://github.com/rust-lang/rust/issues/29866#issuecomment-159093809

Closes #29970
2015-11-23 15:27:07 -08:00
bors
040a77f772 Auto merge of #29952 - petrochenkov:depr, r=brson
Part of https://github.com/rust-lang/rust/issues/29935

The deprecation lint is still called "deprecated", so people can continue using `#[allow(deprecated)]` and similar things.
2015-11-23 20:08:49 +00:00
Josh Austin
c2f0442a2a skip check for DYLD envars in child proc 2015-11-23 14:08:52 -05:00
Tobias Bucher
dd162d77d4 test_inherit_env: Don't look for hidden environment variables on Windows
Fixes #29972.
2015-11-22 11:12:49 +00:00
bors
d1c7a93eff Auto merge of #29913 - tbu-:pr_windows_path_error_on_nul, r=alexcrichton
On Windows: Previously these paths were silently truncated at these NUL
characters, now they fail with `ErrorKind::InvalidInput`.
2015-11-21 02:38:18 +00:00
Tobias Bucher
71dccf8706 Also check for NULs in environment variables
This check is necessary, because the underlying API only reads strings
until the first NUL.
2015-11-21 01:11:15 +00:00
Vadim Petrochenkov
a613059e3f Rename #[deprecated] to #[rustc_deprecated] 2015-11-20 16:11:20 +03:00
bors
e5f8a3dd02 Auto merge of #29950 - fhahn:small-doc-fix-rename-var, r=bluss
This tiny PR renames the result variable in HashSet's `intersection` example from `diff` to `intersection` and the same for `union`, which seem more appropriate.
2015-11-20 12:30:00 +00:00
Florian Hahn
755caf9ff7 Rename result variable in HashSet's intersection and union examples 2015-11-20 11:40:05 +01:00
bors
b289892b5d Auto merge of #29894 - alexcrichton:stdtime, r=brson
This commit is an implementation of [RFC 1288][rfc] which adds two new unstable
types to the `std::time` module. The `Instant` type is used to represent
measurements of a monotonically increasing clock suitable for measuring time
withing a process for operations such as benchmarks or just the elapsed time to
do something. An `Instant` favors panicking when bugs are found as the bugs are
programmer errors rather than typical errors that can be encountered.

[rfc]: https://github.com/rust-lang/rfcs/pull/1288

The `SystemTime` type is used to represent a system timestamp and is not
monotonic. Very few guarantees are provided about this measurement of the system
clock, but a fixed point in time (`UNIX_EPOCH`) is provided to learn about the
relative distance from this point for any particular time stamp.

This PR takes the same implementation strategy as the `time` crate on crates.io,
namely:

|  Platform  |  Instant                 |  SystemTime              |
|------------|--------------------------|--------------------------|
| Windows    | QueryPerformanceCounter  | GetSystemTimeAsFileTime  |
| OSX        | mach_absolute_time       | gettimeofday             |
| Unix       | CLOCK_MONOTONIC          | CLOCK_REALTIME           |

These implementations can perhaps be refined over time, but they currently
satisfy the requirements of the `Instant` and `SystemTime` types while also
being portable across implementations and revisions of each platform.

cc #29866
2015-11-19 23:57:07 +00:00
Tobias Bucher
4d81c02a20 Error when paths contain NUL characters
On Windows: Previously these paths were silently truncated at these NUL
characters, now they fail with `ErrorKind::InvalidInput`.
2015-11-19 20:05:09 +00:00
Tobias Bucher
9b4f16b370 Re-unignore environment test on MinGW 2015-11-19 20:02:35 +00:00
Tobias Bucher
14983477ca Ignore malformed environment variables on Windows too
Leading equals symbols are treated as part of the variable name, if
there is no other equality symbol or none at all, the environment string
is ignored.
2015-11-19 20:00:36 +00:00
Alex Crichton
c6eb8527e0 std: Add Instant and SystemTime to std::time
This commit is an implementation of [RFC 1288][rfc] which adds two new unstable
types to the `std::time` module. The `Instant` type is used to represent
measurements of a monotonically increasing clock suitable for measuring time
withing a process for operations such as benchmarks or just the elapsed time to
do something. An `Instant` favors panicking when bugs are found as the bugs are
programmer errors rather than typical errors that can be encountered.

[rfc]: https://github.com/rust-lang/rfcs/pull/1288

The `SystemTime` type is used to represent a system timestamp and is not
monotonic. Very few guarantees are provided about this measurement of the system
clock, but a fixed point in time (`UNIX_EPOCH`) is provided to learn about the
relative distance from this point for any particular time stamp.

This PR takes the same implementation strategy as the `time` crate on crates.io,
namely:

|  Platform  |  Instant                 |  SystemTime              |
|------------|--------------------------|--------------------------|
| Windows    | QueryPerformanceCounter  | GetSystemTimeAsFileTime  |
| OSX        | mach_absolute_time       | gettimeofday             |
| Unix       | CLOCK_MONOTONIC          | CLOCK_REALTIME           |

These implementations can perhaps be refined over time, but they currently
satisfy the requirements of the `Instant` and `SystemTime` types while also
being portable across implementations and revisions of each platform.
2015-11-19 09:32:38 -08:00
bors
22e31f10c2 Auto merge of #29083 - petrochenkov:stability3, r=alexcrichton
What this patch does:
- Stability annotations are now based on "exported items" supplied by rustc_privacy and not "public items". Exported items are as accessible for external crates as directly public items and should be annotated with stability attributes.
- Trait impls require annotations now.
- Reexports require annotations now.
- Crates themselves didn't require annotations, now they do.
- Exported macros are annotated now, but these annotations are not used yet.
- Some useless annotations are detected and result in errors
- Finally, some small bugs are fixed - deprecation propagates from stable deprecated parents, items in blocks are traversed correctly (fixes https://github.com/rust-lang/rust/issues/29034) + some code cleanup.
2015-11-18 19:49:33 +00:00