Create directory if not exists, and return `Dir`
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 30/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- rust
调研方向
首先检查现有的 Dir::create_dir、Dir::open_dir 以及相关的创建目录 API。检查项目如何处理 OpenOptions、已存在的目录和可能的 TOCTOU 问题。完成后应得到一个经过审查的 API,它能够创建或打开目录,支持请求的选项,并通过适当的测试返回 Dir。
由索引模型根据 Issue 内容生成。
描述
Is there a simple way to create a directory if it does not yet exist and to return the Dir?
Something along the lines of:
async fn create_dir(parent: &Dir, path: &str) -> anyhow::Result<Dir> {
match parent.create_dir(path) {
Ok(_) => {}
Err(e) => match e.kind() {
std::io::ErrorKind::AlreadyExists => {}
_ => {
Err(e)?;
}
},
}
Ok(parent.open_dir(path).await?) // could maybe be a TOCTOU?
}
I couldn't find a create_dir_with that would allow specifying e.g. OpenOptions, and all the create_dir functions don't return the Dir itself.
If not, would the project be open to contributions on this?
- 主要语言
- Rust
- 星标
- 821
- 派生
- 59
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
bytecodealliance/cap-std 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 85/100
bytecodealliance/cap-std#427 ·
-
难度 2/5 1-3 小时 新手友好度 68/100
bytecodealliance/cap-std#416 · 2 条评论 ·
-
难度 5/5 一周以上 新手友好度 15/100
bytecodealliance/cap-std#426 · 2 条评论 ·
-
难度 5/5 一周以上 新手友好度 45/100
bytecodealliance/cap-std#423 · 5 条评论 ·
-
难度 5/5 一周以上 新手友好度 42/100
bytecodealliance/cap-std#408 · 4 条评论 · 2 个 reaction ·
查看 bytecodealliance/cap-std 的全部 Issue
相似的 Issue
-
bug github_actions
难度 2/5 1-3 小时 新手友好度 75/100
registrystack/registry-stack#1393 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
longbridge/gpui-kit#3223 ·
-
bug engine
难度 2/5 1-3 小时 新手友好度 65/100
rocky-data/rocky#2181 ·
-
难度 2/5 1-3 小时 新手友好度 70/100
oasisprotocol/oasis-sdk#2523 ·
-
bot:ai-assisted component:indexer QA-roadmap status:untriaged
难度 2/5 1-3 小时 新手友好度 75/100
midnightntwrk/midnight-indexer#1557 ·