2
0
Fork 1
mirror of https://github.com/async-rs/async-std.git synced 2025-01-31 01:35:33 +00:00
Commit graph

1064 commits

Author SHA1 Message Date
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