8452 Commits

Author SHA1 Message Date
Steven Fackler
4af19537b2 Tweak env docs a bit
The "optionally" stuff just makes things confusing.
2015-10-30 22:13:32 -07:00
bors
fa7a3c210d Auto merge of #29484 - steveklabnik:gh29330, r=brson
These two commits do a few things:

1. reformat to 80 cols
2. use the reference-style links where appropriate for improved in-source readability
3. adds a few links, tweaks a couple of words, `3` -> `three`, stuff like that

While the diff is big due to these edits, there's no significant content change.

r? @brson
2015-10-31 04:04:45 +00:00
Steve Klabnik
744df28758 Some fixes to std index docs
Part of https://github.com/rust-lang/rust/issues/29330

Needed because of https://github.com/rust-lang/rust/issues/29481 and https://github.com/rust-lang/rust/issues/29483
2015-10-30 17:43:05 -04:00
Steve Klabnik
e2906dbeac Clean up formatting on std main page
Part of #29330
2015-10-30 17:18:26 -04:00
Alexis Beingessner
e351595c61 don't use drop_in_place as an intrinsic 2015-10-30 11:24:54 -04:00
Tshepang Lekhonkhobe
37735b4d6d run rustfmt on std::path
There was a bunch of manual fixes too... rustfmt isn't quite there yet
2015-10-30 01:15:00 +02:00
bors
e8e6892e3c Auto merge of #29289 - DiamondLovesYou:pnacl-std-crates, r=alexcrichton 2015-10-29 03:20:13 +00:00
Richard Diamond
a7d93c939a Port the standard crates to PNaCl/NaCl. 2015-10-28 17:23:28 -05:00
bors
cb591e517a Auto merge of #29298 - tbu-:pr_doc_env_panic, r=alexcrichton 2015-10-27 04:45:39 +00:00
Alex Crichton
4b43e07af9 std: Slightly more robust env var handling
As discovered in #29298, `env::set_var("", "")` will panic, but it turns out
that it *also* deadlocks on Unix systems. This happens because if a panic
happens while holding the environment lock, we then go try to read
RUST_BACKTRACE, grabbing the environment lock, causing a deadlock.

Specifically, the changes made here are:

* The environment lock is pushed into `std::sys` instead of `std::env`. This
  also only puts it in the Unix implementation, not Windows where the functions
  are already threadsafe.
* The `std::sys` implementation now returns `io::Result` so panics are
  explicitly at the `std::env` level. The panic messages have also been improved
  in these situations.
2015-10-26 10:49:20 -07:00
bors
72ed590f8b Auto merge of #29301 - reddraggone9:patch-1, r=alexcrichton
Added a single character to fix a typo in a doc comment.
2015-10-26 06:37:12 +00:00
bors
908979d53d Auto merge of #29299 - tbu-:pr_btreemap_example_dup, r=alexcrichton 2015-10-26 02:56:27 +00:00
Tobias Bucher
fe2a47b88a Say that std::env::{set_var, unset_var} *may* panic
Previously the documentation suggested that the documentation about the
panics are guarantees.
2015-10-25 20:03:42 +00:00
bors
e02ada6d38 Auto merge of #29254 - alexcrichton:stabilize-1.5, r=brson
This commit stabilizes and deprecates library APIs whose FCP has closed in the
last cycle, specifically:

Stabilized APIs:

* `fs::canonicalize`
* `Path::{metadata, symlink_metadata, canonicalize, read_link, read_dir, exists,
   is_file, is_dir}` - all moved to inherent methods from the `PathExt` trait.
* `Formatter::fill`
* `Formatter::width`
* `Formatter::precision`
* `Formatter::sign_plus`
* `Formatter::sign_minus`
* `Formatter::alternate`
* `Formatter::sign_aware_zero_pad`
* `string::ParseError`
* `Utf8Error::valid_up_to`
* `Iterator::{cmp, partial_cmp, eq, ne, lt, le, gt, ge}`
* `<[T]>::split_{first,last}{,_mut}`
* `Condvar::wait_timeout` - note that `wait_timeout_ms` is not yet deprecated
  but will be once 1.5 is released.
* `str::{R,}MatchIndices`
* `str::{r,}match_indices`
* `char::from_u32_unchecked`
* `VecDeque::insert`
* `VecDeque::shrink_to_fit`
* `VecDeque::as_slices`
* `VecDeque::as_mut_slices`
* `VecDeque::swap_remove_front` - (renamed from `swap_front_remove`)
* `VecDeque::swap_remove_back` - (renamed from `swap_back_remove`)
* `Vec::resize`
* `str::slice_mut_unchecked`
* `FileTypeExt`
* `FileTypeExt::{is_block_device, is_char_device, is_fifo, is_socket}`
* `BinaryHeap::from` - `from_vec` deprecated in favor of this
* `BinaryHeap::into_vec` - plus a `Into` impl
* `BinaryHeap::into_sorted_vec`

Deprecated APIs

* `slice::ref_slice`
* `slice::mut_ref_slice`
* `iter::{range_inclusive, RangeInclusive}`
* `std::dynamic_lib`

Closes #27706
Closes #27725
cc #27726 (align not stabilized yet)
Closes #27734
Closes #27737
Closes #27742
Closes #27743
Closes #27772
Closes #27774
Closes #27777
Closes #27781
cc #27788 (a few remaining methods though)
Closes #27790
Closes #27793
Closes #27796
Closes #27810
cc #28147 (not all parts stabilized)
2015-10-25 16:38:38 +00:00
Alex Crichton
ff49733274 std: Stabilize library APIs for 1.5
This commit stabilizes and deprecates library APIs whose FCP has closed in the
last cycle, specifically:

Stabilized APIs:

* `fs::canonicalize`
* `Path::{metadata, symlink_metadata, canonicalize, read_link, read_dir, exists,
   is_file, is_dir}` - all moved to inherent methods from the `PathExt` trait.
* `Formatter::fill`
* `Formatter::width`
* `Formatter::precision`
* `Formatter::sign_plus`
* `Formatter::sign_minus`
* `Formatter::alternate`
* `Formatter::sign_aware_zero_pad`
* `string::ParseError`
* `Utf8Error::valid_up_to`
* `Iterator::{cmp, partial_cmp, eq, ne, lt, le, gt, ge}`
* `<[T]>::split_{first,last}{,_mut}`
* `Condvar::wait_timeout` - note that `wait_timeout_ms` is not yet deprecated
  but will be once 1.5 is released.
* `str::{R,}MatchIndices`
* `str::{r,}match_indices`
* `char::from_u32_unchecked`
* `VecDeque::insert`
* `VecDeque::shrink_to_fit`
* `VecDeque::as_slices`
* `VecDeque::as_mut_slices`
* `VecDeque::swap_remove_front` - (renamed from `swap_front_remove`)
* `VecDeque::swap_remove_back` - (renamed from `swap_back_remove`)
* `Vec::resize`
* `str::slice_mut_unchecked`
* `FileTypeExt`
* `FileTypeExt::{is_block_device, is_char_device, is_fifo, is_socket}`
* `BinaryHeap::from` - `from_vec` deprecated in favor of this
* `BinaryHeap::into_vec` - plus a `Into` impl
* `BinaryHeap::into_sorted_vec`

Deprecated APIs

* `slice::ref_slice`
* `slice::mut_ref_slice`
* `iter::{range_inclusive, RangeInclusive}`
* `std::dynamic_lib`

Closes #27706
Closes #27725
cc #27726 (align not stabilized yet)
Closes #27734
Closes #27737
Closes #27742
Closes #27743
Closes #27772
Closes #27774
Closes #27777
Closes #27781
cc #27788 (a few remaining methods though)
Closes #27790
Closes #27793
Closes #27796
Closes #27810
cc #28147 (not all parts stabilized)
2015-10-25 09:36:32 -07:00
Lee Jenkins
0044a68249 Fix doc comment typo
Added a single character to fix a typo in a doc comment.
2015-10-25 09:17:27 -05:00
Tobias Bucher
5794950c2d Document possible panics for std::env::{set_var, unset_var} 2015-10-25 12:04:29 +00:00
Tobias Bucher
4b45f39f92 Remove key duplication from BTreeMap example in collections 2015-10-25 12:03:21 +00:00
bors
1d792a64b6 Auto merge of #29256 - alexcrichton:less-flaky, r=brson
The new bots we have may conflict with one another on base ports, causing tests
to fail. For example the linux-musl-64-opt and linux-64-opt bots are using the
same base port right now, causing some spurious failures every now and then.
2015-10-25 02:12:00 +00:00
bors
8d86d1a4e1 Auto merge of #29215 - fhahn:issue-28157-bad-semicolon, r=alexcrichton
PR for #28157. At the moment, `rustc` emits a warning when a bare semicolon is encountered (could also be a fail, but I think this is a backwards incompatible change).

Also I am not sure where the best place for a test for that warning would be. Seems run-pass tests do not check warnings.
2015-10-24 18:37:09 +00:00
Florian Hahn
107b4aa329 Remove bare semicolons 2015-10-24 00:35:44 +02:00
Alex Crichton
2098ff4a33 std: Add more entries to stdtest base_port
The new bots we have may conflict with one another on base ports, causing tests
to fail. For example the linux-musl-64-opt and linux-64-opt bots are using the
same base port right now, causing some spurious failures every now and then.
2015-10-23 10:51:48 -07:00
Vadim Chugunov
afc3046515 Drop advapi32 and shell32 from late_link_args. 2015-10-23 09:35:02 -07:00
bors
e518c057f5 Auto merge of #27894 - steveklabnik:gh26888, r=alexcrichton
{BTree,Hash}{Map,Set} will not update their key if it already exists, which
can matter with more complex keys. This behavior is now documented.

Fixes #26888
2015-10-23 03:13:10 +00:00
Steve Klabnik
e8e3c6f386 Document replacement behavior in some collections
{BTree,Hash}{Map,Set} will not update their key if it already exists, which
can matter with more complex keys. This behavior is now documented.

Fixes #26888
2015-10-22 20:30:42 -04:00
Wesley Wiser
3673978539 Fix doc sample for Cursor
Fixes #29219
2015-10-21 22:33:24 -04:00
Vadim Chugunov
d710f8ba1f Moar comments. 2015-10-21 10:05:27 -07:00
Alex Crichton
8aa6a117a4 std: Implement FromStr for SocketAddrV{4,6}
This was already implemented for SocketAddr, so the other types are lacking it
is just an oversight!

Closes #29183
2015-10-20 11:35:05 -07:00
bors
5e9f305642 Auto merge of #29187 - steveklabnik:rollup, r=steveklabnik
- Successful merges: #29158, #29162, #29175, #29176
- Failed merges:
2015-10-20 15:28:08 +00:00
Steve Klabnik
b314f845e0 Rollup merge of #29158 - arcnmx:process-test, r=alexcrichton
This test was mysteriously messed with as part of #28500

r? @alexcrichton
2015-10-20 09:43:47 -04:00
bors
229385c4f8 Auto merge of #29156 - arcnmx:net-tests, r=alexcrichton
Just some minor cleanup.
2015-10-20 13:39:23 +00:00
bors
a9d5285344 Auto merge of #29155 - retep998:read-no-dir, r=alexcrichton
Fixes #29150 

r? @alexcrichton
2015-10-20 10:06:42 +00:00
Vadim Chugunov
145b8438fe Use cfg_attr for switching link attrs in libunwind. 2015-10-19 18:57:09 -07:00
Steve Klabnik
2f2d8df534 Rollup merge of #29169 - apasel422:spell, r=steveklabnik
r? @steveklabnik
2015-10-19 17:14:08 -04:00
Steve Klabnik
e1d4983879 Rollup merge of #29125 - iKevinY:std-io-doc-fixes, r=alexcrichton
Just a few minor spelling/grammar fixes.
2015-10-19 17:14:07 -04:00
Andrew Paseltiner
9431f3cc7b Correct spelling in docs 2015-10-19 13:48:42 -04:00
bors
c74454a360 Auto merge of #28977 - arcnmx:cstring-into, r=alexcrichton
`OsString` has these sorts of conversions, while `CString` has been missing them. I'm iffy on `into_string` simply because the return type would be better off as `FromUtf8Error<CString>`, which of course isn't generic 😢

Also should a different/new feature gate be used?
2015-10-19 17:05:40 +00:00
arcnmx
cb48d44583 Owned conversions for CString 2015-10-19 01:29:44 -04:00
Peter Atashian
dd11d3c619 Add error kind handling for ERROR_PATH_NOT_FOUND
Fixes #29150

Signed-off-by: Peter Atashian <retep998@gmail.com>
2015-10-19 00:54:51 -04:00
arcnmx
9c3a06219a Add missing #[test] attribute to test 2015-10-19 00:54:31 -04:00
arcnmx
f7ad223f8e Touch up net tests 2015-10-19 00:19:01 -04:00
Vadim Chugunov
c807ff3b44 Create entry points for unwind frame registry in libstd. 2015-10-18 19:57:32 -07:00
Vadim Chugunov
def917afeb Implement eh_unwind_resume in libstd. 2015-10-18 19:57:32 -07:00
arcnmx
1303687d48 Clean up thread::spawn 2015-10-18 20:03:09 -04:00
Andrew Paseltiner
6031a58a20 Remove some trivial transmutes
`rbml::writer::Encoder::unsafe_clone` had no users across the entire
repo.
2015-10-17 20:29:49 -04:00
Kevin Yap
c3058a25d8 Fix minor issues with std::io docs 2015-10-17 12:35:23 -07:00
Andrew Paseltiner
d6bd8d8491 Add Shared pointer and have {Arc, Rc} use it
This change has two consequences:

1. It makes `Arc<T>` and `Rc<T>` covariant in `T`.

2. It causes the compiler to reject code that was unsound with respect
to dropck. See compile-fail/issue-29106.rs for an example of code that
no longer compiles. Because of this, this is a [breaking-change].

Fixes #29037.
Fixes #29106.
2015-10-16 18:35:31 -04:00
bors
6cdf31b12f Auto merge of #29031 - cristicbz:mtx_inner, r=alexcrichton
The implementation for `into_inner` was a bit more complex than I had hoped for---is there any simpler, less unsafe way of getting around the fact that one can't move out of a `Drop` struct?

See #28968 and rust-lang/rfcs#1269 .
2015-10-15 21:21:27 +00:00
Cristi Cobzarenco
90ccefd16e std: add into_inner and get_mut to RwLock 2015-10-15 18:05:54 +01:00
Cristi Cobzarenco
b8e8561e1a std: add into_inner and get_mut to mutex 2015-10-15 18:05:54 +01:00