Python bindings for Vegh - The CodeTease Snapshot Tool.
Project description
🥬 PyVegh
PyVegh is the official Python binding for the Vegh snapshot engine, developed by CodeTease.
It delivers the raw performance of Rust (Zstd compression, Tar archiving, SHA256 hashing) wrapped in a modern, flexible Python interface.
"Tight packing, swift unpacking, no nonsense."
Features
- Blazing Fast: Core logic is implemented in Rust using PyO3, ensuring near-native speed.
- Modern CLI: Built with
TyperandRichfor a clean, professional command-line experience. - Integrity: Native SHA256 checksum verification for all snapshots.
- Smart Filtering: Automatically respects
.veghignoreand.gitignorerules. - Network Ready: Built-in
sendcommand to push snapshots to remote endpoints.
Installation
Install directly from PyPI:
pip install pyvegh
CLI Usage
PyVegh provides a command-line interface via the vegh command.
Create a snapshot:
vegh snap ./my-project --output backup.snap
Restore a snapshot:
vegh restore backup.snap ./restored-folder
Verify integrity:
vegh check backup.snap
Send to a server:
vegh send backup.snap https://api.teaserverse.online/test --auth YOUR_TOKEN
Library Usage
You can also use PyVegh as a library in your own Python scripts:
from vegh import create_snap, restore_snap, check_integrity
# Create a snapshot
# Returns the number of files compressed
count = create_snap("src_folder", "backup.snap")
print(f"Compressed {count} files.")
# Check integrity
# Returns the SHA256 hash string
checksum = check_integrity("backup.snap")
print(f"SHA256: {checksum}")
# Restore
restore_snap("backup.snap", "dest_folder")
License
This project is under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyvegh-0.1.0.tar.gz.
File metadata
- Download URL: pyvegh-0.1.0.tar.gz
- Upload date:
- Size: 12.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
588731e79e085432cede04fce3eb2feb517d4ae0e38a8d873a777495b506e2da
|
|
| MD5 |
a3e11a9e12ddd92a753c1a5b74319c30
|
|
| BLAKE2b-256 |
689a8b926c5bd08a7d9ef21cfef852d3a06661caeca9534bc0b040518c4a0ab0
|
Provenance
The following attestation bundles were made for pyvegh-0.1.0.tar.gz:
Publisher:
release.yml on CodeTease/pyvegh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyvegh-0.1.0.tar.gz -
Subject digest:
588731e79e085432cede04fce3eb2feb517d4ae0e38a8d873a777495b506e2da - Sigstore transparency entry: 715844333
- Sigstore integration time:
-
Permalink:
CodeTease/pyvegh@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Branch / Tag:
refs/tags/v0.1.0-fix-again - Owner: https://github.com/CodeTease
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyvegh-0.1.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: pyvegh-0.1.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: PyPy, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e08d5e9515bb75b1d4d95100d544c263f513431056b71dd32bd99517bfd83a41
|
|
| MD5 |
a22a06fd87964bf98db0ad287485d638
|
|
| BLAKE2b-256 |
c3c74b571aa3cbd2264d0d97b6f07466c9dcc7298857d5a155b7124b31188cc7
|
Provenance
The following attestation bundles were made for pyvegh-0.1.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on CodeTease/pyvegh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyvegh-0.1.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
e08d5e9515bb75b1d4d95100d544c263f513431056b71dd32bd99517bfd83a41 - Sigstore transparency entry: 715844337
- Sigstore integration time:
-
Permalink:
CodeTease/pyvegh@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Branch / Tag:
refs/tags/v0.1.0-fix-again - Owner: https://github.com/CodeTease
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyvegh-0.1.0-cp38-abi3-win_amd64.whl.
File metadata
- Download URL: pyvegh-0.1.0-cp38-abi3-win_amd64.whl
- Upload date:
- Size: 997.3 kB
- Tags: CPython 3.8+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d127da5476802ed032da68e1f911fad70a82fba1d2c7c3fe0a5fe60dac3629ca
|
|
| MD5 |
a63145ec8a37299ba2c250793e258ea0
|
|
| BLAKE2b-256 |
737504379347d54b001c968e04e42db8f3c46de0a6331dfaa05b1836916b390c
|
Provenance
The following attestation bundles were made for pyvegh-0.1.0-cp38-abi3-win_amd64.whl:
Publisher:
release.yml on CodeTease/pyvegh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyvegh-0.1.0-cp38-abi3-win_amd64.whl -
Subject digest:
d127da5476802ed032da68e1f911fad70a82fba1d2c7c3fe0a5fe60dac3629ca - Sigstore transparency entry: 715844336
- Sigstore integration time:
-
Permalink:
CodeTease/pyvegh@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Branch / Tag:
refs/tags/v0.1.0-fix-again - Owner: https://github.com/CodeTease
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyvegh-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: pyvegh-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd982f9ee760407faf4b31771bf4c8d388e74e602f6efb6317324ab2b8fa4cfd
|
|
| MD5 |
e548ab6fe96d906137476737d2dd0eed
|
|
| BLAKE2b-256 |
2ac95f4277bf1779c38f063456bd196ff3e9e6baf4f2e818502f225cf707a844
|
Provenance
The following attestation bundles were made for pyvegh-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on CodeTease/pyvegh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyvegh-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
dd982f9ee760407faf4b31771bf4c8d388e74e602f6efb6317324ab2b8fa4cfd - Sigstore transparency entry: 715844338
- Sigstore integration time:
-
Permalink:
CodeTease/pyvegh@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Branch / Tag:
refs/tags/v0.1.0-fix-again - Owner: https://github.com/CodeTease
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyvegh-0.1.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: pyvegh-0.1.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.8+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65909bfe1f3c57c1a9363184755c34b6f14cf9f2ee3f8b6234acf396e7880709
|
|
| MD5 |
5039f22e5640dfff4231d171e31c71ca
|
|
| BLAKE2b-256 |
bff896d3bf49aa4520a299e2f41bb6d39eaeb7618572995ea1ba479ffab705bc
|
Provenance
The following attestation bundles were made for pyvegh-0.1.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
release.yml on CodeTease/pyvegh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyvegh-0.1.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
65909bfe1f3c57c1a9363184755c34b6f14cf9f2ee3f8b6234acf396e7880709 - Sigstore transparency entry: 715844335
- Sigstore integration time:
-
Permalink:
CodeTease/pyvegh@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Branch / Tag:
refs/tags/v0.1.0-fix-again - Owner: https://github.com/CodeTease
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyvegh-0.1.0-cp38-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: pyvegh-0.1.0-cp38-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.8+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ffa9e829d978cdacc85109163ee6cf3a0f43144aae3c1cd215ef1005f7ba2833
|
|
| MD5 |
c575a5ab77ab4d274fd350365733835d
|
|
| BLAKE2b-256 |
4e525083dbc6802b5ddfc0d38c8830a8a74054d4c280d4e579b316966b293cd8
|
Provenance
The following attestation bundles were made for pyvegh-0.1.0-cp38-abi3-macosx_11_0_arm64.whl:
Publisher:
release.yml on CodeTease/pyvegh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyvegh-0.1.0-cp38-abi3-macosx_11_0_arm64.whl -
Subject digest:
ffa9e829d978cdacc85109163ee6cf3a0f43144aae3c1cd215ef1005f7ba2833 - Sigstore transparency entry: 715844339
- Sigstore integration time:
-
Permalink:
CodeTease/pyvegh@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Branch / Tag:
refs/tags/v0.1.0-fix-again - Owner: https://github.com/CodeTease
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pyvegh-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl.
File metadata
- Download URL: pyvegh-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.8+, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9383a599398436742c5a4ca778547c8f71d86e89d9354fef8e0b085a5452d23e
|
|
| MD5 |
00d363f55a08ca8e5ad3a7c3a5f1c7d8
|
|
| BLAKE2b-256 |
9834f676f81dae99381b2b14285fe86ea3d265ba08eae17ac6acbaa0a9506611
|
Provenance
The following attestation bundles were made for pyvegh-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl:
Publisher:
release.yml on CodeTease/pyvegh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pyvegh-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl -
Subject digest:
9383a599398436742c5a4ca778547c8f71d86e89d9354fef8e0b085a5452d23e - Sigstore transparency entry: 715844341
- Sigstore integration time:
-
Permalink:
CodeTease/pyvegh@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Branch / Tag:
refs/tags/v0.1.0-fix-again - Owner: https://github.com/CodeTease
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ede498f145e3e089d7fd54ad3e208555d7c3e7e8 -
Trigger Event:
push
-
Statement type: