* Move filetime module to yanix I've noticed that we could replace every occurrence of `crate::Result` in `filetime` mods with `io::Result`, so I thought why not move it to `yanix` and get rid off a lot of unnecessary code duplication within `wasi-common`. Now, ideally I'd have our `filetime` modifications backported to Alex's [`filetime`] crate, but one step at a time (apologies Alex, I was meant to backport this ages ago, just didn't find the time yet... :-(). Anyway, this commit does just that; i.e., moves the `filetime` modules into `yanix` which seems a better fit for this type of code. [`filetime`]: https://github.com/alexcrichton/filetime There is one caveat here. On Emscripten, converting between `filetime::Filetime` and `libc::timespec` appears to be lossy, at least as far as the types are concerned. Now, `filetime::Filetime`'s seconds field is `i64` while nanoseconds field is `u32`, while Emscripten's `libc::timespec` requires both to be `i32` width. This might actually not be a problem since I don't think it's possible to fill `filetime::Filetime` struct with values of width wider than `i32` since Emscripten is 32bit but just to be on the safe side, we do a `TryInto` conversion, log the error (if any), and return `libc::EOVERFLOW`. * Run cargo fmt * Use i64::from instead of as cast
19 lines
470 B
TOML
19 lines
470 B
TOML
[package]
|
|
name = "yanix"
|
|
version = "0.12.0"
|
|
authors = ["The Wasmtime Project Developers"]
|
|
description = "Yet Another Nix crate: a Unix API helper library"
|
|
license = "Apache-2.0 WITH LLVM-exception"
|
|
repository = "https://github.com/bytecodealliance/wasmtime"
|
|
edition = "2018"
|
|
|
|
[dependencies]
|
|
log = "0.4"
|
|
libc = { version = "0.2", features = ["extra_traits"] }
|
|
bitflags = "1.2"
|
|
cfg-if = "0.1.9"
|
|
filetime = "0.2.7"
|
|
|
|
[badges]
|
|
maintenance = { status = "actively-developed" }
|