Skip to main content

Python bindings for mscompress, a compression library for mass spectrometry data

Project description

MScompress Python Library

Python bindings for MScompress, a high-performance compression library for mass spectrometry data.

Overview

The MScompress Python library provides a fast and efficient way to compress and decompress mass spectrometry data files in mzML format. It features:

  • 🚀 High Performance: Multi-threaded compression/decompression with state-of-the-art speeds
  • 📦 MSZ Format: Novel compressed format with random-access capabilities
  • 🔄 Lossless & Lossy: Support for both lossless and lossy compression modes
  • 🐍 Pythonic API: Clean, intuitive interface with NumPy integration
  • 🎯 Direct Data Access: Extract spectra, m/z arrays, and intensity data without full decompression

Installation

From PyPI

pip install mscompress

From Source

Prerequisites:

  • Python ≥ 3.9
  • NumPy
  • Cython
  • C compiler (GCC, Clang, or MSVC)

Build and install:

git clone --recurse-submodules https://github.com/chrisagrams/mscompress.git
cd mscompress/python
pip install -e .

Quick Start

Basic Usage

import mscompress

# Read an mzML file
mzml = mscompress.read("data.mzML")

# Compress to MSZ format
mzml.compress("data.msz")

# Read compressed MSZ file
msz = mscompress.read("data.msz")

# Decompress back to mzML
msz.decompress("output.mzML")

Working with Spectra

import mscompress

# Open a file (mzML or MSZ)
file = mscompress.read("data.mzML")

# Access file metadata
print(f"File size: {file.filesize} bytes")
print(f"Total spectra: {len(file.spectra)}")

# Iterate through all spectra
for spectrum in file.spectra:
    print(f"Scan {spectrum.scan}: MS{spectrum.ms_level}")
    print(f"  Retention time: {spectrum.retention_time:.2f}s")
    print(f"  Data points: {spectrum.size}")

# Access specific spectrum by index
spectrum = file.spectra[0]

# Get m/z and intensity arrays as NumPy arrays
mz_array = spectrum.mz
intensity_array = spectrum.intensity

# Get combined peaks as 2D array [m/z, intensity]
peaks = spectrum.peaks

# Access spectrum metadata XML
xml_element = spectrum.xml

Compression Configuration

import mscompress

# Open mzML file
mzml = mscompress.read("data.mzML")

# Configure compression settings
mzml.arguments.threads = 8  # Use 8 threads
mzml.arguments.zstd_compression_level = 3  # Set ZSTD level (1-22)
mzml.arguments.blocksize = 100  # Spectra per block

# Compress with custom settings
mzml.compress("data.msz")

Random Access to Compressed Data

import mscompress

# Open compressed MSZ file
msz = mscompress.read("data.msz")

# Directly access specific spectrum without full decompression
spectrum_100 = msz.spectra[100]
print(f"Scan: {spectrum_100.scan}")
print(f"m/z range: {spectrum_100.mz[0]:.2f} - {spectrum_100.mz[-1]:.2f}")

# Extract binary data for a specific spectrum
mz_binary = msz.get_mz_binary(100)
intensity_binary = msz.get_inten_binary(100)
xml_metadata = msz.get_xml(100)

Context Manager Support

import mscompress

# Use with context manager for automatic resource cleanup
with mscompress.read("data.mzML") as file:
    for spectrum in file.spectra:
        # Process spectrum
        process_spectrum(spectrum)
# File is automatically closed

API Reference

Functions

read(path: str | bytes) -> MZMLFile | MSZFile

Opens and parses an mzML or MSZ file.

Parameters:

  • path: Path to the file (string or bytes)

Returns:

  • MZMLFile or MSZFile object depending on file type

Raises:

  • FileNotFoundError: If file does not exist
  • IsADirectoryError: If path points to a directory
  • OSError: If file type cannot be determined

get_num_threads() -> int

Returns the number of available CPU threads.

get_filesize(path: str | bytes) -> int

Returns the size of a file in bytes.

Classes

MZMLFile

Handler for mzML format files.

Properties:

  • path: File path (bytes)
  • filesize: File size in bytes (int)
  • format: Data format information (DataFormat)
  • spectra: Collection of spectra (Spectra)
  • positions: Division/position information (Division)
  • arguments: Runtime configuration (RuntimeArguments)

Methods:

  • compress(output: str | bytes): Compress to MSZ format
  • get_mz_binary(index: int) -> np.ndarray: Extract m/z array for spectrum
  • get_inten_binary(index: int) -> np.ndarray: Extract intensity array for spectrum
  • get_xml(index: int) -> Element: Extract XML metadata for spectrum
  • describe() -> dict: Get file description dictionary

MSZFile

Handler for MSZ (compressed) format files.

Properties:

  • Same as MZMLFile

Methods:

  • decompress(output: str | bytes): Decompress to mzML format
  • get_mz_binary(index: int) -> np.ndarray: Extract m/z array for spectrum
  • get_inten_binary(index: int) -> np.ndarray: Extract intensity array for spectrum
  • get_xml(index: int) -> Element: Extract XML metadata for spectrum
  • describe() -> dict: Get file description dictionary

Spectrum

Represents a single mass spectrum.

Properties:

  • index: Spectrum index (int)
  • scan: Scan number (int)
  • ms_level: MS level (int)
  • retention_time: Retention time in seconds (float)
  • size: Number of data points (int)
  • mz: m/z values (np.ndarray)
  • intensity: Intensity values (np.ndarray)
  • peaks: Combined m/z and intensity as 2D array (np.ndarray)
  • xml: XML metadata element (Element)

Spectra

Collection of spectra with lazy loading and iteration support.

Methods:

  • __len__(): Get total number of spectra
  • __iter__(): Iterate over all spectra
  • __getitem__(index: int): Access spectrum by index

RuntimeArguments

Runtime configuration for compression/decompression.

Properties:

  • threads: Number of threads to use (int)
  • blocksize: Number of spectra per block (int)
  • mz_scale_factor: m/z scaling factor (int)
  • int_scale_factor: Intensity scaling factor (int)
  • target_xml_format: Target XML format (int)
  • target_mz_format: Target m/z format (int)
  • target_inten_format: Target intensity format (int)
  • zstd_compression_level: ZSTD compression level 1-22 (int)

DataFormat

Data format information.

Properties:

  • source_mz_fmt: Source m/z format (int)
  • source_inten_fmt: Source intensity format (int)
  • source_compression: Source compression type (int)
  • source_total_spec: Total number of spectra (int)
  • target_xml_format: Target XML format (int)
  • target_mz_format: Target m/z format (int)
  • target_inten_format: Target intensity format (int)

Methods:

  • to_dict() -> dict: Convert to dictionary representation
  • __str__() -> str: String representation

Division

Division structure containing data positions and scan information.

Properties:

  • spectra: Spectrum data positions (DataPositions)
  • xml: XML data positions (DataPositions)
  • mz: m/z data positions (DataPositions)
  • inten: Intensity data positions (DataPositions)
  • size: Number of divisions (int)
  • scans: Scan numbers (np.ndarray)
  • ms_levels: MS levels (np.ndarray)
  • ret_times: Retention times (np.ndarray or None)

DataPositions

Position information for data blocks.

Properties:

  • start_positions: Start positions (np.ndarray[uint64])
  • end_positions: End positions (np.ndarray[uint64])
  • total_spec: Total number of spectra (int)

Examples

Extract All MS2 Spectra

import mscompress
import numpy as np

file = mscompress.read("data.mzML")

ms2_spectra = []
for spectrum in file.spectra:
    if spectrum.ms_level == 2:
        ms2_spectra.append({
            'scan': spectrum.scan,
            'rt': spectrum.retention_time,
            'mz': spectrum.mz,
            'intensity': spectrum.intensity
        })

print(f"Found {len(ms2_spectra)} MS2 spectra")

Compare Compression Ratios

import mscompress
import os

mzml = mscompress.read("data.mzML")
original_size = mzml.filesize

# Compress with different ZSTD levels
for level in [1, 3, 5, 10]:
    mzml.arguments.zstd_compression_level = level
    output = f"data_level_{level}.msz"
    mzml.compress(output)
    
    compressed_size = os.path.getsize(output)
    ratio = original_size / compressed_size
    print(f"Level {level}: {ratio:.2f}x compression")

Parallel Processing of Spectra

import mscompress
from multiprocessing import Pool

def process_spectrum(args):
    file_path, index = args
    file = mscompress.read(file_path)
    spectrum = file.spectra[index]
    # Your processing logic here
    return spectrum.scan, len(spectrum.mz)

file = mscompress.read("data.mzML")
indices = range(len(file.spectra))
args = [(file.path.decode(), i) for i in indices]

with Pool() as pool:
    results = pool.map(process_spectrum, args)

print(f"Processed {len(results)} spectra")

Filter and Extract Peaks

import mscompress
import numpy as np

file = mscompress.read("data.mzML")

# Extract peaks above intensity threshold
threshold = 1000.0

for spectrum in file.spectra:
    mask = spectrum.intensity > threshold
    filtered_mz = spectrum.mz[mask]
    filtered_intensity = spectrum.intensity[mask]
    
    print(f"Scan {spectrum.scan}: {len(filtered_mz)} peaks above threshold")

Performance Tips

  1. Multi-threading: Set arguments.threads to match your CPU core count for optimal performance
  2. Block size: Adjust arguments.blocksize based on your data - larger blocks may improve compression ratio but reduce random-access granularity
  3. Compression level: ZSTD levels 1-3 offer good speed/ratio balance; higher levels improve compression at the cost of speed
  4. Memory usage: When processing large files, iterate through spectra rather than loading all into memory

Type Hints

The library includes full type hints and stub files (.pyi) for improved IDE support and type checking:

import mscompress
from typing import Union

def process_file(path: Union[str, bytes]) -> None:
    file = mscompress.read(path)  # Type checker knows this is MZMLFile | MSZFile
    spectra = file.spectra  # Type: Spectra
    spectrum = spectra[0]  # Type: Spectrum
    mz = spectrum.mz  # Type: np.ndarray[np.float32 | np.float64]

Contributing

Contributions are welcome! Please see the main repository for guidelines: https://github.com/chrisagrams/mscompress

License

See the main repository for license information.

Support

For bug reports and feature requests, please open an issue: https://github.com/chrisagrams/mscompress/issues

Citation

If you use MScompress in your research, please cite our work (citation information coming soon).

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

mscompress-1.0.12.tar.gz (2.1 MB view details)

Uploaded Source

Built Distributions

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

mscompress-1.0.12-cp313-cp313-win_amd64.whl (709.0 kB view details)

Uploaded CPython 3.13Windows x86-64

mscompress-1.0.12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (4.8 MB view details)

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

mscompress-1.0.12-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

mscompress-1.0.12-cp313-cp313-macosx_11_0_arm64.whl (913.1 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

mscompress-1.0.12-cp312-cp312-win_amd64.whl (707.2 kB view details)

Uploaded CPython 3.12Windows x86-64

mscompress-1.0.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (4.8 MB view details)

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

mscompress-1.0.12-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

mscompress-1.0.12-cp312-cp312-macosx_11_0_arm64.whl (912.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

mscompress-1.0.12-cp312-cp312-macosx_10_13_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

mscompress-1.0.12-cp311-cp311-win_amd64.whl (710.4 kB view details)

Uploaded CPython 3.11Windows x86-64

mscompress-1.0.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (4.9 MB view details)

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

mscompress-1.0.12-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl (4.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

mscompress-1.0.12-cp311-cp311-macosx_11_0_arm64.whl (913.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

mscompress-1.0.12-cp311-cp311-macosx_10_9_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

mscompress-1.0.12-cp310-cp310-win_amd64.whl (710.4 kB view details)

Uploaded CPython 3.10Windows x86-64

mscompress-1.0.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (4.8 MB view details)

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

mscompress-1.0.12-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

mscompress-1.0.12-cp310-cp310-macosx_11_0_arm64.whl (914.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

mscompress-1.0.12-cp310-cp310-macosx_10_9_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file mscompress-1.0.12.tar.gz.

File metadata

  • Download URL: mscompress-1.0.12.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mscompress-1.0.12.tar.gz
Algorithm Hash digest
SHA256 61e5567fe3500115fbed2910f3ec08102d7582870f91bf0a59c53bcdc6fad7b7
MD5 560154c309dd9728d620ee3281e178cb
BLAKE2b-256 42c2220bc15d6988017f04577fbbef026416e6ec898a93d70c580680d2de29c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12.tar.gz:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: mscompress-1.0.12-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 709.0 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 mscompress-1.0.12-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 fb6fc3f0625fe343ba5b53295f90ecee8762f0f042f72f7cae0876d6f1f5a3d1
MD5 8490fb51d797e308669d5f177b8304a9
BLAKE2b-256 b3b8abffd1f8dffa5954da0954829d8b12188cead28d402513eb3e6373c23221

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp313-cp313-win_amd64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ffd77a2e1792115ea8a0bc226234cdacee677e391203c9855a2e01bba5018db4
MD5 28c28ee106fcb88f48a38b5165c62702
BLAKE2b-256 538841b94f83a9bbfecfe436efdbba5181a7c501f41c2c892fcea021368997f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e0e9f2681f438e044ca89fce318ac90906620adff2dc15b8b3560fca9f515ec3
MD5 bb377070d5f4598366d4dcb557bf6455
BLAKE2b-256 90908a3337fa9cf9238cc6e8d28d330267e0d2ca17d19c4f8ba481181a47bab2

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8101014248dbfe4f9bf3f8d96cf6a552f1df0e5d0ac26341cde1000557f81066
MD5 29761d07364d94ae983786592f759253
BLAKE2b-256 30b9bf260a25183475df859c3c678b31b10b82f60f4d426f9a4b89cbf7e5ad58

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: mscompress-1.0.12-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 707.2 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 mscompress-1.0.12-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 46169d5da92a38b0600555645c4006996f29b3e526051b649a205dd4f171d523
MD5 bf2c17508e764f457eb9700452f489d6
BLAKE2b-256 51be7835590bebaa7c16347a5e614e4481cce358c426b72f124ce3309323556d

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp312-cp312-win_amd64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 203e4c6e4066519f83f04f2f7fca6004971294764703c7b91f87a7cf6aff184a
MD5 4da99faa58e87635a03bdabc9cc53162
BLAKE2b-256 ec545b4c299f16af5f36f2235526693611d23887c3572cd6d62eab3408bd4aba

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0d3cc50daa6634d989a8b37d1193d642fbf79eee35c43d4e7e7961a4f9d6f0fb
MD5 307f9cdca8c2121eeb50ac42dca201b8
BLAKE2b-256 0a2e3f1c6eeeec7e36bfed39057d54465b61f90d279d6bfc28f3737c54760fca

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 afa0083e4e96696458b97208999bf2884efb7522107aafc8dee72c8b075b4446
MD5 185c5226695fc3287c577c07f6f42ad8
BLAKE2b-256 bd08bb64192d7829f6187addcba90cd629834ad0622dd9a62d4a59736d2ff585

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 bf061a8eac30320bf6221270397ae31e6d5c43504fae7d8d666c01eca315e0e2
MD5 32acf3fad217096a9c619837e6746c5f
BLAKE2b-256 5238c474af4bca88abaf4585b29a9e92656d32f4815cbd9d512b7aea375367ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: mscompress-1.0.12-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 710.4 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 mscompress-1.0.12-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0b4992ec71fe4a8ee7ae77b0b7f33310ec44353074e4c6c1223cc1a24c297293
MD5 81699bfb8f446ebc31c81551da9c9673
BLAKE2b-256 31d818677e69c512875b4efc7a50f58cb007f9b0b1110687e9bee7019020ddc8

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp311-cp311-win_amd64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f8c07f8e3b062e2600bfdca5ac146543ac9ab0e114ef1aa230bd232935811691
MD5 6cddf44f879b18f6c2b3ec24b8749f94
BLAKE2b-256 59e294532015c9b1676d0356e1be8fdb027dfefa414201508f905882d82f7719

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 30a162631fc9d94599d5f41c6560f2794955def7a8fe57cd34026ac3e5251750
MD5 15bae5ed37d8389ddb9ed2fc2ec7458b
BLAKE2b-256 f96d9f3458dd64457bc6cbd95801a830bb19b9f42b3eabb2fe64d632c79c81d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 56efc2a8977ec646495f32f0e812481b752709dc5d73066c880077e53ebccab1
MD5 b238f19dbbaee18aca312f91171faac7
BLAKE2b-256 428347647a8c8832dd35045fee1e1c132e447cfb95858c9e64c4ce7d3526a784

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9c88815af2d65210789d7cbfa8f788bf872ca36381ff43ef66b94383e7e277ef
MD5 78ffae5856dc6551b6ad4d7cd56faefd
BLAKE2b-256 4d42bcdba5407e79ca20382a06e6e08861b63303f395b96c00725140fe834a5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: mscompress-1.0.12-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 710.4 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 mscompress-1.0.12-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 4329793a5c54f7edf9f765b977eda8b71f72df067cf63dfd8e5a56452e10de04
MD5 20dd666b335fceb509b94f1a67e93791
BLAKE2b-256 9902eb4297ed05e63dccdcd26ad1e0dd41b951bf8369304306c98e68dc672489

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp310-cp310-win_amd64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a1d266ec20662d68ee1c7a632e11a63160fff5b04e96b6085c6b787c7644e1c0
MD5 efa1bc310bbf546688dfad9550be16bc
BLAKE2b-256 f51490da5354cea6c2c27ef328f571d06d48844b20f5ea0068aa92889dbcaa1e

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 af66e78359581de13168a08f2738d45db8dbbebf332941bc765a609df4c9e6b1
MD5 40c847516e2fe2fe0696d5b1d40332e8
BLAKE2b-256 9e74c0caf3762516f12dab8793f4beb951f3671a6a64becb734b1433127f2963

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a00e9bf447dd9b79dd3ea862be0ee3df0f7715ca77432c484cccfcc7673d7ff4
MD5 520ada6e02afe4580600cacd73a434bc
BLAKE2b-256 48e1791ac02674a605452e10141f0a37f43474f5e4d0d279844cc487d5554d3b

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build.yml on chrisagrams/mscompress

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

File details

Details for the file mscompress-1.0.12-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mscompress-1.0.12-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a930d0058b1e07528f4089e9c25bf787cb33161a3a65d0d39e733cf6d981769f
MD5 4a899f2e752a38747c70a0b968d13bca
BLAKE2b-256 da2db954739c7d51232866cb0cb105958fceb5b99c9e3203b987fd770ea6dd24

See more details on using hashes here.

Provenance

The following attestation bundles were made for mscompress-1.0.12-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: build.yml on chrisagrams/mscompress

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