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.2

PyPI version PyPI - Python Version PyPI - Platforms License: MIT

The table below shows a simple example where RGC beats AC by 15% and even outperforms strong general-purpose compressors like Brotli.

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

Method Compressed size Bits per byte Compared to RGC Time
RGC 224 071 bytes 1.7 - 0.01 s
TurboRC, rcc2senc() 237 380 bytes 1.8 +6 % worse 0.03 s
Brotli, quality=11 245 358 bytes 1.9 +10 % worse 2 s
Zstd, quality=22 257 360 bytes 2.0 +15 % worse 0.35 s
AC, 8-bit 261 695 bytes 2.0 +17 % worse -
Brotli, quality=9 280 777 bytes 2.1 +25 % worse 0.08 s
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:

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.2.tar.gz (13.2 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.2-cp313-cp313-win_amd64.whl (18.8 kB view details)

Uploaded CPython 3.13Windows x86-64

rgclib-0.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (31.3 kB view details)

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

rgclib-0.1.2-cp313-cp313-macosx_11_0_arm64.whl (17.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rgclib-0.1.2-cp313-cp313-macosx_10_13_x86_64.whl (18.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

rgclib-0.1.2-cp312-cp312-win_amd64.whl (18.8 kB view details)

Uploaded CPython 3.12Windows x86-64

rgclib-0.1.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (31.4 kB view details)

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

rgclib-0.1.2-cp312-cp312-macosx_11_0_arm64.whl (17.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rgclib-0.1.2-cp312-cp312-macosx_10_13_x86_64.whl (18.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

rgclib-0.1.2-cp311-cp311-win_amd64.whl (18.8 kB view details)

Uploaded CPython 3.11Windows x86-64

rgclib-0.1.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (31.2 kB view details)

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

rgclib-0.1.2-cp311-cp311-macosx_11_0_arm64.whl (17.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

rgclib-0.1.2-cp311-cp311-macosx_10_9_x86_64.whl (16.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

rgclib-0.1.2-cp310-cp310-win_amd64.whl (18.8 kB view details)

Uploaded CPython 3.10Windows x86-64

rgclib-0.1.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (31.2 kB view details)

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

rgclib-0.1.2-cp310-cp310-macosx_11_0_arm64.whl (17.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

rgclib-0.1.2-cp310-cp310-macosx_10_9_x86_64.whl (16.9 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

rgclib-0.1.2-cp39-cp39-win_amd64.whl (18.8 kB view details)

Uploaded CPython 3.9Windows x86-64

rgclib-0.1.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (31.1 kB view details)

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

rgclib-0.1.2-cp39-cp39-macosx_11_0_arm64.whl (17.9 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

rgclib-0.1.2-cp39-cp39-macosx_10_9_x86_64.whl (16.9 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: rgclib-0.1.2.tar.gz
  • Upload date:
  • Size: 13.2 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.2.tar.gz
Algorithm Hash digest
SHA256 152b81388ba264cee68bd4f429385380d564109f555fcfafa2f9cdc056c26590
MD5 4cf6b670193b15dc118d5190a8210e99
BLAKE2b-256 98e1ee8513d0903bf1a4404b18ce640898ac48aa9ab577fcbc178adcd5a40122

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2.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.2-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.2-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 18.8 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.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a2b9b3b6465ac56308bf3df32ce0cf3bd1b46df36fef48ac581fc9b86865879b
MD5 0afa08a1465a4f6342214d80fdc620ab
BLAKE2b-256 8145bb9c4eaab2a5cdb17693d0147d96839a189264900e452c394cad6c542abf

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-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.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ce2322f8903321b5ba0366603ccbd1ee153941be8667b421b854f7d7d798cb7d
MD5 f4166f276c69d587eead29589ded6972
BLAKE2b-256 b87915d76e54a4217ace77e25509b0c9edcf73555d2a055843e6c5b9aa90acf5

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b212cb71281e3923f91a8c76e74b4c7c08fe4f4bcdcef14395161d60126ddd14
MD5 a65948cb33f4ec161f48799ced38e396
BLAKE2b-256 a9934090f96c4e4013810871c4b6e7ccfad48a12304f12d5e737678ece8a8bbf

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 df4dd6a87fb43cc26bdda5b6b73b4f57f8d6f78c57a3a0c5035635daac9e5f86
MD5 743bff383229b65eff0e9b4faff64291
BLAKE2b-256 a931b20d1224e298eac0b69708d862c7db4a5e31b7708ea046953d738712890a

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.2-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 18.8 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.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b88a95bcfdc1fd28db1971a70c087c2cab2c5abba780e2758868c23f2728c7d6
MD5 3dd97a460ab47a9563e0bc5f80e5ffba
BLAKE2b-256 17ac8adb27efa694f6f0a1ff86b7c57aa019c085357ccc899e958a47e588a21e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-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.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 744e119b14b2290248a2edf7b266248b44ebf91025ebf53ecaf5febdfc699080
MD5 812589cb06d553b16512e83a8c794585
BLAKE2b-256 6da49afbf5ce32f9e0a494dc6f41954aa2065a7ea86c734b0903c017bf87f2bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a90e6ca21f2a0f65caf39b7e9054ef09f9b015781fe1769f85160b99da50cb3d
MD5 f9328f2ad9d3c4286c794351403f9dce
BLAKE2b-256 7dbf0bf9acd1152a714bd66d4996545137325306525405db1da6bd296654e9eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 c03dbd95a168d16e9500836ba1459847869c66d45e65549c7c1fdf9d144be2fa
MD5 1d4a4f0ff00db47d3db64219ac58a18a
BLAKE2b-256 9efae4c5a82978e1a0337743bba4a4a8599cd4925cdb7b0a33b62964f4b68583

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.2-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 18.8 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.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e32993834172615405127d4b1bf78d8491b6c5ee53bfaed09051204c3b31bc72
MD5 d904fe6748f8c993b69a0d0d09b4c98a
BLAKE2b-256 737ebf6c7854e99b6019b453ed778d876b57c28634395e30863e3f1b540e0d63

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-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.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ea817bec3b1b368bd326cee0b374d5dafd88839c89047bcbff5a58c2b18a5c51
MD5 4fae6aa3ccd170bc48966cceba035fe3
BLAKE2b-256 143694b1d64efd6231a70a9582e3a7dec8ccea9612c9b3ed0f0940508ce5fa73

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 670debcf154143ee6ab98d7e12154d41a7fb09f463dca363a383d023612c535d
MD5 634a1bf5aa8be041b5cdfbc5b7320d8a
BLAKE2b-256 1623564a6ff9599c2120b5e351a2f6c2dccef891410efcca24bd4de6225eac23

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 33fac2147b6377b3a1d43d71bcbb12b06ade475d9f9718d4e34557083b5f7f47
MD5 5c3b3176a3c68e21a48862ef86fd2a17
BLAKE2b-256 6b606a365d71f0f29ccfa1f6a732d71fe22e95abfec2a959d01f218de9eee45b

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.2-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 18.8 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.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 43bb7d58d9d14904767559eb9e2fb8adb5341760ddcdd4b89d7b5beabde4f048
MD5 f31131817a0a1ecbb40a814352b1679f
BLAKE2b-256 57ff85b733f05149a2e85b9b74c37a743b65917b2ea02ba71686fb417dce2e0c

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-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.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 311754093f82df14aae806f4630429d54962028e4c8a0c4a67a71fc8a7207a30
MD5 debc3f214cfc8847ebc65113e3b2b01d
BLAKE2b-256 95deeab5240850c00751b2c28b7d63c0bac5fcc00a6238c4ad963e4c1fc1ba91

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 07c0f5da21001492772bbf11837f46e1973a6bbd674b94ea07d042b2bc57d558
MD5 c7e193c116a73416aef80bb8dc510d74
BLAKE2b-256 dc6c1f7ca4f7f09e6e5d05c6ec2feaae78404fd949e15d2b1d0cdc1ae7d6e387

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5afec95d59859595f224cebc366fdab5e1700813e19c956ce4bf7907d15e9f75
MD5 6491bda08bd924e99f6f4df21898b624
BLAKE2b-256 466a3f094a1c3ddf631d5a54721b4298cdf4bcd5812b08024c005687e459c19a

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: rgclib-0.1.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 18.8 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.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 d9f0ec18fb7c9184f01a552fe6a4a7313cea7a695d45e6de5421468bca45b912
MD5 02561bf8300d6d811329006cc17edc71
BLAKE2b-256 3f932c6d1c7d7ff3a5bab9edbaedc7d4806f2ab2e7246149a91195001530e0ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-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.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 69ce13a90cff2be709c65b45dfb8cf31def4fab8a173ce32805a7d32ffd636e5
MD5 64f774729c0b53afc47df051dd34fd14
BLAKE2b-256 42d524f95bdd66a1cb7d90da1c8d45b1d5dca5d105d531eade2b992652281fb5

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 83001cd0663d5e14a330746ac5b87a528ab11d2318b557a9ba8ec56f1d8db90e
MD5 d781ff462ba884e87312723c53e0abe0
BLAKE2b-256 ba9f1eeb8ff5e40c0506249fe846d10c3adcf0bbb22ea87ecdcb7f5f4e70a0f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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.2-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for rgclib-0.1.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 02a1c0ff58e08d07c350af52b64b93e3e26dc38848d5245e31565559a3ed4f60
MD5 0e2b1352dc780ccfe57b63abefcd04ff
BLAKE2b-256 0a9e00693073a4cb192086d8ba44e828942ced182f35be90d38cee0a9f437ae9

See more details on using hashes here.

Provenance

The following attestation bundles were made for rgclib-0.1.2-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