Skip to content

Releases

proj-janitor 0.7.22

Choose a tag to compare

@TangCan TangCan released this 07 Nov 07:55

Summary

  • CR-117: Add help text for every CLI subcommand and option so projjan backup --help (and others) explain flags instead of listing bare names.

Companion Python release: 0.1.22 / python-v0.1.22.

Note: crates.io publish may be delayed by the 24h version rate limit; retry cargo publish when available. Install from git tag meanwhile:
cargo install --git https://github.com/TangCan/proj-janitor --tag v0.7.22 --locked

proj-janitor 0.7.21

Choose a tag to compare

@TangCan TangCan released this 07 Nov 07:46

Summary

  • CR-116: Restore GNU sparse / contiguous archive members (fixes archive contains special file: ...kernel.elf for holey ELF assets such as TxPlane).
  • New backups disable GNU sparse headers (Builder::sparse(false)) to match Python tarfile.

Also includes CR-115 (long symlink targets) from the v0.7.20 tag that crates.io could not accept earlier due to rate limits.

Companion Python release: 0.1.21 / python-v0.1.21.

proj-janitor 0.7.20

Choose a tag to compare

@TangCan TangCan released this 07 Nov 07:20

Summary

  • CR-115: Fix archive backup failure when symlink targets exceed the ustar 100-byte linkname limit (e.g. TxPlane relative toolchain paths). Rust now relies on Builder::append_link GNU long-link extensions.

Companion Python release: 0.1.20 / python-v0.1.20.

Note: crates.io publish may be delayed by the 24h version rate limit; retry cargo publish when available.

proj-janitor 0.7.19

Choose a tag to compare

@TangCan TangCan released this 07 Nov 06:59

Summary

  • CR-114: restore --progress now reports archive member extraction counts (about every 100 members, plus a final extracted N members (done) line).

Companion Python release: 0.1.19 / python-v0.1.19.

proj-janitor 0.7.18

Choose a tag to compare

@TangCan TangCan released this 07 Nov 06:35

CR-113

restore --progress / [restore].progress: per-project restore progress on stderr, including dry-run plan size.

Companion Python release: 0.1.18 / python-v0.1.18.

proj-janitor 0.7.17

Choose a tag to compare

@TangCan TangCan released this 07 Nov 06:28

CR-112

restore --skip-existing / [restore].skip_existing: skip projects whose restore target directory already exists. Conflicts with --force. Combine with --continue-on-error to re-run a partial multi-project restore.

Companion Python release: 0.1.17 / python-v0.1.17.

proj-janitor 0.7.16

Choose a tag to compare

@TangCan TangCan released this 07 Nov 06:17

CR-111

restore --continue-on-error / [restore].continue_on_error: keep restoring remaining projects after a per-project failure. JSON includes failures. Still exits non-zero and does not roll back successes.

Companion Python release: 0.1.16 / python-v0.1.16.

proj-janitor 0.7.15

Choose a tag to compare

@TangCan TangCan released this 07 Nov 06:09

CR-110

Archive backups and --dry-run now preflight Windows-nonportable member paths and list all of them before writing (including common stray file.rs:line:col artifacts). Unsafe-path error text is clearer.

Companion Python release: 0.1.15 / python-v0.1.15.

proj-janitor 0.7.14

Choose a tag to compare

@TangCan TangCan released this 07 Nov 05:41

CR-109:restore --force

  • restore --force / --no-force 与 [restore].force
  • 暂存成功后替换已存在恢复目标目录
  • 仍拒绝对称链接与非目录;覆盖需 --yes 或交互确认
  • dry-run / JSON 标记 overwrite

crates.io: https://crates.io/crates/proj-janitor/0.7.14

proj-janitor 0.7.13

Choose a tag to compare

@TangCan TangCan released this 07 Nov 04:53

CR-108:scan Git unknown 诊断

  • scan 在 Git STATE 为 unknown 时 stderr 输出诊断原因
  • JSON git.detail 记录超时/启动失败或首行 stderr
  • 含 CR-107 海量小文件 / 多项目扫描容量回归

crates.io: https://crates.io/crates/proj-janitor/0.7.13