Skip to main content

Hash file or directory recursively.

Project description

Build PyPI MIT licensed

paqPy

Hash file or directory recursively.

Python bindings to the Rust paq library.

Powered by blake3 cryptographic hashing algorithm.

Performance

The Go programming language repository was used as a test data source (157 MB / 14,490 files).

Tool Version Command Mean [ms] Min [ms] Max [ms] Relative
paq latest paq ./go 77.7 ± 0.6 77.1 80.2 1.00
b3sum 1.5.1 find ./go ... b3sum 327.3 ± 3.6 320.2 332.3 4.21 ± 0.05
dirhash 0.5.0 dirhash -a sha256 ./go 576.1 ± 2.9 570.8 580.3 7.41 ± 0.06
GNU sha2 9.7 find ./go ... sha256sum 725.2 ± 43.5 692.2 813.2 9.33 ± 0.56
folder-hash 4.1.1 folder-hash ./go 1906.0 ± 78.0 1810.0 2029.0 24.53 ± 1.02

See paq benchmarks documentation for more details.

Installation

Install From PyPI

pip install paqpy

Install From Repository (Unstable)

Not recommended due to instability of main branch in-between tagged releases.

  1. Clone this repository.
  2. Run pip install maturin to install maturin.
  3. Run maturin develop --release from repository root.

Usage

import paqpy

source = "/path/to/source"
ignore_hidden = True # .dir or .file
source_hash = paqpy.hash_source(source, ignore_hidden)

print(source_hash)

Visit the paq homepage for more details.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paqpy-1.4.0.tar.gz (7.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

paqpy-1.4.0-cp37-abi3-win_amd64.whl (208.3 kB view details)

Uploaded CPython 3.7+Windows x86-64

paqpy-1.4.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (366.2 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ x86-64

paqpy-1.4.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (350.3 kB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARM64

paqpy-1.4.0-cp37-abi3-macosx_11_0_arm64.whl (308.5 kB view details)

Uploaded CPython 3.7+macOS 11.0+ ARM64

paqpy-1.4.0-cp37-abi3-macosx_10_12_x86_64.whl (325.9 kB view details)

Uploaded CPython 3.7+macOS 10.12+ x86-64

File details

Details for the file paqpy-1.4.0.tar.gz.

File metadata

  • Download URL: paqpy-1.4.0.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.10.2

File hashes

Hashes for paqpy-1.4.0.tar.gz
Algorithm Hash digest
SHA256 9d3a266ff428312ac1b9f56cf99a3d32f60e21d188774f706d0b4dd2be9edf4f
MD5 9b4a191c6fa64a72ab6eef59b8227f28
BLAKE2b-256 da395dd4acaf7571e85e4920b90e1795b749f74df54192568f29c4725ca777cd

See more details on using hashes here.

File details

Details for the file paqpy-1.4.0-cp37-abi3-win_amd64.whl.

File metadata

  • Download URL: paqpy-1.4.0-cp37-abi3-win_amd64.whl
  • Upload date:
  • Size: 208.3 kB
  • Tags: CPython 3.7+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.10.2

File hashes

Hashes for paqpy-1.4.0-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 ce2e124233cdcf1a4719a2beb1ab7dedb18e7771b520ec0741522c16d9b2edea
MD5 766e0d2238d6358a05844aa02717ce4e
BLAKE2b-256 ca1ca479f0b0b25b346d0e11aaa7afaa265215e093c158832f86656dc768aa58

See more details on using hashes here.

File details

Details for the file paqpy-1.4.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for paqpy-1.4.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f8f5ed779db987544b6695fb1ebec086fcd6dc858fdee60ae4abd3337cbc2866
MD5 e0c613da51a67a0ec785227b96400808
BLAKE2b-256 10ed1bf70ad83b085b654e4641a7d9fad08124a2ec86107d5c8d46c5701dd751

See more details on using hashes here.

File details

Details for the file paqpy-1.4.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for paqpy-1.4.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 10764ac4211a0b580c960b612480d81770c2767dc8d71a7ce1d4720141b2031a
MD5 7f254a15919edf9e43bf0ee04da3f0d0
BLAKE2b-256 78ebd19ec1850f3dd3df39cf7d8b382c906444f695d6fdb46e7b546924b8700a

See more details on using hashes here.

File details

Details for the file paqpy-1.4.0-cp37-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for paqpy-1.4.0-cp37-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1841a6e7698996e332d4d437cd190686017ae268829b4fb4b0b724da228aa8c3
MD5 869fe5e39e0208d27d5ba9ed7a39e44e
BLAKE2b-256 e169bc4590a05e095d8f646a2280eb0d78106169ee41660e822d09fdbbe75337

See more details on using hashes here.

File details

Details for the file paqpy-1.4.0-cp37-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for paqpy-1.4.0-cp37-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b5a31f4fe08887840bf8a924b697750f608d1e8e00b719195b100a85d4554004
MD5 572d393d8da90b10592bf883c61722a3
BLAKE2b-256 edfbd0a84b8f0b314ad9eb9dedfa8dd95d032f09048f189dda10b52f8128dfd0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page