Skip to main content

Fast random access of gzip files in Python

Project description

indexed_gzip

Travis build status Appveyor build status PyPi version Anaconda version

Fast random access of gzip files in Python

Overview

The indexed_gzip project is a Python extension which aims to provide a drop-in replacement for the built-in Python gzip.GzipFile class, the IndexedGzipFile.

indexed_gzip was written to allow fast random access of compressed NIFTI image files (for which GZIP is the de-facto compression standard), but will work with any GZIP file. indexed_gzip is easy to use with nibabel (http://nipy.org/nibabel/).

The standard gzip.GzipFile class exposes a random access-like interface (via its seek and read methods), but every time you seek to a new point in the uncompressed data stream, the GzipFile instance has to start decompressing from the beginning of the file, until it reaches the requested location.

An IndexedGzipFile instance gets around this performance limitation by building an index, which contains seek points, mappings between corresponding locations in the compressed and uncompressed data streams. Each seek point is accompanied by a chunk (32KB) of uncompressed data which is used to initialise the decompression algorithm, allowing us to start reading from any seek point. If the index is built with a seek point spacing of 1MB, we only have to decompress (on average) 512KB of data to read from any location in the file.

Intended use

You may find indexed_gzip useful if you need to read from large GZIP files. A major advantage of indexed_gzip is that it will work with any GZIP file. However, if you have control over the creation of your GZIP files, you may wish to consider some alternatives:

  • mgzip provides an accelerated GZIP compression and decompression library.
  • Compression formats other than GZIP, such as bzip2 and xz, have better support for random access.

Installation

indexed_gzip is available on PyPi - to install, simply type:

pip install indexed_gzip

You can also install indexed_gzip from conda-forge:

conda install -c conda-forge indexed_gzip

To compile indexed_gzip, make sure you have cython installed (and numpy if you want to compile the tests), and then run:

python setup.py develop

To run the tests, type the following; you will need numpy, pytest and pytest-cov installed:

pytest

Usage

You can use the indexed_gzip module directly:

import indexed_gzip as igzip

# You can create an IndexedGzipFile instance
# by specifying a file name, or an open file
# handle. For the latter use, the file handle
# must be opened in read-only binary mode.
# Write support is currently non-existent.
myfile = igzip.IndexedGzipFile('big_file.gz')

some_offset_into_uncompressed_data = 234195

# The index will be automatically
# built on-demand when seeking or
# reading.
myfile.seek(some_offset_into_uncompressed_data)
data = myfile.read(1048576)

Using with nibabel

You can use indexed_gzip with nibabel. nibabel >= 2.3.0 will automatically use indexed_gzip if it is present:

import nibabel as nib

image = nib.load('big_image.nii.gz')

If you are using nibabel 2.2.x, you need to explicitly set the keep_file_open flag:

import nibabel as nib

image = nib.load('big_image.nii.gz', keep_file_open='auto')

To use indexed_gzip with nibabel 2.1.0 or older, you need to do a little more work:

import nibabel      as nib
import indexed_gzip as igzip

# Here we are using 4MB spacing between
# seek points, and using a larger read
# buffer (than the default size of 16KB).
fobj = igzip.IndexedGzipFile(
    filename='big_image.nii.gz',
    spacing=4194304,
    readbuf_size=131072)

# Create a nibabel image using
# the existing file handle.
fmap = nib.Nifti1Image.make_file_map()
fmap['image'].fileobj = fobj
image = nib.Nifti1Image.from_file_map(fmap)

# Use the image ArrayProxy to access the
# data - the index will automatically be
# built as data is accessed.
vol3 = image.dataobj[:, :, :, 3]

Index import/export

If you have a large file, you may wish to pre-generate the index once, and save it out to an index file:

import indexed_gzip as igzip

# Load the file, pre-generate the
# index, and save it out to disk.
fobj = igzip.IndexedGzipFile('big_file.gz')
fobj.build_full_index()
fobj.export_index('big_file.gzidx')

The next time you open the same file, you can load in the index:

import indexed_gip as igzip
fobj = igzip.IndexedGzipFile('big_file.gz', index_file='big_file.gzidx')

Write support

indexed_gzip does not currently have any support for writing. Currently if you wish to write to a file, you will need to save the file by alternate means (e.g. via gzip or nibabel), and then re-create a new IndexedGzipFile instance. For example:

import nibabel as nib

# Load the entire image into memory
image = nib.load('big_image.nii.gz')
data = image.get_data()

# Make changes to the data
data[:, :, :, 5] *= 100

# Save the image using nibabel
nib.save(data, 'big_image.nii.gz')

# Re-load the image
image = nib.load('big_image.nii.gz')

Performance

A small test script is included with indexed_gzip; this script compares the performance of the IndexedGzipFile class with the gzip.GzipFile class. This script does the following:

  1. Generates a test file.

  2. Generates a specified number of seek locations, uniformly spaced throughout the test file.

  3. Randomly shuffles these locations

  4. Seeks to each location, and reads a chunk of data from the file.

This plot shows the results of this test for a few compresed files of varying sizes, with 500 seeks:

Indexed gzip performance

Acknowledgements

The indexed_gzip project is based upon the zran.c example (written by Mark Alder) which ships with the zlib source code.

indexed_gzip was originally inspired by Zalan Rajna's (@zrajna) zindex project:

Z. Rajna, A. Keskinarkaus, V. Kiviniemi and T. Seppanen
"Speeding up the file access of large compressed NIfTI neuroimaging data"
Engineering in Medicine and Biology Society (EMBC), 2015 37th Annual
International Conference of the IEEE, Milan, 2015, pp. 654-657.

https://sourceforge.net/projects/libznzwithzindex/

Initial work on indexed_gzip took place at Brainhack Paris, at the Institut Pasteur, 24th-26th February 2016, with the support of the FMRIB Centre, at the University of Oxford, UK.

Many thanks to the following contributors (listed chronologically):

  • Zalan Rajna (@zrajna): bug fixes (#2)
  • Martin Craig (@mcraig-ibme): porting indexed_gzip to Windows (#3)
  • Chris Markiewicz (@effigies): Option to drop file handles (#6)
  • Omer Ozarslan (@ozars): Index import/export (#8)
  • @DarioDaF: Windows overflow bug (#30)
  • Sławomir Zborowski (@szborows): seek_points method (#35), README fixes (#34)

License

indexed_gzip inherits the zlib license, available for perusal in the LICENSE file.

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

indexed_gzip-1.3.3.tar.gz (466.6 kB view details)

Uploaded Source

Built Distributions

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

indexed_gzip-1.3.3-cp39-cp39-manylinux1_x86_64.whl (519.3 kB view details)

Uploaded CPython 3.9

indexed_gzip-1.3.3-cp39-cp39-manylinux1_i686.whl (482.1 kB view details)

Uploaded CPython 3.9

indexed_gzip-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl (530.8 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

indexed_gzip-1.3.3-cp38-cp38-win_amd64.whl (244.9 kB view details)

Uploaded CPython 3.8Windows x86-64

indexed_gzip-1.3.3-cp38-cp38-manylinux1_x86_64.whl (518.1 kB view details)

Uploaded CPython 3.8

indexed_gzip-1.3.3-cp38-cp38-manylinux1_i686.whl (483.3 kB view details)

Uploaded CPython 3.8

indexed_gzip-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl (522.0 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

indexed_gzip-1.3.3-cp37-cp37m-win_amd64.whl (228.7 kB view details)

Uploaded CPython 3.7mWindows x86-64

indexed_gzip-1.3.3-cp37-cp37m-manylinux1_x86_64.whl (566.1 kB view details)

Uploaded CPython 3.7m

indexed_gzip-1.3.3-cp37-cp37m-manylinux1_i686.whl (518.2 kB view details)

Uploaded CPython 3.7m

indexed_gzip-1.3.3-cp37-cp37m-macosx_10_9_x86_64.whl (507.7 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

indexed_gzip-1.3.3-cp36-cp36m-win_amd64.whl (228.0 kB view details)

Uploaded CPython 3.6mWindows x86-64

indexed_gzip-1.3.3-cp36-cp36m-manylinux1_x86_64.whl (565.7 kB view details)

Uploaded CPython 3.6m

indexed_gzip-1.3.3-cp36-cp36m-manylinux1_i686.whl (518.8 kB view details)

Uploaded CPython 3.6m

indexed_gzip-1.3.3-cp36-cp36m-macosx_10_9_x86_64.whl (546.5 kB view details)

Uploaded CPython 3.6mmacOS 10.9+ x86-64

indexed_gzip-1.3.3-cp27-cp27mu-manylinux1_x86_64.whl (535.5 kB view details)

Uploaded CPython 2.7mu

indexed_gzip-1.3.3-cp27-cp27mu-manylinux1_i686.whl (487.7 kB view details)

Uploaded CPython 2.7mu

indexed_gzip-1.3.3-cp27-cp27m-win_amd64.whl (255.7 kB view details)

Uploaded CPython 2.7mWindows x86-64

indexed_gzip-1.3.3-cp27-cp27m-manylinux1_x86_64.whl (535.5 kB view details)

Uploaded CPython 2.7m

indexed_gzip-1.3.3-cp27-cp27m-manylinux1_i686.whl (487.7 kB view details)

Uploaded CPython 2.7m

File details

Details for the file indexed_gzip-1.3.3.tar.gz.

File metadata

  • Download URL: indexed_gzip-1.3.3.tar.gz
  • Upload date:
  • Size: 466.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3.tar.gz
Algorithm Hash digest
SHA256 df81dddfe73478f3c9709ce63bafdfbf40812d6d055308770db5772db1de7230
MD5 dfbe127060266f904ba189be976d8f4d
BLAKE2b-256 4588f49581cb660b364ff86dc83c81beb863c7b28c431cae1bc83410c60775e1

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp39-cp39-manylinux1_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp39-cp39-manylinux1_x86_64.whl
  • Upload date:
  • Size: 519.3 kB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp39-cp39-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 16ffe7ebc45555bd7da29ea1514298f6cdad15fd9ef3ba4c06a06d93c4c00e05
MD5 039af07d2c1b0958fa48fe1243441fd0
BLAKE2b-256 2e5cf7f9242834b84d232d6d104e13af0153d77d422b6ae4af66a1a63fce8b08

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp39-cp39-manylinux1_i686.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp39-cp39-manylinux1_i686.whl
  • Upload date:
  • Size: 482.1 kB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp39-cp39-manylinux1_i686.whl
Algorithm Hash digest
SHA256 05e7150f850f0d2727459cef0ff1f1d302764664c85cb4926852f1c9805b93a6
MD5 3a5638730c5256ba7da61dde7d76b64c
BLAKE2b-256 133fed67ad871b87bd33889285c99419ca007523a6bc2e397bd61698976ea87d

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 530.8 kB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for indexed_gzip-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3634bfb326d4c8090ff4add17af56457ba3ca6b0d1291c8a46a9a128a915f080
MD5 393f001715299fbac3cb78612536418d
BLAKE2b-256 f77d5aafc770d6a623f097dd79cc678f1e3919e18b02471d53459e8c00aadc71

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 244.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5

File hashes

Hashes for indexed_gzip-1.3.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 690c8bd12be6556c19ee9ff2693e7f178bbb90f0c9d0e996874e6c68d6cdf93e
MD5 250c48d9a12798005179c945b3630b5a
BLAKE2b-256 63e9a5dc5636254ebf7bee8851d2c13d5995e0fcbec535d03a9d85b10a0eecdd

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 518.1 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 a7d270a6839e10f8c7d9d43f88d343c30e3719c7fc552cc4445109dc858ca896
MD5 d0a3abea7cdc90fcc6ad6499cd90a731
BLAKE2b-256 46aefc04525d4031bbf5128a3987a536a796d9b8d93949f5400f39a9b18bdf3c

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp38-cp38-manylinux1_i686.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp38-cp38-manylinux1_i686.whl
  • Upload date:
  • Size: 483.3 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp38-cp38-manylinux1_i686.whl
Algorithm Hash digest
SHA256 49d97c4802336b214ff15ee4cbebead04f961ba5ef4bf734e8e15685eefe894c
MD5 39ff1ca714678d9765823d4a8a5e88d0
BLAKE2b-256 abd45abccf112eb9baa5254232a58ff88d43c1c94b05663645979691512174ed

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 522.0 kB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.6

File hashes

Hashes for indexed_gzip-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dac74d76c8d36d20ff73016cabbee17f403d90d80d115cf3c912ff5e374fd5f0
MD5 53982e137841eff87e8f22fd16066dbd
BLAKE2b-256 80e3a122399db4151e1c56cbeb359ae3c8fd51bd064c8287ba3f77b5db380ecf

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 228.7 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.9

File hashes

Hashes for indexed_gzip-1.3.3-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 68e05ef40fc05fdd103953f260a38c71b44721c8b730aee39813dd65608760e6
MD5 488bd8bd3c927f907546b1810be782e6
BLAKE2b-256 64ac16d92c2412d58679a475dbdc5c38a6061c55ed22e724cee1dbbd0a65142c

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 566.1 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 6e1561f587fed5017e78ed4ab6f5de1f12e42c1c1bfd02499d13af824b5fa7d7
MD5 e0a264116cbc2d5e5012522b3f7d7c5b
BLAKE2b-256 3a74d096c7ddee0b48aadf02d0027ac889e36917285eddb004938d85d2a8a73e

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp37-cp37m-manylinux1_i686.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp37-cp37m-manylinux1_i686.whl
  • Upload date:
  • Size: 518.2 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp37-cp37m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 6c298a717c0a673b7625082d85ce4622fa572d6dc35e2b84f7e4e95227b0058d
MD5 ee82c732543b03b5a312ebeb035e840d
BLAKE2b-256 23d35a36e653d09a8555adf84304b9d4c3b1af1d2773620cc2f0d3309924ee5c

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 507.7 kB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.9

File hashes

Hashes for indexed_gzip-1.3.3-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1e1b0fdd2a778da59234e1d32885573aae7d3023bd7fa129379ae0a9fdcd09b9
MD5 e696ad4c73ccf30ea02221826d644c71
BLAKE2b-256 4251234dc0b7a49b2339b18e65db3427b8d5cff73c8881517b74817b826c52fa

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 228.0 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.6.12

File hashes

Hashes for indexed_gzip-1.3.3-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 69ea92ed5d83a9282b8e108968aa15514cdc739917dbf009eb5fad6a50fd1d6a
MD5 670e25d54aec7b4762a4212366d45690
BLAKE2b-256 846c27804835ce72941a681c0f8b16d783d7da946579dd0cb6a0487ff14943d9

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 565.7 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 b27c9b185c047a5336d5aae4f50f3499436ec5986301c8047c30626ca0ef0127
MD5 0cec81b369adff32a09029a29df72d5a
BLAKE2b-256 6acdedadb16d10e428acdb0d179317940ff2335c4a9cf448cb9c5d76a81ee66d

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp36-cp36m-manylinux1_i686.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp36-cp36m-manylinux1_i686.whl
  • Upload date:
  • Size: 518.8 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp36-cp36m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 a2e56a12fa4072bdc71877248c5accfa69ee76e43fad39ca5ad4ab2cbc8ba2b9
MD5 5d83cb1ccc8b79428a1413bd8c736ac8
BLAKE2b-256 f64c50368cee8b9b8da68b8a9ba00088a9eba3ca781232daac9bffefa291e44a

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 546.5 kB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.6.8

File hashes

Hashes for indexed_gzip-1.3.3-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 52dacab4637e1e1d9db02930d83e30f1ac5321a1a02a549bcee4fa138f025d4f
MD5 c222dad6472bb8a229ddc48c5dbd5c00
BLAKE2b-256 318e22db7c954305671c9282e9642aa705150364e303937f104dc1244483cf2f

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp27-cp27mu-manylinux1_x86_64.whl
  • Upload date:
  • Size: 535.5 kB
  • Tags: CPython 2.7mu
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 7787083ff5affd0095f99a5a580f7c01549c401896ad674611ea7f8dd777236a
MD5 fafd8a2b1acd95a22dcdd2b54f3e52b0
BLAKE2b-256 8080f12f455550f66f7155567cefd11b2735c68418bad91a074d143ac8fb53b5

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp27-cp27mu-manylinux1_i686.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp27-cp27mu-manylinux1_i686.whl
  • Upload date:
  • Size: 487.7 kB
  • Tags: CPython 2.7mu
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp27-cp27mu-manylinux1_i686.whl
Algorithm Hash digest
SHA256 141c1343ca7491a73b4d5d2f3268a9b6559e62a45b8fe400f89d894c82af8b2f
MD5 93d8ad384b9e37e89aab98cd1249d6b0
BLAKE2b-256 c91978e8b4cebf99fec26968d5c5902f4ae7673451edd39f21ecfc15557e7b16

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp27-cp27m-win_amd64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp27-cp27m-win_amd64.whl
  • Upload date:
  • Size: 255.7 kB
  • Tags: CPython 2.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.0.0.post20200106 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.18

File hashes

Hashes for indexed_gzip-1.3.3-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 1d47d3eebc70e7db10f011136b3daf8ac5002142c257a838a106dbc9d161c26f
MD5 e570283c63587d4f06dc125291c1438b
BLAKE2b-256 02f3afc74ae1fa1bf90122c75df49b5abe4cf38614d474325f25786b87274849

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp27-cp27m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 535.5 kB
  • Tags: CPython 2.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 5450dc6be1c338b9bc7fc80139935f8db39fe7a728b5b4e85c9c0e7db21d496b
MD5 6ad2afe62221cee4e537ac0d8b9590c5
BLAKE2b-256 51a3e1047bc051c910adc6c515202d6206ef5f2b0fa64a5e0521f5c3d086e712

See more details on using hashes here.

File details

Details for the file indexed_gzip-1.3.3-cp27-cp27m-manylinux1_i686.whl.

File metadata

  • Download URL: indexed_gzip-1.3.3-cp27-cp27m-manylinux1_i686.whl
  • Upload date:
  • Size: 487.7 kB
  • Tags: CPython 2.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.6.1 requests/2.25.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/2.7.17

File hashes

Hashes for indexed_gzip-1.3.3-cp27-cp27m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 8db08c3dc8cf088193e7674c6c28c114e57428709f1af9939ad1d984e63bd0ca
MD5 64a66d4a6807fdda192069ff50145689
BLAKE2b-256 9a7c0e14e916f28e146a588f4e5f5f7ce7c16bbe20ff230b3f6af279f662b794

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