Josh Triplett
c56b6a1c30
Merge pull request #1017 from joshtriplett/stabilize-spawn-blocking
...
Stabilize `std::task::spawn_blocking`
2022-06-02 08:53:36 -07:00
Josh Triplett
abbf944371
Fix CI errors about unused-macro-rules
...
float_product and float_sum had unused rules, because they weren't
successfully using their second branch, and weren't successfully
defining wrapping types.
That then led to the discovery that those types *can't* be defined,
because std doesn't actually define any operations on `Wrapping<f32>` or
`Wrapping<f64>`. So, drop those portions of the float macros.
Fix that, and in the process, unify the integer and float macros.
2022-06-01 20:56:08 -07:00
Josh Triplett
07ba24cd87
Stabilize std::task::spawn_blocking
...
Given how widely used spawn_blocking is within async-std itself, and how
useful it is for building other APIs, I think it makes sense to offer it
just as we do `spawn`, even though it isn't standard in Rust itself.
2022-06-01 15:58:43 -07:00
Jeremiah Senkpiel
264a7125e1
Merge pull request #1013 from cuishuang/master
...
fix some typos
2022-05-10 12:06:49 -07:00
Josh Triplett
1356551ba6
Add TryFrom
impls to convert async types to corresponding sync types
...
Add `TryFrom` implementations to convert `TcpListener`, `TcpStream`,
`UdpSocket`, `UnixDatagram`, `UnixListener`, and `UnixStream` to their
synchronous equivalents, including putting them back into blocking mode.
2022-04-27 01:57:11 -07:00
cuishuang
ab112d5db6
fix some typos
...
Signed-off-by: cuishuang <imcusg@gmail.com>
2022-04-27 14:18:31 +08:00
Josh Triplett
f6ecd5ff33
Remove unused num_cpus dependency (handled by async_global_executor)
...
async-std doesn't use num_cpus directly, only via async_global_executor.
2022-04-23 11:43:43 -07:00
Yosh
f201f4a7bf
Merge pull request #994 from jaztec/master
...
Match error message from sync File::create in async File::create
2022-03-22 18:49:16 +01:00
Nicholas Nethercote
cca0f3e321
Use the default recursion_limit
.
...
Now that `extension_trait!` is gone, an increased limit isn't necessary.
2022-03-15 09:53:28 +11:00
Nicholas Nethercote
01ede03e0a
Reindent de-macrofied code.
...
This commit only affects whitespace; `git diff -w` for it is empty.
2022-03-11 13:16:30 +11:00
Nicholas Nethercote
1146c66f1b
Remove extension_trait
.
...
At this point, `extension_trait` is basically an expensive no-op. This
commit removes it. The next commit will adjust the indentation.
2022-03-11 13:14:40 +11:00
Nicholas Nethercote
2dde8820fa
Remove what's left of the first trait in extension_trait
.
2022-03-11 13:14:03 +11:00
Nicholas Nethercote
1c70420c5a
Move the base trait re-export outside of extension_trait
.
2022-03-11 13:12:56 +11:00
Nicholas Nethercote
c626a69670
Move the blanket impl
outside of extension_trait
.
2022-03-11 13:12:08 +11:00
Nicholas Nethercote
6b3667d1a4
Remove unnecessary types in extension_trait
.
...
The remaining type requires the square brackets (for now) because a `ty`
cannot immediately precede a `$(tt)*`.
2022-03-11 13:10:28 +11:00
Nicholas Nethercote
c10d2d3a6f
Simplify the first trait in extension_trait
.
...
The body and doc comment are no longer used.
2022-03-11 13:09:30 +11:00
Nicholas Nethercote
ed2fcce557
Remove docs
-only features from extension_trait
.
...
This is the `@doc` rules, the shim trait impls, and the imports.
2022-03-11 12:46:59 +11:00
Nicholas Nethercote
f56a8d6935
Remove unused borrowed
module.
2022-03-11 10:09:01 +11:00
Nicholas Nethercote
e19ab626a1
Remove unused parameter from extension_trait!
rules.
...
Two of the rules have `(+ $lt:lifetime)?` that is not used on the RHS
and serves no useful purpose. This commit removes it.
2022-03-11 09:31:01 +11:00
Nicholas Nethercote
db7c1946c8
Move the extension_trait!
accumulator to the end of the rules.
...
That way, when the `-> impl Future` rules fail (which is most of the
time), the cost of reparsing the accumulated tokens is avoided.
2022-03-10 17:10:12 +11:00
Nicholas Nethercote
21fb4ac0fb
Remove two useless rules from extension_trait!
.
...
They never run because they are subsumed by the two rules immediately
above.
2022-03-10 17:09:33 +11:00
dasman
22e4bbdf73
Fix a typo in future/mod.rs
2022-02-25 05:47:21 -05:00
Yosh
4ee4bebac7
Merge pull request #995 from piegamesde/master
...
Add TcpListener::into_incoming
2021-11-29 15:15:58 +01:00
Dmitry S
5e8d1e6e83
stream: correct iterators in doc examples
...
Correct the iterators used in examples to produce
the described output.
2021-11-07 22:37:24 +01:00
piegames
d3133c04be
Add TcpListener::into_incoming
2021-10-18 12:21:59 +02:00
Jasper van Herpt
6f61c9dc7e
Match error message from async File::create std File::create
2021-10-14 20:40:51 +02:00
Çağatay Yiğit Şahin
3a26fb32dc
doc: update docs to fit the move of channels from the sync module
...
fixes #983
2021-08-30 17:51:40 +03:00
Dan Gohman
871d2220b8
Fix stdin.rs comments to say "read" instead of "write".
...
This just fixes a few comments that appear to have been copied and
pasted from stdout.rs.
2021-07-13 17:51:50 -07:00
Friedel Ziegelmayer
b24fe10b11
Merge pull request #957 from Keruspe/write
...
io: export write::*
2021-06-09 20:53:14 +02:00
Yoshua Wuyts
35f7681664
Merge pull request #965 from rkarp/fix-write-fmt-future
...
Fix WriteFmtFuture not taking into account already written bytes (#964 )
2021-04-02 13:12:35 +02:00
Erick Tryzelaar
c4e181cfe1
Change Incoming impls to only do one allocation
...
This modifies net::tcp::Incoming and os::net::unix::Incoming to only do
one allocation, rather than an allocation for each connection.
2021-03-31 11:27:50 -07:00
Rolf Karp
5bc34cb6ba
Fix WriteFmtFuture not taking into account already written bytes ( #964 )
2021-03-13 23:34:33 +01:00
Marc-Antoine Perennou
fe310f6b1c
io: export write::*
...
We weren't exporting WriteExt.
We already do that with read::*
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2021-02-16 22:14:10 +01:00
Martin Glagla
7fecd0d710
add task::try_current
2021-02-02 19:25:28 +01:00
Dániel Buga
b05fa450c7
Docs: fix link to io
2021-01-29 15:55:37 +01:00
Jeremiah Senkpiel
09f2c5fce1
Merge pull request #920 from ooesili/task-arc-docs-typo-fix
...
Fix link in typo in src/task/mod.rs
2021-01-27 15:06:53 -08:00
Lucas Riutzel
e11a7ecf36
Fix typo in DoubleEndedStream docs
2021-01-24 21:18:14 +00:00
Theo Bogusta
a46464deab
Fix vectored IO for TcpStream
...
Implements `Write::poll_write_vectored` and `Read::poll_read_vectored`
on `TcpStream` using the vectored IO methods on the underlying stream.
Previously, the trait's default implementation was used, which just
called `poll_write` and `poll_read` once for each `IoSlice`.
2021-01-19 14:28:35 -05:00
Dan Gohman
09e99843e4
Implement Clone for File.
...
Implement `Clone` for `File` so that `File`s can be passed into closures
for use in `spawn_blocking`. `File`'s contents are already wrapped in
`Arc`s, so the implementation of `clone` is straightforward.
This also aligns with `TcpStream` which already implements `Clone` using
its internal `Arc`.
2021-01-15 09:08:37 -08:00
Marc-Antoine Perennou
8274995e70
stabilize new channels
...
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2021-01-15 09:53:57 +01:00
dignifiedquire
8c5238743b
remove deprecated sync::channel
2021-01-13 11:20:29 +01:00
Marc-Antoine Perennou
ac19c660c5
Update async-global-executor and add tokio feature for tokio 1.0
...
Co-authored-by: Yoshua Wuyts <yoshuawuyts+github@gmail.com>
2021-01-13 11:11:28 +01:00
Koxiaet
4a3f963810
feat: use async-lock for RwLock and Barrier
2021-01-13 11:10:43 +01:00
Taiki Endo
ffd46f75ca
Replace deprecated compare_and_swap with compare_exchange
2020-12-31 18:49:53 +09:00
surechen
47b22fff56
edit Small typo for Stream
2020-12-30 17:14:18 +08:00
Wesley Merkel
01949b505b
Fix link in typo in src/task/mod.rs
2020-12-11 14:05:05 -06:00
Yoshua Wuyts
34e9ff3cd2
Restore sync process exports
2020-12-08 23:04:03 +01:00
Yoshua Wuyts
9cd0578826
Merge pull request #916 from async-rs/async-process
...
feat: add process module
2020-12-08 22:50:28 +01:00
Yoshua Wuyts
f8f1eacc9a
Attempt 2 at fixing docs on windows
2020-12-08 22:40:31 +01:00
Yoshua Wuyts
92f5038ed6
attempt to fix docs builds
2020-12-08 22:08:44 +01:00