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.4.tar.gz (188.9 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.4-cp313-cp313-win_amd64.whl (271.4 kB view details)

Uploaded CPython 3.13Windows x86-64

jollyjack-0.18.4-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.4-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.4-cp313-cp313-macosx_11_0_arm64.whl (98.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

jollyjack-0.18.4-cp312-cp312-win_amd64.whl (271.9 kB view details)

Uploaded CPython 3.12Windows x86-64

jollyjack-0.18.4-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.4-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.4-cp312-cp312-macosx_11_0_arm64.whl (99.2 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

jollyjack-0.18.4-cp311-cp311-win_amd64.whl (271.5 kB view details)

Uploaded CPython 3.11Windows x86-64

jollyjack-0.18.4-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.4-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.4-cp311-cp311-macosx_11_0_arm64.whl (99.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

jollyjack-0.18.4-cp310-cp310-win_amd64.whl (271.3 kB view details)

Uploaded CPython 3.10Windows x86-64

jollyjack-0.18.4-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.4-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.4-cp310-cp310-macosx_11_0_arm64.whl (97.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

jollyjack-0.18.4-cp39-cp39-win_amd64.whl (272.0 kB view details)

Uploaded CPython 3.9Windows x86-64

jollyjack-0.18.4-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.4-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.4-cp39-cp39-macosx_11_0_arm64.whl (97.8 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: jollyjack-0.18.4.tar.gz
  • Upload date:
  • Size: 188.9 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.4.tar.gz
Algorithm Hash digest
SHA256 4d32f84587d3c2f00fd0b874c658a118d7c3b14d176de27f9557b3dd38f8fd91
MD5 2fa6e8e3bd5772e6fa82bac5beb7d040
BLAKE2b-256 a3f320b389fd5bd5fe168ec013234a5e91144e4f5db0616aace2976b8668f0b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4.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.4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 271.4 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.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3d5604bfcc4a530a7ac660f5b0d0102d056b4028188deeb643567d32a1c2f6d9
MD5 180c90bddfb1b0c95fee886d17a916c3
BLAKE2b-256 80b6da4a7d5ff951fb8dc77db9efd2cdf0a66b698901e4721b53f47b4519eaab

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dd8c2f6d85715c3620c8d6d4ddb42dfa6b37cfaf3b76424b775281ed770008a6
MD5 09c12e7b22c4df4596fe0f80c0e8670e
BLAKE2b-256 c6f696ba740ab3000486cbd7f1f1cd100c9c636878d15e2d5df18663c0449ce4

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 145e2969c8f9a1ed7ae58157272bd5fd0dd02a3e9bb8d564bcdf3fb81e0a93c0
MD5 32b06cc703954224266fe295dab3085d
BLAKE2b-256 debd18a003fe333a6fc046a56f12921fa9eb526d8498e0025a18c76a5772a01e

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f60f8f51e918426f8f3c15dbcce8f1f4f8f6c2fedafa9f02122d961a8ab358ce
MD5 4c39aaf8d980f33d7500bb917f54b20c
BLAKE2b-256 7cac62d3c15fd7e12e56e283d04258ab941573e03b3f1359b34de25ea8efc103

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 271.9 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.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 526750d9a9695832ff92e57944d6afd49955f37a1ad414e2b0dc2b7594573ff6
MD5 e5900a6304b15ee0fc913f3d6b96dc74
BLAKE2b-256 c13248684547ab7ad9c316e93731f73bdd43d8a61404f432c3ed060c5d5e2726

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ef693648088dad82d07c22df909f35a0b33d928d533d5ade4a24564937d75f0f
MD5 f1cd64ac5de57eb9082cbcc977c465d2
BLAKE2b-256 1f35fa8ad35640a249fe645b271d1bd77d1aa7a7cf7e8d6557cbbb0f1fd3d946

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b7288b815f10624822daf98d41b0b350fc043b09449e26b8f5f1519744b38fee
MD5 2f5b280369aa85dba04df00909ade14c
BLAKE2b-256 d50d32257e1767b96dcbdaed1f8d04f97d2ec41d79452c479a0e1345ecfc0ca2

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b34de232b210a32a5f9f000001ba80306b79d393025387ad1959875214f9fef9
MD5 cca9503e9381cfed533c30fc27ad341d
BLAKE2b-256 3c4bea3d793d72c82e20aa470255916070809d70f0f348a6083ead0ab8e2e813

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 271.5 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.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 59d40910d514323840d1b8fea8f2bf70c4fd5b094a8e38cf33f1ae58d2969e9c
MD5 548fadcf408b97fca8fd68b8c24be0ad
BLAKE2b-256 1ae0d1c08fc0c1375b100856a5fda13c523fb20ed7d1753f528fad1145abcdd3

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 52d9fff861138f49ad9a56899f52ebf1aaef2b1b2067a1c51a0c719217c826af
MD5 d729986a0d956fece99e9966c61c8f4b
BLAKE2b-256 42bdb52e614c62c8f58d07eae10794074ee132b72ab1ea91b8d78b2f30c1a4d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 127309fc379e43967694d90bee5976d33b4d79e1ecb51db2eab15bae4ebe513d
MD5 6613de1c3d860b5a2ddf105c5d62fd4f
BLAKE2b-256 2c2afd741ff8866cddd5097b7d352cf395c352c99e88a2f10d6605fc0bef37ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 91970280b3a4c7f3bb14171b162236d5a525c6448208783bddae15ccb9577165
MD5 13506a046bd77ec6b628c6a591f108fd
BLAKE2b-256 b9990521a91049c32d85a4e8f8897acdf4e3774c7b75555e8941f38fe48b8bf3

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 271.3 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.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a0adb2cee6ce584effe24d64e1e6fcbd85523f586565b5dcdeb7a73b407cbe7c
MD5 44781948d7b7c6ca1de14a403a59b936
BLAKE2b-256 e4536fdd5e7df0ec5067bb7ae233e44eff2547661631eb02b75a5b22573db52a

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3b280075d036a8cd219a3f2596c0427a5126a35272527a40f7074bba1c7446e0
MD5 90e18cbdf7a82aeee24e9c6b76faebb5
BLAKE2b-256 99c29eae088e7ddc58431acf5aa664112bce9023293d31648c57f5693da03184

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 338882023c63354a5f7bfd05edfb01b1bfd12592068562852bfcc62662a05fa5
MD5 78bf05e88d5afa6e16e8506977eb2515
BLAKE2b-256 f94e6feb7046f65a36680a9ee0f81359b8fc26f65128439069b3e9cb56879725

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ba096adbf72ee1ffb6c3da855073237d613d181a486f3a45830740bf76b0702c
MD5 df1b99a3bfde6c952099589b73f71dce
BLAKE2b-256 e37080726e77e9064b332b483a5e5a78526c3cf1bcb6c88a065e6b04f2b95047

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: jollyjack-0.18.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 272.0 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.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 563a1fa3d15409fc58ed63fcd7656e8b87a1a021770d8383f0c599c1344fb492
MD5 4d5ed3cdfc7a531da96bc10f8b175e8c
BLAKE2b-256 f9a9a1d6b2cbdd4f4e316d3570fcecc820c8a3e3b44794e337c4a2913e41ded7

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bfeee921d42100b95d6562717744dee5204d1108212c6d346afcd4493e1caa39
MD5 3beafd9a5b2569f02bbef8a1ef65d51c
BLAKE2b-256 feee4c5ab70612c7df29dfad60d1b14f67b4a7b1a5a3f88a26961e17c539a8f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ab418ac0361e8e41eb780d978e262649502d127556cffcfd3bd17bd47d606b8a
MD5 080dccff25fb4b2e879a4c146e443d25
BLAKE2b-256 78e3dc78fe2d927ccee8d6ecc87ccc28c8d508c071197d424412bdffb89cf7be

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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.4-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for jollyjack-0.18.4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 848b4c1758e4fe33d79e39fe90eb5023020b5b4a88805f25671a409ed3e97941
MD5 9f9a0bd86080e1ed060014df0b995dc2
BLAKE2b-256 d8cd0fb21e6e896fecd743e53eda777c9750ad1bf50c75ef16df51d3165adafe

See more details on using hashes here.

Provenance

The following attestation bundles were made for jollyjack-0.18.4-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