Skip to main content

Python wrapper for the C implementation of Recursive Group Coding (RGC)

Project description

Recursive Group Coding (RGC) is an entropy coding algorithm, an alternative to Huffman and Arithmetic Coding (AC). Its key advantage is natural adaptation to the alphabet size of the input data. For large alphabets, RGC can easily deliver a better compression ratio than any other entropy coder, while still running about twice as fast as the simplest static 8-bit AC.

Tiny C library and Python wrapper for the C implementation | v0.1.0 | MIT license

The table below shows a simple example where RGC beats AC by 15% and even outperforms dictionary-based compressors such as WinZip and WinRar.

Simple benchmark (rgc_demo.c, compression of tst.dat, 1 MB)

Method Compressed size Bits per byte Compared to RGC
RGC 224 071 bytes 1.7 -
AC 261 695 bytes 2.0 +17 % worse
WinZip 284 219 bytes 2.2 +27 % worse
WinRar 308 699 bytes 2.4 +38 % worse

The file tst.dat contains quantized DCT coefficients of 32x32 image blocks and is included in the repository, so anyone can reproduce the result in a few seconds. The source image tst.png and the preparation script prep.py are also included.

Because of recursion, RGC handles 1024-byte symbols as naturally as ordinary 8-bit symbols. This is exactly the kind of data where RGC shows its full power, while AC, Huffman coding, and even modern general-purpose compressors fall far behind.

How RGC works

The flowchart below shows the main idea of RGC. The algorithm is extremely simple, but very powerful. For full details, see the paper and source code.

  1. Count frequencies of all 8-bit symbols (0...255) in the input data.
  2. Divide the 256 symbols into no more than 16 groups with similar frequencies. Each group size is a power of two (2, 4, 8, ...). Because frequencies inside a group are not exactly equal, this grouping may increase the average code length by about 1-2%.
  3. Split each symbol into a prefix (group ID) and a suffix (its index inside the group). As a result, the text is split into two streams: prefixes and suffixes.
  4. The suffix length depends on the group size. It ranges from 1 bit for a group of 2 symbols up to 8 bits for a group of 256 symbols. For a group containing only 1 symbol, no suffix is needed. Suffixes have uniform distribution and are not compressible, so the suffix stream is written directly to the output together with the group symbol list.
  5. Since the number of groups does not exceed 16, each prefix fits into 4 bits. This makes it possible to merge neighboring prefixes pairwise: (prefix1 << 4) | prefix2.
  6. After pairwise merging of the prefix stream, we get a new text with length twice smaller than the original text. RGC then applies the same procedure recursively to this new text.

When RGC is strong, and what are its limitations?

RGC usually provides better compression than AC when used as the final entropy coder in a compression pipeline, especially when neighboring data elements still retain some statistical dependence. For example, in compression of time stamps for traffic monitoring, the pipeline BWT + DC (Distance Coding) + RGC provides about 20% better compression than BWT + DC + AC. In JPEG compression, RGC can replace the whole compression pipeline after quantization, providing both better compression (about 5%) and higher speed.

RGC is also very simple to implement and very fast. With moderate optimization, it runs about twice as fast as a range coder.

At the same time, in its basic form RGC needs statistically homogeneous data to work efficiently. On purely random 8-bit data, RGC will usually lose to AC by about 1-2%. RGC is also not suitable for very small files (a few kilobytes), where the group symbol lists become too large relative to the compressed data.

Installation and usage examples

The C/C++ library consists of only two files: rgc.c and rgc.h. Just copy them into your project and compile them together with your code.

rgclib is a Python wrapper for the C implementation of RGC.

Install from PyPI:

pip install rgclib

Install directly from GitHub:

pip install git+https://github.com/mykola-ponomarenko-ua/rgc.git

Minimal Python usage:

import rgc

compressed = rgc.compress(data)
decoded = rgc.decompress(compressed)

Minimal usage examples for both C and Python are included in the repository and reproduce the benchmark result of 224071 bytes for tst.dat.

C example:

  • examples/rgc_demo.c

Compile and run from examples/ on Windows with MSVC:

cl /O2 /MD rgc_demo.c
rgc_demo.exe

Python example:

  • examples/rgc_demo.py

Run from examples/:

python rgc_demo.py

The repository also contains an illustrative script explaining how the test file tst.dat is generated from the image tst.png:

  • examples/prep.py

References

N. Ponomarenko, V. Lukin, K. Egiazarian, J. Astola, Fast recursive coding based on grouping of Symbols, Telecommunications and Radio Engineering, Vol. 68, No. 20, 2009, pp. 1857-1863.

PDF in the repository:

  • paper/recursive_group_coding_2009.pdf

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

rgclib-0.1.0.tar.gz (12.6 kB view details)

Uploaded Source

Built Distributions

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

rgclib-0.1.0-cp313-cp313-win_amd64.whl (18.5 kB view details)

Uploaded CPython 3.13Windows x86-64

rgclib-0.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (31.0 kB view details)

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

rgclib-0.1.0-cp313-cp313-macosx_11_0_arm64.whl (17.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rgclib-0.1.0-cp313-cp313-macosx_10_13_x86_64.whl (17.9 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

rgclib-0.1.0-cp312-cp312-win_amd64.whl (18.5 kB view details)

Uploaded CPython 3.12Windows x86-64

rgclib-0.1.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (31.1 kB view details)

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

rgclib-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (17.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rgclib-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl (17.9 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

rgclib-0.1.0-cp311-cp311-win_amd64.whl (18.5 kB view details)

Uploaded CPython 3.11Windows x86-64

rgclib-0.1.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (31.0 kB view details)

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

rgclib-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (17.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rgclib-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl (16.6 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

rgclib-0.1.0-cp310-cp310-win_amd64.whl (18.5 kB view details)

Uploaded CPython 3.10Windows x86-64

rgclib-0.1.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (30.9 kB view details)

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

rgclib-0.1.0-cp310-cp310-macosx_11_0_arm64.whl (17.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

rgclib-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl (16.6 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

rgclib-0.1.0-cp39-cp39-win_amd64.whl (18.5 kB view details)

Uploaded CPython 3.9Windows x86-64

rgclib-0.1.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (30.8 kB view details)

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

rgclib-0.1.0-cp39-cp39-macosx_11_0_arm64.whl (17.6 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

rgclib-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl (16.6 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file rgclib-0.1.0.tar.gz.

File metadata

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

File hashes

Hashes for rgclib-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2d612ee9c95d79416b9c29099c766922f3832cc8fa10618fd0704154a89706b3
MD5 a9a3f9f872cfbcc4c741485eaae21334
BLAKE2b-256 191be9e75ca4225504ec8e5ca3ee2609f482e3c13b997c466c4a6d1465c0ad48

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0.tar.gz:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 18.5 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 rgclib-0.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 64135979f21c57a2ff6797d439ce3b6e795e9e20dae92b9714995dc62cba7fd6
MD5 8bbc134412d8ab1654dd4fb0f78c71dc
BLAKE2b-256 afbd4be915c25e450055a16b7eb3e1d0f9a1d486f30e484b2582b4dd863b315c

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 602bdf4a6db76729f94d1e0fa2f411f88e0a49be6abab6e9f7e10866f1ccd72f
MD5 8fe97c601417f4825029dc8231a5be2f
BLAKE2b-256 d849ff476d8a861aa7b9a466fcfef2d88d938c49008061aa838feb7c7763e1f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3760b07c1ad66e4a789298f4ae706153780b7f17a63de901b710f1e704236882
MD5 0a8d9ec8bb97e1761123639708fafefc
BLAKE2b-256 ad7bd3a68bb83e4b55f800958ac1425e434eb5d6f24fc8c75c1c8f477b42b2da

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 cb8246d8d8bd5d690505906551ffb5b69d1dda3cd7b43e5ffacd9bd399895be6
MD5 964fce42c989372a08b092e13eedc43d
BLAKE2b-256 b67003a70f9cab6f976e93002aa454b07c44f3b7fa18e712c88648573ead9c69

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 18.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 rgclib-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6a6f2a539d490605cabad1eafc7f30c25a332dfd62e6abc63d68cc1272833050
MD5 bc95b589ec37dbea6a0903c16fd8344a
BLAKE2b-256 2aad350965d02e55cdad893dfe4d073477a11d86278c353fa46b7a236180b2f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2c642c7627855351cf3b629e4e1210bde7dd6b5743b3d2ef3bf52974ecc90e09
MD5 c637c5d9800ac2bd433d35f4098f749f
BLAKE2b-256 32d496d30994c5666ab48ca64635d8f08d89df2928238721bba988141ffca7d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c02615beb2bc53fa80f9386bfefb52fb13ebce6a1b917d9b0c14e12a7cf6a6ca
MD5 a04846eb01fecd27c05a3e885c9e661d
BLAKE2b-256 a3cdb39e46fb5181c84ac8c7fde8ace34193fd41e40276f929f5f529736e63d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 100e874a8ff8f11281ffc4d23121f578a9c9bb7d99c35c817c9fb76f3beff115
MD5 ea445d7472dbfd26ab72bb4cb17feb08
BLAKE2b-256 81ff24e2a485950a68618196138742b4496e95d46ecfb2b9797096f9e5739b48

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 18.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 rgclib-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9dab2bce6e6c1c88173fbfdecc9d53795c3f23b2e742c3fe020602e99cee971d
MD5 3a4ab692ae8c648c25b8a4a11460fb64
BLAKE2b-256 603d768513463397b8f87c43f277e06e4aef1e89fe7c682a0ebc9a830cbdb8ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fdbb5a1ffe448194f438870adf3205323ba6abd9704e10c5cec426fb6b22954b
MD5 5ecb7a08e372f6f155ce6730cd441757
BLAKE2b-256 83a4ef635ceaa09a69e631dbb048ccdda7cdc236c54025e6056ccf451e5b7e7d

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c3035d3efb842936b2f47af6d062816e8dcd3a9b647a667008d3ec2c91845a05
MD5 03fa4f7c32f15fd4f4f491e9cf31d66d
BLAKE2b-256 fa7cc79ad6a627fe1121fc8662f3addb426a3325cbe63a788dc81be0efa2fb09

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9938d373086e2b24498c7c124ff92028ab9bc0b03e706560d00f170bd5d6a153
MD5 ca3061fd29c658b70341ead32982d599
BLAKE2b-256 efdd1c127df783ebbe544727d7d9bacc811d6fbb85093c5624ebf2f31ddf419d

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 18.5 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 rgclib-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d6545ecdd00216c29453e568bf0f988196234beef7ad5afb77c8852ee6b9ae3f
MD5 660af179832f65ae1027bb9a4914fbbf
BLAKE2b-256 218c6f362f47790270bcba2fe5c56b4c2c0bffed3ca02d5b2d2231533f208d1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp310-cp310-win_amd64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 27523baa161616ea1e4315ab7a5feeeb3975bf56913e5db83e2b6646ab1c20ca
MD5 6d947ad4a8d69a6950363c953e548213
BLAKE2b-256 00d76ff9b1ce40c73671204de859148e34fa150bc46cdbd9c68c7dd5e1d50e93

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3cf2895a19ed56658ca274b8e86e777778a0d9a7ad6c992174830e5fffe88245
MD5 f97bd06e0f8a0a73cbd025ead3fa7fa4
BLAKE2b-256 0dd52b6ee64af32fa27b16450f7d5bb0ca91d5632e783e533f24226bf1422e05

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ce73fe0d2b64c171efe67451e3f8b9a1091fefb531ecad61583f2e1e2c03fa41
MD5 a94035f02cbcd388ccd629499b28f14b
BLAKE2b-256 dcfc8e4e9e13a8cea779edc767cf1023fb36825bc7fe1eed95e1a18927126d37

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 18.5 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 rgclib-0.1.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6bc223721e386012d8269e7c57aca61537dc25e77cb45272fdbc46f2dff0c6b9
MD5 615caaaaa97b259dc61ac102d136687e
BLAKE2b-256 b24975af874b02e3382f7f4f10ed002db70af738791bd214d64afabc4e449f38

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp39-cp39-win_amd64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 671da8b5b40859e331d44795458567ec2b31d947b5401a220094898d9e624264
MD5 a4ae590b9a1684a4bd1ffc259fda3db8
BLAKE2b-256 86d044b09176d3efc3a8f7778dd67bbb3566b12486f4d63a0656fc0741163e1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9e8a5ae40a5709ea3eb11cb3e23c24e8861ed4c7add12d5db7668c632f04c742
MD5 c30e6c29ccd24a8c815aabfc0b12ea76
BLAKE2b-256 f38dce61dd57e5a3d403781318f745d929dba2934325eb58bed2e349d030804e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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

File details

Details for the file rgclib-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6ca4dc983eac813709f25be553e77e089bf761cbc708f9bc6c3aca280e489df6
MD5 65977dcbb9181d6a7d5edc2e42433328
BLAKE2b-256 9bc08a2b37c12fb729f93350290ea60b15b37e721f918809af03e99f4a8aad5e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: publish.yml on mykola-ponomarenko-ua/rgc

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