9 个版本

0.1.8 2023 年 12 月 22 日
0.1.7 2022 年 3 月 23 日
0.1.6 2021 年 4 月 28 日
0.1.5 2021 年 3 月 23 日

#122 in 文件系统

Download history 1612/week @ 2024-04-27 2140/week @ 2024-05-04 2989/week @ 2024-05-11 1444/week @ 2024-05-18 3507/week @ 2024-05-25 2730/week @ 2024-06-01 2554/week @ 2024-06-08 4385/week @ 2024-06-15 5325/week @ 2024-06-22 2852/week @ 2024-06-29 1807/week @ 2024-07-06 2191/week @ 2024-07-13 3209/week @ 2024-07-20 3443/week @ 2024-07-27 3261/week @ 2024-08-03 1534/week @ 2024-08-10

12,066 每月下载量
用于 17 个 Crates (16 直接)

Apache-2.0

17KB
164

temp-file

crates.io version license: Apache 2.0 unsafe forbidden pipeline status

提供 TempFile 结构体。

特性

  • 在系统临时目录中创建文件
  • 在丢弃时删除文件
  • 可选名称前缀、名称后缀、内容和目录。
  • 仅依赖于 std
  • forbid(unsafe_code)
  • 100% 测试覆盖率

限制

替代方案

  • tempfile
    • 流行且成熟
    • 支持一些安全敏感用例
    • 包含 unsafe,依赖关系充满了 unsafe
    • 重依赖(libc、winapi、rand 等)
  • test-temp-file
    • 依赖于包含 unsafe 的 Crates
    • 不完整的文档
  • temp_file_name
    • 不会删除文件
    • 使用不直接。缺少示例。
  • mktemp
    • 在 Unix 上设置文件模式 0600
    • 包含 unsafe
    • 没有说明或在线文档

相关 Crates

示例

let t = temp_file::with_contents(b"abc");
// Prints "/tmp/1a9b0".
println!("{:?}", t.path());
assert_eq!(
  "abc",
  std::fs::read_to_string(t.path()).unwrap(),
);
// Prints "/tmp/1a9b1".
println!("{:?}", temp_file::empty().path());

Cargo Geiger 安全报告


Metric output format: x/y
    x = unsafe code used by the build
    y = total unsafe code found in the crate

Symbols: 
    🔒  = No `unsafe` usage found, declares #![forbid(unsafe_code)]= No `unsafe` usage found, missing #![forbid(unsafe_code)]
    ☢️  = `unsafe` usage found

Functions  Expressions  Impls  Traits  Methods  Dependency

0/0        0/0          0/0    0/0     0/0      🔒  temp-file 0.1.8

0/0        0/0          0/0    0/0     0/0    

变更日志

  • v0.1.8 - 当文件已存在时工作。
  • v0.1.7 - 添加 in_dirwith_suffixTempFileBuilder
  • v0.1.6
    • 返回 std::io::Error 而不是 String
    • 添加 cleanup
  • v0.1.5 - 提高测试覆盖率
  • v0.1.4 - 添加 leakpanic_on_cleanup_error
  • v0.1.3 - 更新文档
  • v0.1.2 - 更新示例
  • 版本 v0.1.1 - 代码小幅度清理,更新文档
  • 版本 v0.1.0 - 初始版本

许可证:Apache-2.0

无运行时依赖