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

997 commits

Author SHA1 Message Date
k-nasa
2ab075d027 refactor 2020-03-19 11:50:19 +09:00
k-nasa
c0f18600cf run ignored test 2020-03-18 23:07:07 +09:00
k-nasa
6c8237276b fix doc test 2020-03-18 23:02:59 +09:00
k-nasa
98cbf7f8eb Restore task::spawn_blocking 2020-03-17 20:54:16 +09:00
k-nasa
84e5c5f351 Merge branch 'master' into new-scheduler 2020-03-17 20:38:19 +09:00
Yoshua Wuyts
b7c7efc797 Update try_channel doctests 2020-03-16 00:05:39 +01:00
Yoshua Wuyts
7885c245c5 recverror
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2020-03-15 23:53:03 +01:00
Yoshua Wuyts
7b7b959a6e mark channel errs as unstable
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2020-03-15 23:53:03 +01:00
Yoshua Wuyts
32dce319d3 expose try_recv and try_send on channels
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2020-03-15 23:53:03 +01:00
Yoshua Wuyts
49dd02b4de Make the split struct public 2020-03-15 23:51:19 +01:00
Yoshua Wuyts
bb11c676a1 doctests pass 2020-03-15 23:46:36 +01:00
Yoshua Wuyts
e026b7579a
Merge pull request #703 from spacekookie/recv-docs
channel/recv: improving function docs and code example
2020-03-15 14:41:07 +01:00
k-nasa
8931d1464e fix ci 2020-03-14 22:46:22 +09:00
nasa
cc19592f80
Revert "Stabilize most stream method and remove unnecessary macros" 2020-03-12 18:34:09 +09:00
k-nasa
b95bd6c1fe fix: Remove unnecessary io modules 2020-03-05 10:34:41 +09:00
k-nasa
1e18839f1f fix warning 2020-03-04 08:55:37 +09:00
k-nasa
f31878655e fix: Stabilize stream method 2020-03-04 08:30:45 +09:00
k-nasa
9a62df143f add whitespace 2020-03-03 23:14:25 +09:00
k-nasa
75223905bd fix: Stabilize stream most method 2020-03-03 23:12:09 +09:00
k-nasa
be60dd9fe7 fix: Remove unnecessary re-export and macros 2020-03-03 22:50:26 +09:00
k-nasa
23b7c174f3 feat: Stabilize io::Std*Lock 2020-03-03 22:46:18 +09:00
k-nasa
bd60cd9f81 run cargo fmt 2020-02-20 09:03:36 +09:00
Yoshua Wuyts
d87e283215
Update src/lib.rs 2020-02-17 13:38:24 +01:00
Yoshua Wuyts
283a54a155
Update src/lib.rs 2020-02-17 13:36:59 +01:00
Yoshua Wuyts
3719484eba
Update src/lib.rs
Co-Authored-By: nasa <htilcs1115@gmail.com>
2020-02-17 13:36:23 +01:00
Katharina Fey
aae835cc14
channel/recv: improving function docs and code example
At the moment it's not clear when and why recv returns Option<T>,
instead of just T. This changed comment makes it clear that None will
only be returned once no data will ever be sent again (i.e. after all
senders are gone).
2020-02-12 01:38:20 +01:00
Oleg Nosov
d7cab38b67
core => std 2020-02-08 15:49:01 +03:00
Oleg Nosov
32068942a6
Fixed flatten 2020-02-08 15:44:25 +03:00
Oleg Nosov
303ac90b7c
Fixed flat_map 2020-02-07 22:12:42 +03:00
Yoshua Wuyts
d026c44ea3 Document the core feature
Follow-up to https://github.com/async-rs/async-std/pull/680
2020-02-04 11:07:50 +01:00
Yoshua Wuyts
125fa5b0a0
Merge pull request #680 from k-nasa/no_std
Some modules support no_std
2020-02-04 11:02:19 +01:00
k-nasa
0d90cb07b9 fix: Move extern crate alloc to lib.rs 2020-02-01 09:49:54 +09:00
Stjepan Glavina
1d875836a2
Implement Clone for TcpStream (#689)
* Implement Clone for TcpStream

* Update examples

* Remove accidentally added examples
2020-01-28 18:14:16 +01:00
k-nasa
7efe7caf66 fix: Change feature name no-std to alloc 2020-01-28 15:58:46 +09:00
k-nasa
22d929d481 fix import Future 2020-01-28 15:58:46 +09:00
k-nasa
d622ec5d35 feat: Make the stream module no_std 2020-01-28 15:58:46 +09:00
k-nasa
880b7ee987 remove crate::prelude import 2020-01-28 15:58:46 +09:00
k-nasa
1762de285b feat: Make the future module no_std 2020-01-28 15:58:46 +09:00
k-nasa
6aa55fde59 feat: Make the task module no_std 2020-01-28 15:58:46 +09:00
k-nasa
3d32fd81f4 feat: Make the utils module no_std 2020-01-28 15:58:46 +09:00
k-nasa
51b84a7620 feat: Add no_std attribute when not std feature 2020-01-28 15:58:46 +09:00
Toralf Wittner
57974ae0b7 Use non-blocking connect for TcpStream. (#687)
* Use non-blocking connect for TcpStream.

Instead of spawning a background thread which is unaware of any timeouts
but continues to run until the TCP stack decides that the remote is not
reachable we use mio's non-blocking connect.

mio's `TcpStream::connect` returns immediately but the actual connection
is usually just in progress and we have to be sure the socket is
writeable before we can consider the connection as established.

* Add Watcher::{poll_read_ready, poll_write_ready}.

Following a suggestion of @stjepang we offer methods to check for
read/write readiness of a `Watcher` instead of the previous approach to
accept a set of `Waker`s when registering an event source. The changes
relative to master are smaller and both methods look more useful in
other contexts. Also the code is more robust w.r.t. wakeups of the
`Waker` from clones outside the `Reactor`.

I am not sure if we need to add protection mechanisms against spurious
wakeups from mio. Currently we treat the `Poll::Ready(())` of
`Watcher::poll_write_ready` as proof that the non-blocking connect has
finished, but if the event from mio was a spurious one, it might still
be ongoing.
2020-01-27 23:13:13 +01:00
Yoshua Wuyts
57f9fb7e93
Merge pull request #682 from k-nasa/impl_clone_for_dir_entry
Implement Clone trait for DirEntry
2020-01-27 13:10:20 +01:00
Yoshua Wuyts
6c1b5eb3ed
Merge pull request #667 from olegnn/option_take_while
Use `take_while` instead of `scan` in `impl` of `Product`, `Sum` and `FromStream` for `Option` and `Result`
2020-01-27 11:54:20 +01:00
Florian Gilcher
84fe94444b
Merge pull request #675 from k-nasa/add_timeout_example
Add stream::timeout example when timeout error
2020-01-21 16:02:28 +01:00
Katharina Fey
81aa6d152a Changing task::block_on to park after a single poll (#684)
This was previously discussed in #605 and others as a source of high
CPU load when sleeping tasks because of the overhead created by
retrying a future in short succession.
2020-01-20 20:40:01 +01:00
k-nasa
2221441a4c feat: Implement Clone trait for DirEntry 2020-01-18 08:36:54 +09:00
Oleg Nosov
ed7ddacb28
Rewrote Results implementation using take_while and filter_map 2020-01-17 17:19:51 +03:00
Oleg Nosov
ed248017b4
Use internal scan state in Results implementation 2020-01-15 12:06:50 +03:00
Oleg Nosov
38de0bfd22
Use std::convert::identity 2020-01-15 09:43:01 +03:00
Oleg Nosov
134089af2c
Use filter_map(identity) + other fixes 2020-01-15 08:57:43 +03:00
k-nasa
ee102dfc9e docs: Add stream::timeout example when timeout error 2020-01-15 10:41:39 +09:00
nasa
1071e82132
Merge pull request #671 from Noah-Kennedy/udp-socket-send-doc
Fix docs for UdpSocket::send
2020-01-15 10:41:04 +09:00
noah
0a52864764 Revert "Fixes https://github.com/async-rs/async-std/issues/652"
This reverts commit a4f68066
2020-01-14 10:59:17 -06:00
noah
76993dd755 Revert "Fixes https://github.com/async-rs/async-std/issues/652"
This reverts commit a4f68066
2020-01-14 10:55:10 -06:00
k-nasa
f53fcbb706 test,docs: Add stream::pending example code 2020-01-14 10:18:14 +09:00
k-nasa
e9357c0307 style: Run cargo fmt 2020-01-14 09:49:34 +09:00
Qifan Lu
879e14c6ab Remove size_hint from Stream impl 2020-01-14 09:41:43 +09:00
Qifan Lu
f8dd3d9816 Add stream::pending::{pending, Pending} 2020-01-14 09:41:43 +09:00
noah
a4f6806605 Fixes https://github.com/async-rs/async-std/issues/652 2020-01-13 17:47:51 -06:00
Yoshua Wuyts
5d5064b871 add FromStream Result example (#643)
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2020-01-13 21:42:31 +01:00
nasa
0ed0d63094 Remove unnecessary trait bound on FlatMap (#651)
* Remove unnecessary trait bound on FlatMap

* test: upgrade test code
2020-01-13 19:49:52 +01:00
Oleg Nosov
fb567a3a09
Recovered comments 2020-01-12 17:53:16 +03:00
Oleg Nosov
83afbab2ef
Use take_while instead of scan for Option 2020-01-12 17:35:57 +03:00
dignifiedquire
9c6ab5e7c3 fix 2020-01-11 11:57:42 +01:00
dignifiedquire
9c9ab90da3 feature gate random 2020-01-11 11:49:52 +01:00
dignifiedquire
5bf3d95313 feat: do not require default feature for unstable 2020-01-11 11:44:51 +01:00
Yoshua Wuyts
383057b8ea
Merge pull request #659 from alfiedotwtf/master
Tiny grammar fix
2020-01-07 17:09:49 +01:00
Yoshua Wuyts
763862acc7
Merge pull request #661 from async-rs/fix-ci
remove usage of deprecated Error method to fix CI
2020-01-07 17:09:03 +01:00
Yoshua Wuyts
e2bb79c207
Merge pull request #648 from spacekookie/master
Fixing inaccurate function description in udp::recv
2020-01-07 14:23:14 +01:00
Yoshua Wuyts
dfb0c8124c
remove usage of deprecated method
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2020-01-07 14:21:17 +01:00
Alfie John
af2d46d9b9 Tiny grammar fix 2020-01-07 13:29:30 +11:00
Artem Varaksa
65d7950df1
Fix crate documentation typo 2020-01-01 15:36:47 +03:00
Stefano Probst
c3d5dba1b5
Fix typo in stream documentation 2019-12-28 17:27:37 +01:00
Katharina Fey
081166f204
Fixing inaccurate function description in udp::recv 2019-12-27 03:06:41 +01:00
Yoshua Wuyts
b3942ecfa8
remove tokio mention
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-12-24 14:39:55 +01:00
nasa
0d4b4cd260
Merge pull request #600 from miker1423/future-timeout
Adding timeout extension method to Future trait
2019-12-20 14:26:52 +09:00
Miguel Pérez García
ef021dcb2b Changing test condition 2019-12-18 07:18:57 -06:00
Miguel Pérez García
eedf1d3367 Fixing docs 2019-12-17 23:17:02 -06:00
Miguel Pérez García
97b4901b75 Fixing tests 2019-12-17 23:12:09 -06:00
Miguel Pérez García
1eeb1019e9 Fixing example 2019-12-17 23:05:06 -06:00
Miguel Pérez García
980a1f7834 Correcting docs on function 2019-12-17 22:46:25 -06:00
nasa
d8befe24e8
Revert "upgrade log, remove kv-log-macro" 2019-12-18 08:01:09 +09:00
Florian Gilcher
c7cf1934db
Merge pull request #629 from async-rs/update-log
upgrade log, remove kv-log-macro
2019-12-17 22:05:51 +01:00
k-nasa
43f4f393af fix missing export for the return value 2019-12-17 22:48:14 +09:00
Stjepan Glavina
ceba324bef Fix feature flags 2019-12-16 15:53:31 +01:00
Stjepan Glavina
36d24cd0e1 New scheduler resilient to blocking 2019-12-16 13:57:27 +01:00
Yoshua Wuyts
61eb52cb36
Merge pull request #625 from nbdd0121/sync_unsized
Use ?Sized in Mutex and RwLock
2019-12-16 12:01:45 +01:00
Yoshua Wuyts
6f4dcad6a0
Merge pull request #630 from async-rs/fix-ci-2
fix ci
2019-12-16 11:41:07 +01:00
Yoshua Wuyts
60de8e1082
up time limits
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-12-16 11:29:21 +01:00
Yoshua Wuyts
cac4e081cc
Merge pull request #628 from fenhl/patch-1
Make WriteFmtFuture must_use
2019-12-16 11:22:30 +01:00
Yoshua Wuyts
8ad1d23116
fix ci
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-12-16 10:43:19 +01:00
Yoshua Wuyts
b7e55762d8
upgrade log, remove kv-log-macro
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-12-16 10:04:39 +01:00
Yoshua Wuyts
c70552ead5
unpub double_ended_stream
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-12-16 09:37:14 +01:00
Fenhl
07eb2c1280
Make WriteFmtFuture must_use
Fixes #627. Thanks to @jebrosen for pointing out the location of the issue.
2019-12-14 17:43:22 +00:00
Gary Guo
732ef10f98 Make code compile 2019-12-14 23:42:14 +08:00
Gary Guo
499a44ab3b Use ?Sized in Mutex and RwLock 2019-12-14 23:34:55 +08:00
Yoshua Wuyts
761029cd08
fix stream doc hiccup
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-12-13 15:28:43 +01:00
Yoshua Wuyts
83a488b290
Merge pull request #597 from k-nasa/fix_doc_test
Fix failed doc test and enable doc test on CI
2019-12-13 15:03:22 +01:00
Yoshua Wuyts
96d6fc43d6
Merge pull request #618 from twittner/poll_close_shutdown
TcpStream: Shutdown write direction in poll_close.
2019-12-13 09:32:48 +01:00
Miguel Pérez García
8de9f9b8e1 Merge branch 'future-timeout' of https://github.com/miker1423/async-std into future-timeout 2019-12-12 18:31:45 -06:00
Felipe Sere
182fe6896f No need for a custom impl for FromIter for DoubleEndedStream 2019-12-12 20:52:38 +01:00
Felipe Sere
b0038e11be Only implement the DoubleEndedStream for once when the flag is on 2019-12-12 20:26:38 +01:00
Felipe Sere
8e5dedec34 Restructure package. No longer use a extension trait to match std.
Still outstanding: How do I hide the concrete structs from the trait?
2019-12-12 20:26:38 +01:00
Felipe Sere
41cf0f855b Make Once a DoubleEndedStream 2019-12-12 20:26:38 +01:00
Felipe Sere
f9a4c35fd6 Silence warning about missing docs for the double_ended module 2019-12-12 20:26:38 +01:00
Felipe Sere
6e8236d0e1 Document from_iter for DoubleEndedStream 2019-12-12 20:26:38 +01:00
Felipe Sere
892c6008c2 Replace sample with a hidden from_iter implementation for double-ended-stream 2019-12-12 20:26:38 +01:00
Felipe Sere
abd360893c Disable docs and Debug for unexposed structs 2019-12-12 20:26:38 +01:00
Felipe Sere
94893d2924 Move more of the documentation 2019-12-12 20:26:38 +01:00
Felipe Sere
02aa2f3d2a Fix next_back 2019-12-12 20:26:38 +01:00
Felipe Sere
ee2f52f3ce Add next_back 2019-12-12 20:26:38 +01:00
Felipe Sere
55194edbf7 Add try_rfold 2019-12-12 20:26:38 +01:00
Felipe Sere
c4b9a7f680 Add samples for some of the functions 2019-12-12 20:26:38 +01:00
Felipe Sere
aabfefd015 Add a sample implementation of a double ended stream 2019-12-12 20:26:38 +01:00
Felipe Sere
cc493df433 Sketch out rfold 2019-12-12 20:26:38 +01:00
Felipe Sere
78bafbb88f Sketch outch rfind 2019-12-12 20:26:38 +01:00
Felipe Sere
d0ef48c753 Sketch out nth_back 2019-12-12 20:26:38 +01:00
Felipe Sere
fa288931c6 Skeleton for DoubleEndedStreamExt trait 2019-12-12 20:26:38 +01:00
Toralf Wittner
c90732a805 TcpStream: Shutdown write direction in poll_close.
Fixes #599.
2019-12-12 17:37:38 +01:00
Yoshua Wuyts
a0f3b3b753 Remove unused macros (#610)
* replace async-macros with internals only

Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>

* clean up MaybeDone

Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>

* inline futures_core::ready

Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>

* remove big commented blob

Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-12-11 12:49:22 +01:00
Tomasz Miąsko
f06ab9fbc4 Remove mention of task stack size configuration (#612) 2019-12-11 12:36:50 +01:00
Miguel Pérez García
33e7c87dfc Adding example to docs 2019-12-05 21:19:02 -06:00
Miguel Pérez García
c14c377974 Changing method signature 2019-12-05 08:09:58 -06:00
Miguel Pérez García
54fa559554 Changing scope of disclosure 2019-12-05 08:09:20 -06:00
Bryant Luk
fd86effb63
Change recv_from to recv in UdpSocket::recv doc 2019-12-02 13:04:19 -06:00
nasa
128a6bc6ce
Merge pull request #598 from povilasb/fix/docs
Fix a link in the docs
2019-11-30 12:48:10 +09:00
Yoshua Wuyts
d51a135015
Merge pull request #309 from async-rs/stream-delay
Stream::delay
2019-11-30 11:25:41 +09:00
Miguel Pérez García
1c2055fff0 Merge remote-tracking branch 'original/master' into future-timeout 2019-11-29 18:00:00 -06:00
Povilas Balciunas
81e3c41826 Fix a link in the docs 2019-11-29 11:52:54 +13:00
k-nasa
fb1fb6c903 test: Test the delay time 2019-11-28 22:53:24 +09:00
k-nasa
fe04cf26b6 test: fix stream::throttle doc test 2019-11-28 16:16:39 +09:00
k-nasa
556d7992ce test: fix failed doc test 2019-11-28 15:57:22 +09:00
k-nasa
da965e9ba4 fix indent 2019-11-28 15:54:13 +09:00
k-nasa
9f7c1833dc fix module 2019-11-28 10:37:04 +09:00
Yoshua Wuyts
68005661d9 fix Stream::throttle hot loop (#584)
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-11-27 15:47:27 +01:00
nasa
794e331761 Refactor join type (#577)
* refactor: update future join type

* test: update future join test

* update future::try_join
2019-11-27 13:38:38 +01:00
k-nasa
32765ece41 test: Add stream::delay test code 2019-11-27 14:26:25 +09:00
k-nasa
635c592950 feat: Add stream::delay 2019-11-27 14:26:04 +09:00
k-nasa
3b055f364e Merge branch 'master' into stream-delay 2019-11-27 13:50:05 +09:00
Yoshua Wuyts
46cafffc31
Merge pull request #571 from killercup/more-errors
Add context to more errors
2019-11-27 01:54:27 +01:00
boats
0f30ab8c0a Fix the docs and Debug output of BufWriter. (#588)
The BufWriter docs inaccurately stated that it flushes on drop, which it does
not do. This PR changes the docs, as well as the example, to highlight that
the user must explicitly flush a bufwriter.

There were also two places where the BufWriter code referred to it as a
BufReader: in the link to the std docs, and in the Debug output. Those have
also been fixed.
2019-11-26 14:23:10 +01:00
Pascal Hertleif
56538ebd91 Improve verbose errors for socket addresses
Moves the point of adding error context to the net::addr module so that
we have access to the raw address input and can include it in the error
message.
2019-11-25 23:30:31 +01:00
Pascal Hertleif
aa7d1c27a4
Verbose errors: Apply suggestions
Co-Authored-By: Yoshua Wuyts <yoshuawuyts+github@gmail.com>
2019-11-25 21:18:40 +01:00
Yoshua Wuyts
850b8ae9d0
Merge pull request #543 from k-nasa/stream_unzip
Add stream unzip
2019-11-25 20:25:44 +01:00
Miguel Pérez García
c1f7be5d42 Adding timeout extension method to Future trait 2019-11-23 11:40:07 -06:00
Yoshua Wuyts
c9a2e74789
Merge pull request #523 from async-rs/update-lib-example
polish lib.rs examples
2019-11-21 21:24:54 +01:00
Yoshua Wuyts
cffacf7fa3
feedback from review
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-11-21 21:21:19 +01:00
Yoshua Wuyts
02e1d7e5ea
Merge pull request #574 from stjepang/ignore-unread-errors
Ignore seek errors in poll_unread
2019-11-21 18:32:55 +01:00
laizy
ec5415358f simplify AllFuture and AnyFuture (#572) 2019-11-21 18:03:23 +01:00