Crate safe_write

Source
Expand description

A crate for safely writing files using an atomic write pattern.

This crate implements a safe file writing strategy that helps prevent file corruption in case of system crashes or power failures. It follows these steps:

  1. Creates parent directories if they don’t exist
  2. Writes content to a temporary file
  3. Ensures the content is fully written to disk
  4. Atomically renames the temporary file to the target path

§Examples

use safe_write::safe_write;

let content = b"Hello, World!";
safe_write("example.txt", content).expect("Failed to write file");

§Platform-specific behavior

On Windows, if the target file exists, it will be explicitly removed before the rename operation since Windows doesn’t support atomic file replacement.

Functions§

safe_write
Safely writes content to a file using an atomic write pattern.