Skip to main content

Read parquet data directly into numpy array

Project description

JollyJack

Features

  • Reading parquet files directly into numpy arrays and torch tensors (fp16, fp32, fp64)
  • Faster and requiring less memory than vanilla PyArrow
  • Compatibility with PalletJack

Known limitations

  • Data cannot contain null values

Required

  • pyarrow ~= 21.0.0

JollyJack operates on top of pyarrow, making it an essential requirement for both building and using JollyJack. While our source package is compatible with recent versions of pyarrow, the binary distribution package specifically requires the latest major version of pyarrow.

Installation

pip install jollyjack

How to use:

Generating a sample parquet file:

import jollyjack as jj
import pyarrow.parquet as pq
import pyarrow as pa
import numpy as np

from pyarrow import fs

chunk_size = 3
n_row_groups = 2
n_columns = 5
n_rows = n_row_groups * chunk_size
path = "my.parquet"

data = np.random.rand(n_rows, n_columns).astype(np.float32)
pa_arrays = [pa.array(data[:, i]) for i in range(n_columns)]
schema = pa.schema([(f'column_{i}', pa.float32()) for i in range(n_columns)])
table =  pa.Table.from_arrays(pa_arrays, schema=schema)
pq.write_table(table, path, row_group_size=chunk_size, use_dictionary=False, write_statistics=True, store_schema=False, write_page_index=True)

Generating a numpy array to read into:

# Create an array of zeros
np_array = np.zeros((n_rows, n_columns), dtype='f', order='F')

Reading entire file into numpy array:

pr = pq.ParquetReader()
pr.open(path)

row_begin = 0
row_end = 0

for rg in range(pr.metadata.num_row_groups):
    row_begin = row_end
    row_end = row_begin + pr.metadata.row_group(rg).num_rows

    # To define which subset of the numpy array we want read into,
    # we need to create a view which shares underlying memory with the target numpy array
    subset_view = np_array[row_begin:row_end, :] 
    jj.read_into_numpy (source = path
                        , metadata = pr.metadata
                        , np_array = subset_view
                        , row_group_indices = [rg]
                        , column_indices = range(pr.metadata.num_columns))

# Alternatively
with fs.LocalFileSystem().open_input_file(path) as f:
    jj.read_into_numpy (source = f
                        , metadata = None
                        , np_array = np_array
                        , row_group_indices = range(pr.metadata.num_row_groups)
                        , column_indices = range(pr.metadata.num_columns))

Reading columns in reversed order:

with fs.LocalFileSystem().open_input_file(path) as f:
    jj.read_into_numpy (source = f
                        , metadata = None
                        , np_array = np_array
                        , row_group_indices = range(pr.metadata.num_row_groups)
                        , column_indices = {i:pr.metadata.num_columns - i - 1 for i in range(pr.metadata.num_columns)})

Reading column 3 into multiple destination columns

with fs.LocalFileSystem().open_input_file(path) as f:
    jj.read_into_numpy (source = f
                        , metadata = None
                        , np_array = np_array
                        , row_group_indices = range(pr.metadata.num_row_groups)
                        , column_indices = ((3, 0), (3, 1)))

Sparse reading

np_array = np.zeros((n_rows, n_columns), dtype='f', order='F')
with fs.LocalFileSystem().open_input_file(path) as f:
    jj.read_into_numpy (source = f
                        , metadata = None
                        , np_array = np_array
                        , row_group_indices = [0]
                        , row_ranges = [slice(0, 1), slice(4, 6)]
                        , column_indices = range(pr.metadata.num_columns)
						)
print(np_array)

Generating a torch tensor to read into:

import torch
# Create a tesnsor and transpose it to get Fortran-style order
tensor = torch.zeros(n_columns, n_rows, dtype = torch.float32).transpose(0, 1)

Reading entire file into the tensor:

pr = pq.ParquetReader()
pr.open(path)

jj.read_into_torch (source = path
                    , metadata = pr.metadata
                    , tensor = tensor
                    , row_group_indices = range(pr.metadata.num_row_groups)
                    , column_indices = range(pr.metadata.num_columns)
                    , pre_buffer = True
                    , use_threads = True)

print(tensor)

Benchmarks:

n_threads use_threads pre_buffer dtype compression PyArrow JollyJack
1 False False float None 6.79s 3.55s
1 True False float None 5.17s 2.32s
1 False True float None 5.54s 2.76s
1 True True float None 3.98s 2.66s
2 False False float None 4.63s 2.33s
2 True False float None 3.89s 2.36s
2 False True float None 4.19s 2.61s
2 True True float None 3.36s 2.39s
1 False False float snappy 7.00s 3.56s
1 True False float snappy 5.21s 2.23s
1 False True float snappy 5.22s 3.30s
1 True True float snappy 3.73s 2.84s
2 False False float snappy 4.43s 2.49s
2 True False float snappy 3.40s 2.42s
2 False True float snappy 4.07s 2.63s
2 True True float snappy 3.14s 2.55s
1 False False halffloat None 7.21s 1.23s
1 True False halffloat None 3.53s 0.71s
1 False True halffloat None 7.43s 1.96s
1 True True halffloat None 4.04s 1.52s
2 False False halffloat None 3.84s 0.64s
2 True False halffloat None 3.11s 0.57s
2 False True halffloat None 4.07s 1.17s
2 True True halffloat None 3.39s 1.14s

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

jollyjack-0.18.6.tar.gz (189.0 kB view details)

Uploaded Source

Built Distributions

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

jollyjack-0.18.6-cp313-cp313-win_amd64.whl (271.0 kB view details)

Uploaded CPython 3.13Windows x86-64

jollyjack-0.18.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

jollyjack-0.18.6-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

jollyjack-0.18.6-cp313-cp313-macosx_11_0_arm64.whl (98.1 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

jollyjack-0.18.6-cp312-cp312-win_amd64.whl (271.5 kB view details)

Uploaded CPython 3.12Windows x86-64

jollyjack-0.18.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

jollyjack-0.18.6-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

jollyjack-0.18.6-cp312-cp312-macosx_11_0_arm64.whl (99.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

jollyjack-0.18.6-cp311-cp311-win_amd64.whl (271.1 kB view details)

Uploaded CPython 3.11Windows x86-64

jollyjack-0.18.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

jollyjack-0.18.6-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

jollyjack-0.18.6-cp311-cp311-macosx_11_0_arm64.whl (98.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

jollyjack-0.18.6-cp310-cp310-win_amd64.whl (270.9 kB view details)

Uploaded CPython 3.10Windows x86-64

jollyjack-0.18.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

jollyjack-0.18.6-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

jollyjack-0.18.6-cp310-cp310-macosx_11_0_arm64.whl (97.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

jollyjack-0.18.6-cp39-cp39-win_amd64.whl (271.6 kB view details)

Uploaded CPython 3.9Windows x86-64

jollyjack-0.18.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

jollyjack-0.18.6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (3.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

jollyjack-0.18.6-cp39-cp39-macosx_11_0_arm64.whl (97.6 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file jollyjack-0.18.6.tar.gz.

File metadata

  • Download URL: jollyjack-0.18.6.tar.gz
  • Upload date:
  • Size: 189.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jollyjack-0.18.6.tar.gz
Algorithm Hash digest
SHA256 fa7703271ec1b8ccabceb96a582d460204ff2bfa2012008b38c7032164468ae7
MD5 1017b458b7d8c3644ecf24c084d54d65
BLAKE2b-256 467031f37cab74b286f0ab7889411748b7f19a9fe2d354989ed39389d10549da

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6.tar.gz:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.6-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 271.0 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jollyjack-0.18.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 65fce418a75cea2de8b717043845172c785852e322dd637b3ecdfda6215bc100
MD5 1858a10ab77b317ba67e67d57ed18a28
BLAKE2b-256 44a37ae86823eb7ddb08c6c6e163375a710c9715f99ab4520169f84ffb65b15f

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp313-cp313-win_amd64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 981263feab42dfd0c992490a5ef324a4f228f146818a7773b6969086741332b5
MD5 042ad4ff654cd2a419ae16d9e33f988b
BLAKE2b-256 220e24dc53cf1a4a4b1f87abe7672c56e4df781944921bf2ce509dd3092423c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d03e6cc45c9b47091d78089ae7551e8fa385613b67d04f1151c3dbac25d60814
MD5 cc943624aad04c1c04613ed5e9045499
BLAKE2b-256 e2f431d4c32f8c5d3399bdf8c21da4499805b6efa1a27e168c4088063f95707b

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9e3067154a4291a5c2a2c3ba69bdd339b24130be940d484b9701644b6374ca74
MD5 ee0fe105b9ec97eb1c537e71c7e3b294
BLAKE2b-256 1ea86601e8b43082f3a5734450970e45fde9db14b48b67fff5dc5009047b9bff

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.6-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 271.5 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jollyjack-0.18.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7dd8860311e854d5279ccc80f48c2d0c6c9dae37f5f938d77a24073d91d65324
MD5 598fe5279b572e47193b101edb3c6b56
BLAKE2b-256 0902238354cf2f416fe7277e7b42bee2c3fb8d4352f7d7f2a34c29d5730639c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp312-cp312-win_amd64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dc7bc087e1bf71e30739f93de840dd6a6fa9d6d645062861fa6d5ab7aec7b1ce
MD5 4c7490c899decb9e2198eef53f38ea7e
BLAKE2b-256 3f3fdff4d9a9f46bf4de5d5c426afbfb8114366d6ef0c1b4a92bc9a0f2eccfd2

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 affb11049605768854fa26fee8c1911fecbd11ee648c8521672934ba659ba0e4
MD5 cdf2ce0a2f1b88f6623566ec093cc0c0
BLAKE2b-256 4621ae2c37f609c0be107e7e5d2684927853e6017b9509f09f286e1d14b70119

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e78db32cb39ad11c306bc64d5c658ad660905d77b86abcd27472ae85eeca4d94
MD5 ebed205569547900ff1f621f92d7abca
BLAKE2b-256 7bf11d1da29100db574e8914ea9bca94414226cf2aa53653fc73342b135fae92

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.6-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 271.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jollyjack-0.18.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8b858731759db5c68c96760b4d1223ab5d220213302cbcc08c2b96233b9e9b87
MD5 dc497c8135424c1a4128987b8b1eb127
BLAKE2b-256 3e88c497ad67f7d29f0c2dea6895b83b3f33a7085e846abc710e6a7a779bdd23

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp311-cp311-win_amd64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 33221af0780579248a36321d6f4a6655746e97bc452739ed0ed0860a299ac4a9
MD5 131bcb1ca477ab4c52cb4e5591d6cc81
BLAKE2b-256 2a8a298b415fc6ff89713d1d3ead9f67042724dea6eb2416de7afe82ad362431

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9dad09e26cd0030b810c2616733e2b51e23af407f8928a53f3bd747c35e2412a
MD5 448b2e3c5c2edae4e9c151101e7de111
BLAKE2b-256 521a756d04f6375f1e6c431364be51443b7a757715dbfadade378025f11d8c0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5f3b562f96a4e55c0c40b39216954a7c2c0a36bde0f3d615545937c249ef1335
MD5 50da8dd4a00941dfb24072a909e211bf
BLAKE2b-256 27d6407e9ee464c6f1bdf7eeb75ef5f7460d1b4b9d873f8b4c6a0181bdb68da3

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.6-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 270.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jollyjack-0.18.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 291af68dbdde1bf032bff0678903586eb683bee5a7b38115feaac16a41b7cd1b
MD5 3dc62245ac76f7c1c5a451b6991d45d1
BLAKE2b-256 6143434ab94b6cd69d1bcbd11a75b485cbc0df88908b53d655e27fe01433adf6

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp310-cp310-win_amd64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2390d45c4939f24a28f812af5c9ba5367f78ebe17e482a1cec79f0eb98999857
MD5 34aa890153cc93b8dfef3ed648220967
BLAKE2b-256 6458855d909c70d7e2132f82e15a5350dc61f4ef0488ab56b76d4aa678b7643f

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 87691947992e7f8af98dfb5b32d938db65342efc97d083c6f37db9ed4c3c2356
MD5 aa016985cde556a6f31a2ff264de1263
BLAKE2b-256 3786ff3594550023f48693099c28275303de6fe87d8410c09ce3b3da581a7730

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2a9025296fad65087e905825cd1575b58f4eea79b9053f1720a3a6c98743cd68
MD5 54b11fd66a5fef2f55f3bb4bfba350e6
BLAKE2b-256 377af4e89fb1fd053ec2f4bee0d20e2829be104a6311b52f26558f1cc18d7fd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.6-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 271.6 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for jollyjack-0.18.6-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 ad27f51a4efca8a501e289087a3f3f654beb68f02ae57435af0f038f575f5b88
MD5 3565d8d2b767aa2257c90c77151fdac9
BLAKE2b-256 20508c6a71abca622e9efd603ff2223f9360a057ef6ad9eeeaac9a147acc6446

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp39-cp39-win_amd64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8e6fb357cf92964c09a9587c380cea43d069ed76f33b902ddd7be69846e0e2de
MD5 59707782417c21a8e854d331ab9900b1
BLAKE2b-256 47608f4336d0ebe21e45e2c6f33d3a576b1518f4494ec0f1f9c8a6fc5d660808

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 14e633ea13b10c14385a355bf3c925607a113a1424a67cb07ec4aefd3b4ee24f
MD5 69f489e7d74a62e31ba5229fbdce93aa
BLAKE2b-256 60eb3d0c0b6f4636f1b23ff819cf91ce29dc37a5d2ac3e30d98327f305b6e06b

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jollyjack-0.18.6-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.6-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d7dbbf801c2c7a2b8fcd9fca0b0884995ecbfe1ab5fca6d802ca56c65cb56e9d
MD5 9145564d87148e6eb8d5bd6f5b6cfbc2
BLAKE2b-256 517201a840c9b30a9e123fce1351f8566608756404452f53d875a30cab8a14ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.6-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: python.yml on marcin-krystianc/JollyJack

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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