Skip to main content

msglc --- (de)serialize json objects with lazy/partial loading containers using msgpack or cbor

DeepWiki codecov PyPI

What

msglc is a Python library that provides a way to serialize and deserialize json objects with lazy/partial loading containers using msgpack or cbor as the serialization format.

It can be used in environments that use msgpack/cbor to store/exchange data that is larger than a few MBs if any of the followings hold.

  1. After cold storage, each retrieval only accesses part of the stored data.
  2. Cannot afford to decode the whole file due to memory limitation, performance consideration, etc.
  3. Want to combine encoded data into a single blob without decoding and re-encoding the same piece of data.

Quick Start

The supported objects need to be json compatible, including dict, list, str, int, float, bool and None. Extra types may be supported as well but not guaranteed.

Serialization

Use dump to serialize a json object to a file.

from msglc import dump

data = {"a": [1, 2, 3], "b": {"c": 4, "d": 5, "e": [0x221548313] * 10}}
dump("data.msg", data)

Use backend='python' or backend='rust' to specify the backend for serialization. By default, msgpack is used as the serialization format, to use cbor, use the corresponding packer.

from msglc import dump
from msglc.codec import CBORCodec

data = {"a": [1, 2, 3], "b": {"c": 4, "d": 5, "e": [0x221548313] * 10}}
dump("data.msg", data, backend="rust", packer=CBORCodec)

Use combine to combine several serialized files together. The combined files can be further combined.

Combine as dict

from msglc import dump, combine, FileInfo
from msglc.reader import LazyReader

dump("dict.msg", {str(v): v for v in range(1000)})
dump("list.msg", [float(v) for v in range(1000)])

combine("combined.msg", [FileInfo("dict.msg", "dict"), FileInfo("list.msg", "list")])
# support recursively combining files
# ...

# the combined file uses a dict layout
# { 'dict' : {'1':1,'2':2,...}, 'list' : [1.0,2.0,3.0,...] }
# so one can read it as follows, details in coming section
with LazyReader("combined.msg") as reader:
    assert reader["dict/101"] == 101  # also reader['dict'][101]
    assert reader["list/101"] == 101.0  # also reader['list'][101]

Combine as list

from msglc import dump, combine, FileInfo
from msglc.reader import LazyReader

dump("dict.msg", {str(v): v for v in range(1000)})
dump("list.msg", [float(v) for v in range(1000)])

combine("combined.msg", [FileInfo("dict.msg"), FileInfo("list.msg")])
# support recursively combining files
# ...

# the combined file uses a list layout
# [ {'1':1,'2':2,...}, [1.0,2.0,3.0,...] ]
# so one can read it as follows, details in coming section
with LazyReader("combined.msg") as reader:
    assert reader["0/101"] == 101  # also reader[0][101]
    assert reader["1/101"] == 101.0  # also reader[1][101]

Deserialization

Use LazyReader to read a file.

from msglc.reader import LazyReader, to_obj

with LazyReader("data.msg") as reader:
    data = reader.read()  # return a LazyDict, LazyList, dict, list or primitive value
    data = reader["b/c"]  # subscriptable if the actual data is subscriptable
    # data = reader[2:]  # also support slicing if its underlying data is list compatible
    data = reader.read("b/c")  # or provide a path to visit a particular node
    print(data)  # 4
    b_dict = reader.read("b")
    print(b_dict.__class__)  # <class 'msglc.reader.LazyDict'>
    for k, v in b_dict.items():  # dict compatible
        if k != "e":
            print(k, v)  # c 4, d 5
    b_json = to_obj(b_dict)  # ensure plain dict

Please note all data operations shall be performed inside the with block.

All data is lazily loaded, use to_obj() function to ensure it is properly read, especially when the data goes out of the with block.

If there is no need to cache the read data, pass the argument cached=False to the initializer.

from msglc.reader import LazyReader, to_obj

with LazyReader("data.msg", cached=False) as reader:
    data = to_obj(reader.read("some/path/to/the/target"))

Why

The msgpack/cbor specification and the corresponding Python library msgpack/cbor2 provide a tool to serialize json objects into binary data. However, the encoded data has to be fully decoded to reveal what is inside. This becomes an issue when the data is large and only a small part of it is needed.

msglc provides an enhanced format to embed structure information into the encoded data. This allows lazy and partial decoding of the data of interest, which can be a significant performance improvement.

How

Overview

msglc packs tables of contents and data into a single binary blob. The detailed layout can be shown as follows.

#####################################################################
# magic bytes # 20 bytes # encoded data # encoded table of contents #
#####################################################################
  1. The magic bytes are used to identify the format of the file.
  2. The 20 bytes are used to store the start position and the length of the encoded table of contents.
  3. The encoded data is the original msgpack encoded data.

The table of contents is placed at the end of the file to allow direct writing of the encoded data to the file. This makes the memory footprint small.

Buffering

One can configure the buffer size for reading and writing.

from msglc.config import configure

configure(write_buffer_size=2**23)
configure(read_buffer_size=2**16)

Combining multiple files into a single one requires copying data from one file to another. Adjust copy_chunk_size to control memory footprint.

from msglc.config import configure

configure(copy_chunk_size=2**24)  # 16 MB

Table of Contents

There are two types of containers in json objects: array and object. They correspond to list and dict in Python, respectively.

The table of contents mimics the structure of the original json object. However, only containers that exceed a certain size are included in the table of contents. This size is configurable and can be often set to the multiple of the block size of the storage system.

from msglc.config import configure

configure(small_obj_optimization_threshold=2**20)

The above configuration assigns a threshold of 1 MB, containers larger than 1 MB will be indexed in the table of contents. To achieve optimal performance, one shall configure this value according to the underlying file system.

The basic structure of the table of contents of any object is a dict with two keys: t (toc) and p (position). The t field only exists when the object is a sufficiently large container.

If all the elements in the container are small, the t field will also be omitted.

For the purpose of demonstration, the size threshold is set to 2 bytes in the following examples.

# an integer is not a container
data = 2154848
toc = {"p": [0, 5]}

# a string is not a container
data = "a string"
toc = {"p": [5, 14]}

# the inner lists contain small elements, so the `t` field is omitted
# the outer list is larger than 2 bytes, so the `t` field is included
data = [[1, 1], [2, 2, 2, 2, 2]]
toc = {"t": [{"p": [15, 18]}, {"p": [18, 24]}], "p": [14, 24]}

# the outer dict is larger than 2 bytes, so the `t` field is included
# the `b` field is not a container
# the `aa` field is a container, but all its elements are small, so the `t` field is omitted
data = {"a": {"aa": [2, 2, 2, 2, 2, 2, 2, 2, 2, 2]}, "b": 2}
toc = {
    "t": {"a": {"t": {"aa": {"p": [31, 42]}}, "p": [27, 42]}, "b": {"p": [44, 45]}},
    "p": [24, 45],
}

Due to the presence of the size threshold, the table of contents only requires a small amount of extra space.

Reading

The table of contents is read first. The actual data is represented by LazyDict and LazyList classes, which have similar interfaces to the original dict and list classes in Python.

As long as the table of contents contains the t field, no actual data is read. Each piece of data is read only when it is accessed, and it is cached for future use. Thus, the data is read lazily and will only be read once (unless fast loading is enabled).

Fast Loading

There are two ways to read a container into memory:

  1. Read the entire container into memory.
  2. Read each element of the container into memory one by one.

The first way only requires one system call, but data may be repeatedly read if some of its children have been read before. The second way requires multiple system calls, but it ensures that each piece of data is read only once. Depending on various factors, one may be faster than the other.

Fast loading is a feature that allows the entire data to be read into memory at once. This helps to avoid issuing multiple system calls to read the data, which can be slow if the latency is high.

from msglc.config import configure

configure(fast_loading=True)

One shall also configure the threshold for fast loading.

from msglc.config import configure

configure(fast_loading_threshold=0.5)

The threshold is a fraction between 0 and 1. The above 0.5 means if more than half of the children of a container have been read already, to_obj will use the second way to read the whole container. Otherwise, it will use the first way.

Detection of Long List with Small Elements

Longs lists with small elements, such as integers and floats, can be further optimized by grouping elements into blocks that are of the size of small_obj_optimization_threshold so that small reads can be avoided.

Set a trivial_size to the desired bytes to identify those long lists. For example, the following sets it to 10 bytes, long lists of integers and floats will be grouped into blocks. 64-bit integers and doubles require 8 bytes (data) + 1 byte (type) = 9 bytes.

from msglc.config import configure

configure(trivial_size=10)

Disable GC

To improve performance, gc can be disabled during (de)serialization. It is controlled by a global counter, as long as there is one active writer/reader, gc will stay disabled.

from msglc.config import configure

configure(disable_gc=True)

Default Values

from dataclasses import dataclass


@dataclass
class Config:
    small_obj_optimization_threshold: int = 2**13  # 8KB
    write_buffer_size: int = 2**23  # 8MB
    read_buffer_size: int = 2**16  # 64KB
    fast_loading: bool = True
    fast_loading_threshold: float = 0.3
    trivial_size: int = 20
    disable_gc: bool = False
    simple_repr: bool = True
    copy_chunk_size: int = 2**24  # 16MB
    numpy_encoder: bool = False
    numpy_fast_int_pack: bool = False

Development Environment

A working rust environment is required. Install it following the official guide here.

Once rust is installed, run the following command inside a Python environment.

pip install maturin
maturin develop

Alternatively, use the following.

pip install -e ".[all]"

Not all optional dependencies are universally available, some may not be available on platforms other than CPython.

Metadata

Release files for msglc 260825

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for msglc 260825
File Size Uploaded
msglc-260825.tar.gz 47.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for msglc 260825
File
msglc-260825-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.11 PyPy 3.11 7.3 Linux glibc 2.17+ x86-64 Details
msglc-260825-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl PyPy 3.11 PyPy 3.11 7.3 Linux glibc 2.17+ ARM64 Details
msglc-260825-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64 Details
msglc-260825-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.15 CPython 3.15 Linux glibc 2.17+ x86-64 Details
msglc-260825-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Details
msglc-260825-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Details
msglc-260825-cp314-cp314-win_arm64.whl CPython 3.14 CPython 3.14 Windows ARM64 Details
msglc-260825-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
msglc-260825-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64 Details
msglc-260825-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64 Details
msglc-260825-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
msglc-260825-cp314-cp314-macosx_10_12_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.12+ x86-64 Details
msglc-260825-cp313-cp313-win_arm64.whl CPython 3.13 CPython 3.13 Windows ARM64 Details
msglc-260825-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
msglc-260825-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
msglc-260825-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64 Details
msglc-260825-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
msglc-260825-cp313-cp313-macosx_10_12_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.12+ x86-64 Details
msglc-260825-cp312-cp312-win_arm64.whl CPython 3.12 CPython 3.12 Windows ARM64 Details
msglc-260825-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
msglc-260825-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
msglc-260825-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details
msglc-260825-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
msglc-260825-cp312-cp312-macosx_10_12_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.12+ x86-64 Details
msglc-260825-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
msglc-260825-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
msglc-260825-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details
msglc-260825-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
msglc-260825-cp311-cp311-macosx_10_12_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.12+ x86-64 Details
msglc-260825-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
msglc-260825-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
msglc-260825-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details

Total release size: 9.4 MB

Release files / msglc-260825.tar.gz

Download URL msglc-260825.tar.gz
Size 47.2 kB
Tags Source
SHA-256 checksum
How to use checksums
5046be66c8e0bd09c0616cf6494cd3b03c6e7cb4980fd60c6ce23735b908336c
BLAKE2b-256 checksum
How to use checksums
13a214ac23c20a3b457cf2691dc79f0a812aad85bee0ca7173469c9b0dc116a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 342.0 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.11 PyPy 3.11 7.3
SHA-256 checksum
How to use checksums
867ecb994ac088d3b733bdc312d69263f778f95589d431f001b3907f012d1238
BLAKE2b-256 checksum
How to use checksums
436e150364bd5160e57063e64fbec3e27908085a4a0ce9de9b2dae7228e57aca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL msglc-260825-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 335.7 kB
Tags Linux glibc 2.17+ ARM64 PyPy 3.11 PyPy 3.11 7.3
SHA-256 checksum
How to use checksums
baceb3a30320e813c5b1abd4b7aad7730a660e204c5721881406fd81a425b0d8
BLAKE2b-256 checksum
How to use checksums
b216ddfca75c8418cc984ae1f779acca77904fb1426b8c9af1eb470cf06a1eb4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 334.4 kB
Tags CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
9d7ecd9d991425271a3f14a8e662c389be7583c55cc8c9a634962a09fd124a6d
BLAKE2b-256 checksum
How to use checksums
2c079e199571b248ca3926f7300e7f1eb5e0165364cfc2524482df1934077b4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 333.8 kB
Tags CPython 3.15 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
97f61c3add5c76612ca5c215533e82b554205fc081aac509d976bbbfb4c88f60
BLAKE2b-256 checksum
How to use checksums
402a2e054e1d9978f2914901a656a4abd9204c336ce9d8150596a7049a0a6266
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 333.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
05c0975e527670c775e0033f4e004af7ff73f52773904c38d87fa3e910722027
BLAKE2b-256 checksum
How to use checksums
472bb9934cbeb9974f12ec628174ca5838be96a4e766416ea3e928e0d474e446
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL msglc-260825-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 327.4 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
e355878616e80efbc347b0f2bf22b5a8ee3d627a496af62b64e398b98d15424d
BLAKE2b-256 checksum
How to use checksums
8861bf42ad912bea8be34573c894e272b14a536e55af4ec15412b3a71f039d7b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp314-cp314-win_arm64.whl

Download URL msglc-260825-cp314-cp314-win_arm64.whl
Size 194.3 kB
Tags CPython 3.14 Windows ARM64
SHA-256 checksum
How to use checksums
4d242d0874f6bec9d33e7d9b5957eb2fa1d2462f6fffa45d60760bb3f0f8a53b
BLAKE2b-256 checksum
How to use checksums
9db3636a49d134947aa6737d3bde2536099811cf031d6d38bb2cfd1667a365f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp314-cp314-win_amd64.whl

Download URL msglc-260825-cp314-cp314-win_amd64.whl
Size 196.4 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
10c1c267c7ce86489054816e358c0cf0b47473b7c7d22d0e609dbcf3a5414453
BLAKE2b-256 checksum
How to use checksums
3fcfab389888b724b06238d07066763cd0eb7955a1791058d5140bf43456b721
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 333.5 kB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
a9a3f03d66aef89f06a8f1c6aaa34a3f62ad3d5e1a9fd63e064fa2b4462379f4
BLAKE2b-256 checksum
How to use checksums
aea21d934a86b37eb2872eabcc761d7c12cc3483f2af867aae143652e225a289
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL msglc-260825-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 327.7 kB
Tags CPython 3.14 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
554568677c030bf8d120882403c9823667ecd63ad244c00184f0d36dee225ef4
BLAKE2b-256 checksum
How to use checksums
e4764aa156d58e4f97b384fd4b669e131234bae342f52f653c8ee5824bcbddf5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp314-cp314-macosx_11_0_arm64.whl

Download URL msglc-260825-cp314-cp314-macosx_11_0_arm64.whl
Size 300.1 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e9e46fba9c68bf40bb090b1397b43c0f514de93e666f7c4b6acd62a31714d5e7
BLAKE2b-256 checksum
How to use checksums
e006d5279d9d2bd3a02cb919996ed56ea50eba6c2e70104a3c16679d483f279d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp314-cp314-macosx_10_12_x86_64.whl

Download URL msglc-260825-cp314-cp314-macosx_10_12_x86_64.whl
Size 305.6 kB
Tags CPython 3.14 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
b78daff251820270f09125cf4ee2528f793d87f7fe949ca2c2e92688eb37de71
BLAKE2b-256 checksum
How to use checksums
5520781bbb227a250b13f54cc8577493d58ff4c11b3d04cd10b36e21e0ff96a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp313-cp313-win_arm64.whl

Download URL msglc-260825-cp313-cp313-win_arm64.whl
Size 193.9 kB
Tags CPython 3.13 Windows ARM64
SHA-256 checksum
How to use checksums
b5ce2281be695cb2eb9cb1ec9745f1fafbea1cad6887458d6dc91d5e146fb9c9
BLAKE2b-256 checksum
How to use checksums
8dc91bfa4ee3ffaad8c8b5cb7f7aeea9a4255b0000572e9fa1c9bbad29c19873
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp313-cp313-win_amd64.whl

Download URL msglc-260825-cp313-cp313-win_amd64.whl
Size 195.9 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e8fbf0fe87f55d029a34ce629ca3c608bd9fed68869181eeb57624f5cd1b68a5
BLAKE2b-256 checksum
How to use checksums
ce7f9ee78db13db05b1900dc265b9c2fb80e2afc0db23b88bf1b2ccf38659161
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 333.5 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
59f86dc0ba5bc3c36d9bca831086824ae48a649d2c581788c1049e3a911fecb0
BLAKE2b-256 checksum
How to use checksums
07e0a8359dcad847c3927de293ddadd8bc63d3443c562c9dfc1d4d41f0e57dc8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL msglc-260825-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 327.4 kB
Tags CPython 3.13 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
404e8b2a0c5102905924e0507032e2dded76d709eb1f587896e25abb8ba4149c
BLAKE2b-256 checksum
How to use checksums
136c91b7bb77fb84b8c3cdb2a0d29a0400a1ced4f010bb828e38b13832f6da62
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp313-cp313-macosx_11_0_arm64.whl

Download URL msglc-260825-cp313-cp313-macosx_11_0_arm64.whl
Size 299.2 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5f6aea92ba0d3abdda45c1f4acb2156305d2d4d451d7a0dee7b906817e58f27c
BLAKE2b-256 checksum
How to use checksums
1283f28615dbb8b6b4b9e1bae51af3723d7b039de2f3c23570de764fa469af8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp313-cp313-macosx_10_12_x86_64.whl

Download URL msglc-260825-cp313-cp313-macosx_10_12_x86_64.whl
Size 304.8 kB
Tags CPython 3.13 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
3935b507972b3ccba976ede9c5337275b67c00d762c729d36bc2bc85a9c5d0bf
BLAKE2b-256 checksum
How to use checksums
b72a5178e5439c29e952acb8eb40b07e57a453c145cc8db033eebb80a62d560f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp312-cp312-win_arm64.whl

Download URL msglc-260825-cp312-cp312-win_arm64.whl
Size 194.2 kB
Tags CPython 3.12 Windows ARM64
SHA-256 checksum
How to use checksums
72d61353a9fa36cfff3f00379da306b7d3beb338cb8522ea9041457a6ef6c0b2
BLAKE2b-256 checksum
How to use checksums
effd03936c81e9eb3c93e6cf6180fcd1e9e7b050a19225a718583ac6fcd8a923
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp312-cp312-win_amd64.whl

Download URL msglc-260825-cp312-cp312-win_amd64.whl
Size 196.4 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
575e5d685dd420bdbef64e0db3e35842949340c55f45d9777af5c94ba7fcf2b0
BLAKE2b-256 checksum
How to use checksums
89b65718ad3a7dea421b8a83a7bbc090670eb007eb0a14046cf465d42c68e24a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 333.8 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
d57365ad3edef84b461ab4f149e2e7811ffa328ba78788c673cdc3653eb389f2
BLAKE2b-256 checksum
How to use checksums
acdb3605daa08babfd194aac4b913c9d65c0a0b8dfae7d29d05cb408dcce0214
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL msglc-260825-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 327.6 kB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
9f0f055bcb059108059c3e90be420fcbe89a99e2f00933ed7db65bba31d69082
BLAKE2b-256 checksum
How to use checksums
be9abb1a3f3d368204a165072c2ba855185abb8809d0e3f83de573fead406d3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp312-cp312-macosx_11_0_arm64.whl

Download URL msglc-260825-cp312-cp312-macosx_11_0_arm64.whl
Size 299.8 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e0856c48e41761a5e9acb942e7474f92ba59b7737edb8e99a2754a303d1e5fd8
BLAKE2b-256 checksum
How to use checksums
20ca0ab7f401b723a7632d828d3190e81b0c4c43fe1de68b96b192dcd596f5c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp312-cp312-macosx_10_12_x86_64.whl

Download URL msglc-260825-cp312-cp312-macosx_10_12_x86_64.whl
Size 305.3 kB
Tags CPython 3.12 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
e7f6c9d5b08402ff410160c3bee2b3b4e898bfe95365c70a3ff120c9a321f6f0
BLAKE2b-256 checksum
How to use checksums
fcaf1a4d03ca8bc7ac21700a722e9985d04b92ba7d479a90a23fa0c75f24c347
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp311-cp311-win_amd64.whl

Download URL msglc-260825-cp311-cp311-win_amd64.whl
Size 199.3 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
1360932b8d49d61979aa1b453143b4ad7969f28d62fb1569eee10c47600efc23
BLAKE2b-256 checksum
How to use checksums
99aa7a221f97865848623a145a87773c3a59ea63c44d5a63fbb5fddcfa755423
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 340.0 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
c3abcecc7f53216f89ff4d3e92503eb82d810c135f69a6d67590fd4799787bc5
BLAKE2b-256 checksum
How to use checksums
5a54413c4f8a52348d81e6a7b90a3ca2e9ee6db1094fcba83618fa67b94a73fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL msglc-260825-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 333.6 kB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
c84998479b0b945a8fb5694fb649d16a8e9cbbe509fd6fbc2b65a8a4b6280664
BLAKE2b-256 checksum
How to use checksums
85b8e9ca901ef96fcec9011d8a2ddb46d0e012681d7c701639c8b728b398c42f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp311-cp311-macosx_11_0_arm64.whl

Download URL msglc-260825-cp311-cp311-macosx_11_0_arm64.whl
Size 306.2 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1ff504619eafa197eda9906254383aee92b4608b14cde10865439393db4b2e65
BLAKE2b-256 checksum
How to use checksums
e608070269fb16c09d190564640dfbba41caa36abe21b05f76fd6b2758a26d33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp311-cp311-macosx_10_12_x86_64.whl

Download URL msglc-260825-cp311-cp311-macosx_10_12_x86_64.whl
Size 306.3 kB
Tags CPython 3.11 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
711354d43f4b662008f7e241d7df6750b96c9129228f6cae4b803bf56d801dc4
BLAKE2b-256 checksum
How to use checksums
6105a0ab649ef8072cd7922697f4abf894d20ed5a42166a80b9cb52cc4d6f666
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp310-cp310-win_amd64.whl

Download URL msglc-260825-cp310-cp310-win_amd64.whl
Size 198.8 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
c52bf6b290feab954ec82ce20858a3088a03e1726af0d6a4de413db9f5fa6176
BLAKE2b-256 checksum
How to use checksums
3435877e744ab2dc3298e4e1f39c0dd530c02165893255d0ac76680a9cb40ef6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL msglc-260825-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 340.0 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
9f1ebc85c32a6b93ff003550d0ad96716c7d6d1833d0e16c1e0b36fe1d43a49c
BLAKE2b-256 checksum
How to use checksums
d6754951fc0dc3a6bff566bfd184963ed8edb2ce0857644cbfce8064203ed6a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release files / msglc-260825-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL msglc-260825-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 333.4 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
94d8b785da574e60f41c60f48fa0cd3df8093da824426b39b00c75589385273f
BLAKE2b-256 checksum
How to use checksums
047eac50587fbd6493d2f352d30f4b943e0b65503171b24edcf90653ffaa07fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

260825 This release

33 release files

260412

1 release file

260319

1 release file

260317

1 release file

260315

1 release file

260201

1 release file

260115

1 release file

260103

1 release file

251227

1 release file

251222

1 release file

251009

1 release file

250419

1 release file

250314

1 release file

240630

1 release file

240330

1 release file

240317

1 release file

240316

1 release file

240312

1 release file

240308

1 release file

240307

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page