{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/7"}],"enrichment":{"capability":"Provides atomic file writes that ensure a file is either fully written or not written at all, preventing corruption from interrupted writes or concurrent access.","skillfed_tags":["file-io","cross-platform"],"use_cases":["Writing configuration files that must not be corrupted if the process crashes mid-write","Atomically updating database or cache files in multi-process environments","Safely persisting application state or logs without risk of partial writes","Cross-platform file operations where atomicity guarantees are required"],"what_it_does":"Atomicwrites is a Python library for writing files in a way that guarantees atomicity\u2014either the entire file is written successfully or the original file remains untouched. It works by writing to a temporary file in the same directory, then atomically moving it to the target location using platform-specific operations: `rename` on POSIX systems (or `link`/`unlink` when overwriting is not allowed) and `MoveFileEx` on Windows. The library also invokes `fsync` to ensure data is flushed to disk.\n\nThe package provides both a simple high-level context-manager API and a lower-level class-based interface. It supports an `overwrite` parameter to control whether the target file may already exist, and handles errors consistently across platforms. With no runtime dependencies, it integrates easily into any Python project that needs to safely write configuration files, databases, or other critical data without risk of corruption from crashes or concurrent access.","worth_installing":"No\u2014this package is abandoned (last release 2022-07-08, repository archived) and shows no active maintenance. While the code is stable and has no known vulnerabilities, using an unmaintained library for critical file operations carries long-term risk. Consider the original atomicwrites package if it has resumed maintenance, or evaluate whether your use case truly requires atomic writes or can tolerate simpler alternatives."},"id":"atomicwrites-homeassistant","links":{"html":"https://skillfed.io/packages/atomicwrites-homeassistant","md":"https://skillfed.io/packages/atomicwrites-homeassistant.md","pypi":"https://pypi.org/project/atomicwrites-homeassistant/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2022-07-08","license_spdx":null,"license_treatment":"permissive","name":"atomicwrites-homeassistant","python_support":"supports_current","summary":"Atomic file writes."},"popularity":{"monthly_downloads":662308,"position":5439,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.4.1"}
