Commit Graph

877 Commits (ec4b09ecd07de02dca1a2e3763477b61dfd927f0)

Author SHA1 Message Date
k-nasa b95bd6c1fe fix: Remove unnecessary io modules 5 years ago
k-nasa 1e18839f1f fix warning 5 years ago
k-nasa f31878655e fix: Stabilize stream method 5 years ago
k-nasa 9a62df143f add whitespace 5 years ago
k-nasa 75223905bd fix: Stabilize stream most method 5 years ago
k-nasa be60dd9fe7 fix: Remove unnecessary re-export and macros 5 years ago
k-nasa 23b7c174f3 feat: Stabilize io::Std*Lock 5 years ago
k-nasa bd60cd9f81 run `cargo fmt` 5 years ago
Yoshua Wuyts d87e283215
Update src/lib.rs 5 years ago
Yoshua Wuyts 283a54a155
Update src/lib.rs 5 years ago
Yoshua Wuyts 3719484eba
Update src/lib.rs
Co-Authored-By: nasa <htilcs1115@gmail.com>
5 years ago
Yoshua Wuyts d026c44ea3 Document the core feature
Follow-up to https://github.com/async-rs/async-std/pull/680
5 years ago
Yoshua Wuyts 125fa5b0a0
Merge pull request #680 from k-nasa/no_std
Some modules support no_std
5 years ago
k-nasa 0d90cb07b9 fix: Move `extern crate alloc` to lib.rs 5 years ago
Stjepan Glavina 1d875836a2
Implement Clone for TcpStream (#689)
* Implement Clone for TcpStream

* Update examples

* Remove accidentally added examples
5 years ago
k-nasa 7efe7caf66 fix: Change feature name no-std to alloc 5 years ago
k-nasa 22d929d481 fix import Future 5 years ago
k-nasa d622ec5d35 feat: Make the stream module no_std 5 years ago
k-nasa 880b7ee987 remove crate::prelude import 5 years ago
k-nasa 1762de285b feat: Make the future module no_std 5 years ago
k-nasa 6aa55fde59 feat: Make the task module no_std 5 years ago
k-nasa 3d32fd81f4 feat: Make the utils module no_std 5 years ago
k-nasa 51b84a7620 feat: Add no_std attribute when not std feature 5 years ago
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.
5 years ago
Yoshua Wuyts 57f9fb7e93
Merge pull request #682 from k-nasa/impl_clone_for_dir_entry
Implement Clone trait for DirEntry
5 years ago
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`
5 years ago
Florian Gilcher 84fe94444b
Merge pull request #675 from k-nasa/add_timeout_example
Add stream::timeout example when timeout error
5 years ago
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.
5 years ago
k-nasa 2221441a4c feat: Implement Clone trait for DirEntry 5 years ago
Oleg Nosov ed7ddacb28
Rewrote `Result`s implementation using `take_while` and `filter_map` 5 years ago
Oleg Nosov ed248017b4
Use internal `scan` state in `Result`s implementation 5 years ago
Oleg Nosov 38de0bfd22
Use `std::convert::identity` 5 years ago
Oleg Nosov 134089af2c
Use `filter_map(identity)` + other fixes 5 years ago
k-nasa ee102dfc9e docs: Add stream::timeout example when timeout error 5 years ago
nasa 1071e82132
Merge pull request #671 from Noah-Kennedy/udp-socket-send-doc
Fix docs for UdpSocket::send
5 years ago
noah 0a52864764 Revert "Fixes https://github.com/async-rs/async-std/issues/652"
This reverts commit a4f68066
5 years ago
noah 76993dd755 Revert "Fixes https://github.com/async-rs/async-std/issues/652"
This reverts commit a4f68066
5 years ago
k-nasa f53fcbb706 test,docs: Add stream::pending example code 5 years ago
k-nasa e9357c0307 style: Run `cargo fmt` 5 years ago
Qifan Lu 879e14c6ab Remove size_hint from Stream impl 5 years ago
Qifan Lu f8dd3d9816 Add stream::pending::{pending, Pending} 5 years ago
noah a4f6806605 Fixes https://github.com/async-rs/async-std/issues/652 5 years ago
Yoshua Wuyts 5d5064b871 add FromStream Result example (#643)
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
5 years ago
nasa 0ed0d63094 Remove unnecessary trait bound on FlatMap (#651)
* Remove unnecessary trait bound on FlatMap

* test: upgrade test code
5 years ago
Oleg Nosov fb567a3a09
Recovered comments 5 years ago
Oleg Nosov 83afbab2ef
Use `take_while` instead of `scan` for `Option` 5 years ago
dignifiedquire 9c6ab5e7c3 fix 5 years ago
dignifiedquire 9c9ab90da3 feature gate random 5 years ago
dignifiedquire 5bf3d95313 feat: do not require default feature for unstable 5 years ago
Yoshua Wuyts 383057b8ea
Merge pull request #659 from alfiedotwtf/master
Tiny grammar fix
5 years ago