Commit Graph

14217 Commits

Author SHA1 Message Date
Elinvynia 05fc7faacb Better documentation for io::Read::read() return value 2020-05-09 01:17:20 +02:00
Dylan DPC c818e84821 Rollup merge of #71980 - steveklabnik:warnings-fixes, r=Mark-Simulacrum
Allow a few warnings.

On Windows, these types were causing warnings to be emitted during the
build. These types are allowed to not have idiomatic names, so the
warning should be supressed.
2020-05-07 17:59:00 +02:00
Steve Klabnik d14f000ccc Allow a few warnings.
On Windows, these types were causing warnings to be emitted during the
build. These types are allowed to not have idiomatic names, so the
warning should be supressed.
2020-05-07 07:23:06 -05:00
Dylan DPC a6a7c755fa Rollup merge of #71591 - hermitcore:thread_create, r=hanna-kruppe
use new interface to create threads on HermitCore

- the new interface allows to define the stack size
- increase the default stack size to 1 MByte
2020-05-06 16:58:53 +02:00
Dylan DPC b86620a558 Rollup merge of #71921 - RalfJung:open-mode, r=hanna-kruppe
explain the types used in the open64 call

Fixes https://github.com/rust-lang/rust/issues/71915, where I learned about this quirk. I don't actually know what I am talking about here. ;)
2020-05-06 13:22:22 +02:00
Ralf Jung fbf791bd52 explain the types used in the open64 call 2020-05-05 17:08:22 +02:00
Ralf Jung f9866f95af rely on rdlock/wrlock not returning anything but the specified error codes 2020-05-05 09:08:00 +02:00
Ralf Jung 3f50292edc edit Mutex comment 2020-05-04 20:47:46 +02:00
Ralf Jung 40a6b8c339 explain our rwlock implementation (and fix a potential data race) 2020-05-04 19:37:55 +02:00
Ralf Jung 61fdd3e2be expand comment on default mutex behavior 2020-05-04 19:17:58 +02:00
Dylan DPC 6f5de87d3f Rollup merge of #71398 - ThinkChaos:feat_refcell_take, r=LukasKalbertodt
Add `RefCell::take`

Add `RefCell::take` to match `Cell` and `Option`.
I also changed a couple of calls to `.replace` to `.take`.

Tracking issue is #71395.

This is my first contribution, please tell me if there's anything I could improve, thanks!
2020-05-03 18:34:34 +02:00
Dylan DPC 5a7b21faba Rollup merge of #71785 - reitermarkus:cfg-attribute, r=Mark-Simulacrum
Update comment regarding SO_REUSEADDR on Windows
2020-05-02 18:27:48 +02:00
Markus Reiter 39a97900be Replace cfg macro with attribute. 2020-05-02 17:06:16 +02:00
Jacob Kiesel b5c1f45273 Remove recommendation for unmaintained crate 2020-05-01 20:51:20 -06:00
Dylan DPC fb1aa5624d Rollup merge of #71296 - ChiefMilesEdgeworth:fix_doc_wording, r=Dylan-DPC
Change wording on read_vectored docs

Closes #70154

I'm happy to work with others to make the wording on this more clear. I think what I have is an improvement but may not be the final wording.
2020-04-29 12:23:22 +02:00
Dylan DPC c4d9f42f6d Rollup merge of #67841 - sfackler:can-vector, r=Amaneiu
Add Read/Write::can_read/write_vectored

When working with an arbitrary reader or writer, code that uses vectored
operations may end up being slower than code that copies into a single
buffer when the underlying reader or writer doesn't actually support
vectored operations. These new methods allow you to ask the reader or
witer up front if vectored operations are efficiently supported.

Currently, you have to use some heuristics to guess by e.g. checking if
the read or write only accessed the first buffer. Hyper is one concrete
example of a library that has to do this dynamically:
https://github.com/hyperium/hyper/blob/0eaf304644a396895a4ce1f0146e596640bb666a/src/proto/h1/io.rs#L582-L594
2020-04-27 22:14:55 +02:00
Steven Fackler c68f23ff6d fix wasi 2020-04-27 04:50:03 -07:00
Stefan Lankes 2c43746758 use nicer code style to define DEFAULT_MIN_STACK_SIZE 2020-04-27 13:18:33 +02:00
Steven Fackler b00afb5782 fix wasm build 2020-04-26 16:34:14 -07:00
Stefan Lankes 4d3cf5bd9b use new interface to create threads on HermitCore
- the new interface allows to define the stack size
2020-04-26 19:47:46 +02:00
Steven Fackler 5d8fe1c4e6 Suppress file length check temporarily
Will clean up in a separate PR
2020-04-26 04:48:51 -07:00
Steven Fackler 4bad27a467 Fix stragglers 2020-04-26 04:24:16 -07:00
Steven Fackler 07443f17d4 Update name 2020-04-26 04:24:16 -07:00
Steven Fackler 15262ec6be Add Read/Write::can_read/write_vectored
When working with an arbitrary reader or writer, code that uses vectored
operations may end up being slower than code that copies into a single
buffer when the underlying reader or writer doesn't actually support
vectored operations. These new methods allow you to ask the reader or
witer up front if vectored operations are efficiently supported.

Currently, you have to use some heuristics to guess by e.g. checking if
the read or write only accessed the first buffer. Hyper is one concrete
example of a library that has to do this dynamically:
https://github.com/hyperium/hyper/blob/0eaf304644a396895a4ce1f0146e596640bb666a/src/proto/h1/io.rs#L582-L594
2020-04-26 04:23:39 -07:00
ThinkChaos 4ea83bfb3d Use Cell::take in a couple places 2020-04-26 11:50:53 +02:00
Matthias Krüger 8862f829bb fix more clippy warnings
clippy::{redundant_pattern_matching, clone_on_copy, iter_cloned_collect, option_as_ref_deref, match_ref_pats}
2020-04-26 02:24:01 +02:00
bors 0862458dad Auto merge of #71556 - Dylan-DPC:rollup-9ll4shr, r=Dylan-DPC
Rollup of 7 pull requests

Successful merges:

 - #69041 (proc_macro: Stabilize `Span::resolved_at` and `Span::located_at`)
 - #69813 (Implement BitOr and BitOrAssign for the NonZero integer types)
 - #70712 (stabilize BTreeMap::remove_entry)
 - #71168 (Deprecate `{Box,Rc,Arc}::into_raw_non_null`)
 - #71544 (Replace filter_map().next() calls with find_map())
 - #71545 (Fix comment in docstring example for Error::kind)
 - #71548 (Add missing Send and Sync impls for linked list Cursor and CursorMut.)

Failed merges:

r? @ghost
2020-04-25 17:49:00 +00:00
Dylan DPC ecef6c7c80 Rollup merge of #71545 - Askaholic:patch-1, r=jonas-schievink
Fix comment in docstring example for Error::kind

Saw it while reading the docs.
2020-04-25 18:30:32 +02:00
Dylan DPC 9709785d12 Rollup merge of #71544 - cuviper:filter_map_next, r=Mark-Simulacrum
Replace filter_map().next() calls with find_map()

These are semantically the same, but `find_map()` is more concise.
2020-04-25 18:30:30 +02:00
bors 659951c4a0 Auto merge of #71439 - Mark-Simulacrum:stage0-next, r=jonas-schievink
Bump bootstrap compiler

This bumps the bootstrap compiler and the rustfmt that x.py fmt uses.
2020-04-25 14:15:10 +00:00
Mark Rousskov 17a393ee96 Bump rustfmt to most recently shipped 2020-04-25 09:25:33 -04:00
Mark Rousskov 93eed402ad Bump bootstrap compiler 2020-04-25 09:25:33 -04:00
Askaholic 19c29c4d9c Fix comment in docstring example for Error::kind 2020-04-25 04:33:11 +00:00
Josh Stone 4282776b1c Replace filter_map().next() calls with find_map()
These are semantically the same, but `find_map()` is more concise.
2020-04-24 20:03:45 -07:00
Dylan DPC 32fb77d951 Rollup merge of #71535 - workingjubilee:jubilee-markdown-fix, r=Mark-Simulacrum
Fix typos in docs for keyword "in"

Erroneous .md formatting was causing the link to not work on the currently-nightly keyword docs for `in`, and also there was a simple typo.
2020-04-25 01:36:05 +02:00
Jubilee Young 0689efc411 Fix typos in docs for keyword "in" 2020-04-24 14:13:43 -07:00
Josh Stone 2325c20925 Avoid unused Option::map results
These are changes that would be needed if we add `#[must_use]` to
`Option::map`, per #71484.
2020-04-24 13:58:41 -07:00
Dylan DPC 10e47f5b7b Rollup merge of #71256 - cuviper:must_use_replace, r=estebank
Lint must_use on mem::replace

This adds a hint on `mem::replace`, "if you don't need the old value,
you can just assign the new value directly". This is in similar spirit
to the `must_use` on `ManuallyDrop::take`.
2020-04-22 23:19:19 +02:00
Dylan DPC 01fdc885d6 Rollup merge of #71414 - phansch:more-diagnostic-items, r=Manishearth
More diagnostic items for Clippy usage

This adds a couple of more diagnostic items to be used in Clippy.
I chose these particular ones because they were the types which we seem
to check for the most in Clippy. I'm not sure if the `cfg_attr(not(test))`
is needed, but it was also used for `Vec` and a few other types.

cc https://github.com/rust-lang/rust-clippy/issues/5393

r? @Manishearth
2020-04-22 12:18:39 +02:00
Philipp Hansch 23b9f46fff More diagnostic items for Clippy usage
This adds a couple of more diagnostic items to be used in Clippy.
I chose these particular ones because they were the types which we seem
to check for the most in Clippy. I'm not sure if the
`cfg_attr(not(test))` is needed, but it was also used for `Vec` and a
few other types.
2020-04-22 07:57:56 +02:00
Yuki Okushi f28e3873c5 Rollup merge of #71366 - faern:use-assoc-int-consts3, r=dtolnay
Use assoc int consts3

Define module level int consts with associated constants instead of `min_value()` and `max_value()`. So the code become consistent with what the docs recommend etc. Seems natural.

Also remove the last usages of the int module constants from this repo (except src/test/ directory which I have still not really done anything in). Some places were missed in the previous PRs because the code uses `crate::<IntTy>` to reach the constants.

This is a continuation of #70857

r? @dtolnay
2020-04-22 10:34:06 +09:00
Linus Färnstrand 6850e4a1ae Use assoc float consts instead of module level 2020-04-20 23:38:06 +02:00
Linus Färnstrand 9fc0833235 Stop accessing module level int consts via crate::<Ty> 2020-04-20 23:38:06 +02:00
Dylan DPC 7561714aa1 Rollup merge of #71328 - Mark-Simulacrum:stabilize-pathbuf-capacity, r=sfackler
Stabilize PathBuf capacity methods

Closes https://github.com/rust-lang/rust/issues/58234.

Stabilization FCP finished in https://github.com/rust-lang/rust/issues/58234#issuecomment-616048777.
2020-04-20 18:07:11 +02:00
bors 9b2f8dbba3 Auto merge of #71007 - Amanieu:deprecate_asm, r=Mark-Simulacrum
Deprecate the asm! macro in favor of llvm_asm!

Since we will be changing the syntax of `asm!` soon, deprecate it and encourage people to use `llvm_asm!` instead (which preserves the old syntax). This will avoid breakage when `asm!` is changed.

RFC: https://github.com/rust-lang/rfcs/pull/2843
2020-04-20 02:18:00 +00:00
Mark Rousskov 77ee088623 Stabilize PathBuf capacity methods 2020-04-19 21:49:27 -04:00
Nathan Abel 3a40cbb665 Change wording on read_vectored docs 2020-04-18 14:30:16 -04:00
Dylan DPC d5d9bf0406 Rollup merge of #71167 - RalfJung:big-o, r=shepmaster
big-O notation: parenthesis for function calls, explicit multiplication

I saw `O(n m log n)` in the docs and found that really hard to parse. In particular, I don't think we should use blank space as syntax for *both* multiplication and function calls, that is just confusing.

This PR makes both multiplication and function calls explicit using Rust-like syntax. If you prefer, I can also leave one of them implicit, but I believe explicit is better here.

While I was at it I also added backticks consistently.
2020-04-17 23:56:00 +02:00
Josh Stone ccecae5fdd Fix unused results from mem::replace 2020-04-17 13:59:14 -07:00
Josh Stone 2edd123a23 Dogfood or_patterns in the standard library 2020-04-16 12:44:57 -07:00