Files
sausage/userland/git/vendor/gix-tempfile/README.md
T
surma 4b27e9afd5 userland/git: git-compatible CLI on v2's gix code (T10)
Local workflow, smart-HTTP clone/fetch/push and public HTTPS clone/fetch match
native git in stdout and exit codes. Only WASI imports (wasi:http, exit-with-code).
2026-11-06 16:07:57 +00:00

13 lines
816 B
Markdown

Use tempfiles to minimize the risk of resource leakage when preparing to overwrite or create a file with new content
in a signal-safe way, making the change atomic.
Tempfiles can also be used as locks as only one tempfile can exist at a given path at a time.
* [x] registered temporary files which are deleted automatically as the process terminates or on drop
* [x] write to temporary file and persist it under new name
* [x] close temporary files to convert them into a marker while saving system resources
* [x] mark paths with a closed temporary file
* [x] persist temporary files to prevent them from perishing.
* [x] signal-handler integration with `gix` to clean lockfiles before the process is aborted.
* [x] use a temporary file transparently due thanks to implementations of `std::io` traits