easypath
easypath is a lightweight Python toolkit for file, folder, and path workflows on top of pathlib, now expanded with a major advanced utility layer for automation, integrity checks, and data pipelines.
Installation
pip install easypath
What Is New In This Expansion
This release extends the library with 45 new tools focused on high-impact workflows:
- Atomic and resilient file writes
- Backup and restore flows
- File checksum and verification
- Fast search/replace and file grep
- Zip/Tar/Gzip archive workflows
- Directory snapshots + diffing
- Folder synchronization and filtered copy
- NDJSON + CSV append helpers
- JSON deep merge and merge-from-files
- Permission inspection and executable toggles
New Advanced Tools (45)
Path intelligence
normalize_pathis_absolute_pathpath_depthcommon_pathsame_path
Safe I/O and recovery
read_text_safewrite_text_atomicbackup_filerestore_filecopy_if_newerremove_filestouch_fileswait_for_path
Integrity, inspection, and content operations
file_checksumverify_checksumcompare_file_contentscount_lineshead_filetail_filefind_in_filereplace_in_filegrep_filesmerge_text_filesconcat_binary_fileslist_recent_fileslist_largest_files
Archives and structure workflows
make_zip_archiveextract_zip_archivemake_tar_archiveextract_tar_archivegzip_filegunzip_filehardlink_fileduplicate_tree_structure
Snapshot and sync workflows
snapshot_directorydiff_snapshotssync_folderscopy_folder_filtered
Structured data workflows
read_ndjsonwrite_ndjsonappend_csv_rowjson_mergemerge_json_files
Permissions and executability
get_path_permissionsmake_executable
Quick Example
from easypath import (
write_text_atomic,
backup_file,
file_checksum,
snapshot_directory,
diff_snapshots,
sync_folders,
merge_json_files,
)
write_text_atomic("data/config.txt", "version=2\n")
backup = backup_file("data/config.txt")
print("backup:", backup)
digest = file_checksum("data/config.txt")
print("sha256:", digest)
before = snapshot_directory("data", include_checksum=False)
write_text_atomic("data/notes.txt", "hello\n")
after = snapshot_directory("data", include_checksum=False)
print(diff_snapshots(before, after))
print(sync_folders("data", "mirror", delete_extras=False, dry_run=True))
print(merge_json_files("base.json", "override.json"))
Existing Core API
All existing folder/file/path helpers remain available (creation, deletion, move/copy, JSON/CSV read-write, path transforms, permissions, tree listing, and disk usage).
For usage examples across both legacy and new APIs, see DOCUMENTATION.md.
Metadata
Release files for easypath 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| easypath-0.3.0.tar.gz | 14.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| easypath-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 26.8 kB
Release files / easypath-0.3.0.tar.gz
| Download URL | easypath-0.3.0.tar.gz |
|---|---|
| Size | 14.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1dd88700d96e1785a0d4659c361ce5519bb1eb6e4bc1917992626ba1b87dba9f
|
|
BLAKE2b-256 checksum How to use checksums |
fe8b78f869ab41f8ae69791d38339b924181899c050f8f0a19de0f0c9250f3ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Release files / easypath-0.3.0-py3-none-any.whl
| Download URL | easypath-0.3.0-py3-none-any.whl |
|---|---|
| Size | 12.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6b715b01935627427036abea22919b35c713ce6d18cf938a302b00f61a30205a
|
|
BLAKE2b-256 checksum How to use checksums |
0f984e3e22f1a30c1971f2b0a4c0ccf9c72fb8364838f305d1eb53cfe22fb8b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|