2
0
Fork 1
mirror of https://github.com/async-rs/async-std.git synced 2025-05-01 20:51:22 +00:00
Commit graph

51 commits

Author SHA1 Message Date
Pascal Hertleif
e01f07d72a Add context to more errors
cc #569
2019-11-21 00:27:47 +01:00
Yoshua Wuyts
2ca03cabe6
Merge pull request #552 from hhggit/win_symlink
add os::windows::symlink_{dir,file}
2019-11-20 13:17:39 +01:00
Pascal Hertleif
c704643296 Remove verbose-errors cargo feature 2019-11-19 13:15:48 +01:00
hhggit
2c9b558d14 add os::windows::symlink_{dir,file} 2019-11-18 10:20:07 +08:00
Pascal Hertleif
8ce3e78952 verbose errors feature
This adds a new "verbose-errors" feature flag to async-std that enables
wrapping certain errors in structures with more context. As an example,
we use it in `fs::File::{open,create}` to add the given path to the
error message (something that is lacking in std to annoyance of many).
2019-11-17 21:54:44 +01:00
Stjepan Glavina
548733e5d5
Cleanup stream traits (#487)
* Cleanup stream traits

* Fix docs
2019-11-09 11:22:09 +01:00
Stjepan Glavina
3dd59d7056
Refactor the task module (#421)
* Refactor the task module

* Fix clippy warning

* Simplify task-local entries

* Reduce the amount of future wrapping

* Cleanup

* Simplify stealing
2019-11-01 02:45:33 +01:00
Stjepan Glavina
8bef2e9e95 Don't flush files if they weren't written to 2019-10-17 21:28:38 +02:00
Stjepan Glavina
ec23632f3e
Cleanup: replace cfg-if with our macros (#361)
* Cleanup: replace cfg-if with our macros

* Prefix macros with cfg_

* Remove #[macro_export] from internal macros
2019-10-17 19:17:49 +02:00
Yoshua Wuyts
49faea2023 init FutureExt (#308)
* init FutureExt

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

* prelude

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

* Refactor extension_trait

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

* Fix rustdoc

Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-10-15 16:27:06 +02:00
Yoshua Wuyts
b4c1c63fd2
task::blocking async closure -> FnOnce
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-10-15 16:01:24 +02:00
Stjepan Glavina
504f8cb137 Use crate::path everywhere 2019-10-15 01:25:20 +02:00
Stjepan Glavina
f9cfee9e2c Formatting 2019-10-15 01:11:32 +02:00
Stjepan Glavina
0adcb50f58 Add ToOwned and Borrow impls 2019-10-15 01:08:12 +02:00
Wouter Geraedts
d349333a43 Implemented Path::read_link 2019-10-13 20:12:57 +02:00
Wouter Geraedts
89f73d3eda Implemented Path::read_dir 2019-10-13 19:57:46 +02:00
Wouter Geraedts
6c6106a292 Implemented Path::{metadata, symlink_metadata} 2019-10-13 14:17:33 +02:00
Wouter Geraedts
e690b55b18 Implemented fs::metadata and Path::exists 2019-10-13 13:52:58 +02:00
Wouter Geraedts
e27b578c27 WIP init Path and PathBuf async stubs 2019-10-13 13:06:39 +02:00
Yoshua Wuyts
9ab7b1ae6e
Merge pull request #251 from async-rs/blocking-unstable
add an unstable `task::blocking` function
2019-10-09 12:32:44 +02:00
Yoshua Wuyts
c27623c0fd
cargo fmt
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-10-08 14:58:39 +02:00
Yoshua Wuyts
647aab819f
impl feedback
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-10-08 14:55:09 +02:00
k-nasa
6253e97717 feat: Add Default trait 2019-10-01 18:08:24 +09:00
Stjepan Glavina
73d7fea937 Re-export Stream from futures 2019-09-22 16:51:18 +02:00
bors[bot]
33ff41df48
Merge #224
224: Re-export IO traits from futures r=stjepang a=stjepang

Sorry for the big PR!

Instead of providing our own traits `async_std::io::{Read, Write, Seek, BufRead}`, we now re-export `futures::io::{AsyncRead, AsyncWrite, AsyncSeek, AsyncRead}`. While re-exporting we rename them to strip away the "Async" prefix.

The documentation will display the contents of the original traits from the `futures` crate together with our own extension methods. There's a note in the docs saying the extenion methods become available only when `async_std::prelude::*` is imported.

Our extension traits are re-exported into the prelude, but are marked with `#[doc(hidden)]` so they're completely invisible to users.

The benefit of this is that people can now implement traits from `async_std::io` for their types and stay compatible with `futures`. This will also simplify some trait bounds in our APIs - for example, things like `where Self: futures_io::AsyncRead`.

At the same time, I cleaned up some trait bounds in our stream interfaces, but haven't otherwise fiddled with them much.

I intend to follow up with another PR doing the same change for `Stream` so that we re-export the stream trait from `futures`.

Co-authored-by: Stjepan Glavina <stjepang@gmail.com>
2019-09-22 13:50:53 +00:00
Stjepan Glavina
53ce30ae66
Fix async_std imports in metadata.rs 2019-09-21 15:17:49 +02:00
Stjepan Glavina
1fa196812a Fix compilation errors around Stream 2019-09-21 15:05:57 +02:00
Stjepan Glavina
edfa2358a4 Re-export IO traits from futures 2019-09-21 14:30:52 +02:00
Stjepan Glavina
7f71af9415 cargo fmt 2019-09-14 09:15:51 +02:00
Stjepan Glavina
a4381230b8 Clean up the fs module and a few other places 2019-09-14 01:24:31 +02:00
Stjepan Glavina
2c02037673 Fix a typo 2019-09-09 09:18:56 +02:00
Stjepan Glavina
41f345d319 Fix a bug in conversion of File into raw handle 2019-09-08 19:19:34 +02:00
Stjepan Glavina
8c00cc53ce Flush more often to prevent flushes during seek 2019-09-08 12:14:07 +02:00
Stjepan Glavina
6ed0e857fd Fix some typos, expand comments 2019-09-08 10:43:47 +02:00
Stjepan Glavina
17c95a39d7
More robust file implementation
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-09-07 23:17:20 +02:00
Stjepan Glavina
bac74c2d7f
Reduce dependency on futures crate (#140)
* Add future::poll_fn

* Replace all uses of poll_fn with the new one

* Remove some uses of futures

* Simplify ReadDir and DirEntry

* Remove some use of futures from File

* Use futures subcrates

* Fix imports in docs

* Remove futures-util dependency

* Remove futures-executor-preview

* Refactor

* Require more features in the futures-preview crate
2019-09-05 01:22:41 +02:00
Dylan Frankland
d47f7d3e92 rustfmt fs::create_dir_all 2019-08-26 12:59:30 -07:00
Dylan Frankland
c21e381098 Remove unused import from fs::create_dir_all 2019-08-26 12:50:06 -07:00
Dylan Frankland
8451789da5 Expose fs::create_dir_all 2019-08-26 12:47:15 -07:00
Yoshua Wuyts
63ad786768
remove async_await feature gate
Signed-off-by: Yoshua Wuyts <yoshuawuyts@gmail.com>
2019-08-21 00:29:35 -07:00
Stjepan Glavina
9b3e8b8f26 Use our own Sink/Empty and fix compilation errors 2019-08-15 11:47:20 +02:00
Stjepan Glavina
e459bd048e Cleanup and docs 2019-08-14 04:22:37 +02:00
Stjepan Glavina
019c8085f4 Cleanup examples 2019-08-14 03:47:39 +02:00
Stjepan Glavina
1f9628d8ad Cleanup 2019-08-12 20:29:16 +02:00
Stjepan Glavina
9d8ac36813 Rename feature docs.rs to docs 2019-08-12 19:50:30 +02:00
Stjepan Glavina
756da0e89d Modularize 2019-08-12 19:45:28 +02:00
Stjepan Glavina
68d7a9c34e Refactor 2019-08-12 18:38:59 +02:00
Stjepan Glavina
a430e27819 Cleanup, docs, fmt 2019-08-12 18:00:21 +02:00
Stjepan Glavina
e44451a042 Revamp IO traits and Stream trait 2019-08-12 12:50:35 +02:00
Stjepan Glavina
3f4a56abdc Reformat doc examples 2019-08-09 02:56:59 +02:00