-
Notifications
You must be signed in to change notification settings - Fork 230
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(op, fs): ✨ Intergated statx
into monoio
#268
Conversation
It seems test failed for i686 and aarch64... |
the problem in aarch64 may fixed, but the i686's i don't know why this would happen, maybe disable the statx in i686? |
upgrade the cross version with latest git branch, to fix some linker error when CI
the error happen due to the cross's bug, i have test in newest cross version, it works fine. |
![]() and the run.sh is #!/bin/bash
# Define the list of architectures to test
architectures=(
"x86_64-unknown-linux-gnu"
"i686-unknown-linux-gnu"
"aarch64-unknown-linux-gnu"
"armv7-unknown-linux-gnueabihf"
"riscv64gc-unknown-linux-gnu"
"s390x-unknown-linux-gnu"
"x86_64-apple-darwin"
"aarch64-apple-darwin"
)
# Loop through each architecture and run the tests
for arch in "${architectures[@]}"; do
cross test --lib --bins --tests --target "$arch" --no-default-features --features "async-cancel,bytes,legacy,macros,utils" > /dev/null 2>&1
if [ $? -eq 0 ]; then
echo "Success for $arch"
else
echo "Failure for $arch"
fi
done the failure of riscv is #1423 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you! I'll merge it first, and I'll look at the testing issue.
[](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [monoio](https://togithub.com/bytedance/monoio) | workspace.dependencies | patch | `0.2.3` -> `0.2.4` | --- ### Release Notes <details> <summary>bytedance/monoio (monoio)</summary> ### [`v0.2.4`](https://togithub.com/bytedance/monoio/releases/tag/0.2.4) [Compare Source](https://togithub.com/bytedance/monoio/compare/0.2.3...0.2.4) #### What's Changed - readme: typo fix by [@​tshepang](https://togithub.com/tshepang) in [https://github.com/bytedance/monoio/pull/258](https://togithub.com/bytedance/monoio/pull/258) - enhance: remove redundant check and improve efficiency by [@​ihciah](https://togithub.com/ihciah) in [https://github.com/bytedance/monoio/pull/260](https://togithub.com/bytedance/monoio/pull/260) - fix: read_u128\_le() returns u16 instead of u128 . by [@​liuxin231](https://togithub.com/liuxin231) in [https://github.com/bytedance/monoio/pull/262](https://togithub.com/bytedance/monoio/pull/262) - Fix docs.rs build by [@​hatoo](https://togithub.com/hatoo) in [https://github.com/bytedance/monoio/pull/264](https://togithub.com/bytedance/monoio/pull/264) - Feat: BoxFuture which implements Send by [@​har23k](https://togithub.com/har23k) in [https://github.com/bytedance/monoio/pull/271](https://togithub.com/bytedance/monoio/pull/271) - ci/fix: modify ci.yml to let `cargo fmt/clippy` only runs on nightly channel by [@​Lzzzzzt](https://togithub.com/Lzzzzzt) in [https://github.com/bytedance/monoio/pull/273](https://togithub.com/bytedance/monoio/pull/273) - feat(op, fs): ✨ Intergated `statx` into monoio by [@​Lzzzzzt](https://togithub.com/Lzzzzzt) in [https://github.com/bytedance/monoio/pull/268](https://togithub.com/bytedance/monoio/pull/268) - ci: Make rustfmt and clippy happy by [@​Xuanwo](https://togithub.com/Xuanwo) in [https://github.com/bytedance/monoio/pull/279](https://togithub.com/bytedance/monoio/pull/279) - docs: correct JoinHandle link in the doc of spawn() by [@​SteveLauC](https://togithub.com/SteveLauC) in [https://github.com/bytedance/monoio/pull/265](https://togithub.com/bytedance/monoio/pull/265) - ci: using main branch of cross by [@​Lzzzzzt](https://togithub.com/Lzzzzzt) in [https://github.com/bytedance/monoio/pull/283](https://togithub.com/bytedance/monoio/pull/283) - make clippy happy by [@​Lzzzzzt](https://togithub.com/Lzzzzzt) in [https://github.com/bytedance/monoio/pull/284](https://togithub.com/bytedance/monoio/pull/284) - ci: Disable test for i686 unknown linux target by [@​Xuanwo](https://togithub.com/Xuanwo) in [https://github.com/bytedance/monoio/pull/286](https://togithub.com/bytedance/monoio/pull/286) - fix: don't register file fd in `File::from_std` by [@​NKID00](https://togithub.com/NKID00) in [https://github.com/bytedance/monoio/pull/277](https://togithub.com/bytedance/monoio/pull/277) - feat(op, fs): ✨ add `MkDirAt` opcode in io-uring and `create_dir(_all)` by [@​Lzzzzzt](https://togithub.com/Lzzzzzt) in [https://github.com/bytedance/monoio/pull/270](https://togithub.com/bytedance/monoio/pull/270) - feat: unlink op, remove_file and remove_dir by [@​NKID00](https://togithub.com/NKID00) in [https://github.com/bytedance/monoio/pull/288](https://togithub.com/bytedance/monoio/pull/288) - feat: support `opcode::RenameAt` by [@​Lzzzzzt](https://togithub.com/Lzzzzzt) in [https://github.com/bytedance/monoio/pull/289](https://togithub.com/bytedance/monoio/pull/289) #### New Contributors - [@​tshepang](https://togithub.com/tshepang) made their first contribution in [https://github.com/bytedance/monoio/pull/258](https://togithub.com/bytedance/monoio/pull/258) - [@​liuxin231](https://togithub.com/liuxin231) made their first contribution in [https://github.com/bytedance/monoio/pull/262](https://togithub.com/bytedance/monoio/pull/262) - [@​hatoo](https://togithub.com/hatoo) made their first contribution in [https://github.com/bytedance/monoio/pull/264](https://togithub.com/bytedance/monoio/pull/264) - [@​Lzzzzzt](https://togithub.com/Lzzzzzt) made their first contribution in [https://github.com/bytedance/monoio/pull/273](https://togithub.com/bytedance/monoio/pull/273) - [@​Xuanwo](https://togithub.com/Xuanwo) made their first contribution in [https://github.com/bytedance/monoio/pull/279](https://togithub.com/bytedance/monoio/pull/279) - [@​SteveLauC](https://togithub.com/SteveLauC) made their first contribution in [https://github.com/bytedance/monoio/pull/265](https://togithub.com/bytedance/monoio/pull/265) - [@​NKID00](https://togithub.com/NKID00) made their first contribution in [https://github.com/bytedance/monoio/pull/277](https://togithub.com/bytedance/monoio/pull/277) **Full Changelog**: bytedance/monoio@0.2.3...0.2.4 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View the [repository job log](https://developer.mend.io/github/spiraldb/vortex). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yNi4xIiwidXBkYXRlZEluVmVyIjoiMzguMjYuMSIsInRhcmdldEJyYW5jaCI6ImRldmVsb3AiLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Add
statx
support for monoioAdd
Statx<T>
struct to support Op, just implement forSharedFd
andCString
to support different use cases.So there are two types:
FdStatx
andPathStatx
, both of them are implementOpAble
Trait.Currently, they can work on linux with
iouring
andlegacy
feature, and not support macos and windows, due to these two platforms don't have thestatx
syscall, it may use thestat
syscall and transform the result to thestatx
Also, to test the
Statx<T>
work correctly, I add some new struct to fs module likeMetadata
,Permissions
andFileType
.There is another reason to add these struct, I can't transform the
statx
struct to theMetadata
and other types instd::fs
.So these struct provide nearly the same API like
std::fs
'sI also add some basic test in tests dir.
Currently, all these changes above only work on linux