Skip to main content

Python implementation to calc mappability-sensitive cross-correlation for fragment length estimation and quality control for ChIP-Seq.

Project description

PyMaSC Logo

PyMaSC

PyPI version PyPI pyversions

Build Check Matrix Tests Pre-build C Sources Build Wheels

Python implementation to calc mappability-sensitive cross-correlation for fragment length estimation and quality control for ChIP-Seq.

🐾 Visit PyMaSC web site for more information and to get human genome mappability tracks.

📃 If you use this software in your work, please cite the following paper.

Anzawa, Hayato, Hitoshi Yamagata, and Kengo Kinoshita. "Theoretical characterisation of strand cross-correlation in ChIP-seq." BMC bioinformatics 21.1 (2020): 417. https://doi.org/10.1186/s12859-020-03729-6


  1. Introduction
  2. Install
  3. Usage
  4. Computation details
  5. References

Introduction

To estimate mean fragment length for single-ended sequencing data, cross-correlation between positive- and negative-strand reads is commonly used. One of the problems with this approach is phantom peak, which is the occasionally observed peak corresponding to the read length. In the ChIP-Seq guidelines by ENCODE consortia, cross-correlation at fragment length and read length are used for quality control metrics. Additionally, library length itself is one of the important parameters for analysises. However, estimating correct flagment length is not a easy task because of phantom peak occurrence. P Ramachandran et al. proposed MaSC, mappability-sensitive cross-correlation to remove the bias caused from ununiformity of mappability throughout the genome. This method provides cross-correlation landscape without phantom peak and much accurate mean fragment length estimation. PyMaSC is a tool implemented by python and cython to visualize (mappability-sensitive) cross-correlation and estimate ChIP-Seq quality metrics and mean fragment length with MaSC algorithm.

Install

Python version 3.8 or higher is recommended (Python 3.8-3.14 officially supported). C compiler needs to build C sources (recommend GCC).

Install using pip

Install PyMaSC from PyPI

$ pip install pymasc

If cython is installed, PyMaSC will be built with Cython native compiled sources.

Usage

After installation, PyMaSC provides pymasc, pymasc-precalc and pymasc-plot command. Note that pymasc-precalc is not essential to calculate mappability-sensitive cross-correlation.

pymasc command

pymasc [-h]
       [-v {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
       [--disable-progress]
       [--color {TRUE,FALSE}]
       [--version]
       [-p PROCESS]
       [--successive]
       [--skip-ncc]
       [--skip-plots]
       [-r READ_LENGTH]
       [--readlen-estimator {MEAN,MEDIAN,MODE,MIN,MAX}]
       [-l LIBRARY_LENGTH]
       [-m REGION_FILE]
       [--mappability-stats MAPPABILITY_STATS]
       [-q MAPQ]
       [-i CHROM [CHROM ...]]
       [-e CHROM [CHROM ...]]
       [-d MAX_SHIFT]
       [--chi2-pval CHI2_PVAL]
       [-w SMOOTH_WINDOW]
       [--mask-size MASK_SIZE]
       [--bg-avr-width BG_AVR_WIDTH]
       [-n NAME [NAME ...]]
       [-o OUTDIR]
       reads [reads ...]

Usage example

Calculate only naïve cross-correlation for ENCFF000VPI.bam with max shift size = 1000. Output files are ENCFF000VPI_stats.tab, ENCFF000VPI_nreads.tab, ENCFF000VPI_cc.tab and ENCFF000VPI.pdf.

$ pymasc -d 1000 ENCFF000VPI.bam

Calculate both naïve and mappability-sensitive cross-correlation by 4 worker processes. Output ENCFF000VPI_mscc.tab Additionally.

$ pymasc -p 4 -d 1000 -m wgEncodeCrgMapabilityAlign36mer.bigWig ENCFF000VPI.bam

Main input file

SAM and BAM file format are acceptable.

  • Input alignment file must be sorted.
  • Additionally, for parallel processing, input file must be BAM format and indexed.
  • If multiple files specified, PyMaSC processes each file with common parameters.
  • Unmapped or duplicated reads will be discarded.
  • If input file contains paired-end reads, the last (second) segment read will be discarded.

Output files

Name Description
*_stats.tab Tab-delimited run summary includes statistics like NSC (normalized strand coefficient), RSC (relative strand coefficient) and VSN (virtual S/N ratio).
*.pdf A multipage figure summarizing the run: cross-correlation curves (naïve and MaSC) versus shift, with the inferred fragment length highlighted.
*_cc.tab Naïve strand cross-correlation coefficients by shift (rows). Columns are shift (in bp), whole (all chromosomes), followed by per-chromosome values.
*_mscc.tab Mappability-sensitive cross-correlation (MSCC) coefficients by shift with the same layout as *_cc.tab. Produced only when a mappability BigWig is supplied.
*_nreads.tab Positive/negative strand read counts reported as pos-neg pairs for whole and per chromosome. The raw row reports number of reads. If mappability is supplied, numbers of reads in doubly mappable positions at each shift are also reported.

Additionaly, PyMaSC generates a JSON file as cache for mappability analyses. See the --mappability-stats option for details.

General options

Option & Argument Description Default
-v, --log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL} Set logging message level. INFO
--disable-progress Disable progress bars. Note that progress bar will be disabled automatically if stderr is not connected to terminal. auto
--color {TRUE,FALSE} Switch coloring log output. auto (enable if stderr is connected to terminal)
--version Show program's version number and exit

Processing settings

Option & Argument Description Default
-p/--process [int] Set number of worker process. For indexed BAM file, PyMaSC parallel process each reference (chromosome). 1
--successive Calc with successive algorithm instead of bitarray implementation Bitarray implementation is recommended in most situation. See Computation details for more information. off (use bit array implementation)
--skip-ncc Both -m/--mappability and --skip-ncc specified, PyMaSC skips calculate naïve cross-correlation and calculates only mappability-sensitive cross-correlation. off
--skip-plots Skip output figures. off

Input alignment file settings

Option & Argument Description Default
-r, --read-length [int] Specify read length explicitly (Default: get representative by scanning). PyMaSC needs representative value of read length to plot figures and to calc mappability-sensitive cross-correlation. By default, PyMaSC scans input file read length to get representative read length. If read length is specified, PyMaSC skips this step. Note that this option must be specified to treat unseekable input (like stdin). auto
--readlen-estimator {MEAN,MEDIAN,MODE,MIN,MAX} Specify how to get representative value of read length. median
-l, --library-length Specify expected fragment length. PyMaSC supplies additional NSC and RSC values calculated from this value. None

Input mappability file settings

Option & Argument Description Default
-m, --mappability [BigWig file] Specify mappability (alignability, uniqueness) track to calculate mappability-sensitive cross-correlation. Input file must be BigWig format and each track's score should indicate mappability in [0, 1] (1 means uniquely mappable position). If BigWig file is not supplied, PyMaSC will calculate only naïve cross-correlation.
--mappability-stats [json file] Read and save path to the json file which contains mappability region statistics. If there is no statistics file for specified BigWig file, PyMaSC calculate total length of doubly mappable region for each shift size automatically and save them to reuse for next calculation and faster computing. pymasc-precalc performs this calculation for specified BigWig file (this is not necessary, of course). auto (same place, same base name as the mappability BigWig file)

Input file filtering arguments

Option & Argument Description Default
-q, --mapq [int] Input reads which mapping quality less than specified score will be discarded. MAPQ >= 1 is recommended because MAPQ=0 contains multiple hit reads. 1
-i, --include-chrom [pattern ...] Specify chromosomes to calculate. Unix shell-style wildcards (., *, [] and [!]) are acceptable. This option can be declared multiple times to re-include chromosomes specified in a just before -e/--exclude-chrom option. Note that this option is case-sensitive.
-e, --exclude-chrom [pattern ...] As same as the -i/--include-chrom option, specify chromosomes to exclude from calculation. This option can be declared multiple times to re-exclude chromosomes specified in a just before -i/--include-chrom option.

Analysis Parameters

Option & Argument Description Default
-d, --max-shift [int] PyMaSC calculate cross-correlation with shift size from 0 to this value. 1000
--chi2-pval [float] P-value threshold to check strand specificity. PyMaSC performs chi-square test between number of reads mapped to positive- and negative-strand. 0.05
-w, --smooth-window [int] Before mean fragment length estimation, PyMaSC applies moving average filter to mappability-sensitive cross-correlation. This option specify filter's window size. 15
--mask-size [int] If difference between a read length and the estimated library length is equal or less than the length specified by this option, PyMaSC masks correlation coefficients in the read length +/- specified length and try to estimate mean library length again. Specify < 1 to disable. 5
--bg-avr-width [int] To obtain the minimum coefficients of cross-correlation, PyMaSC gets the median of the end of specified bases from calculated cross-correlation coefficients. 50

Output options

Option & Argument Description Default
-o, --outdir [path] Specify output directory. (current directory)
-n, --name [NAME...] By default, output files are written to outdir/input_file_base_name. This option overwrite output file base name. (input_file_base_name)

pymasc-precalc command

pymasc-precalc [-h]
               [-p PROCESS]
               [-v {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
               [--disable-progress]
               [--color {TRUE,FALSE}]
               [--version]
               [-m REGION_FILE]
               [--mappability-stats MAPPABILITY_STATS]
               [-d MAX_SHIFT]
               [-r MAX_READLEN]

Usage example

Calculate total length of doubly mappable regions. wgEncodeCrgMapabilityAlign36mer_mappability.json will be write.

$ pymasc -p 4 -r 50 -d 1000 -m wgEncodeCrgMapabilityAlign36mer.bigWig

Options

Almost same as pymasc command. Note that actual max shift size is,

  • 0 to read_length (if max_shift < read_len * 2)
  • 0 to max_shift - read_len + 1 (if max_shift => read_len * 2)

pymasc-plot command

pymasc-plot [-h]
            [-v {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
            [--disable-progress]
            [--color {TRUE,FALSE}]
            [--version]
            [--stats STATS]
            [--cc CC]
            [--masc MASC]
            [--nreads NREADS]
            [-s SIZES]
            [-m MAPPABILITY_STATS]
            [-i CHROM [CHROM ...]]
            [-e CHROM [CHROM ...]]
            [--chi2-pval CHI2_PVAL]
            [-w SMOOTH_WINDOW]
            [--mask-size MASK_SIZE]
            [--bg-avr-width BG_AVR_WIDTH]
            [-l LIBRARY_LENGTH]
            [-n NAME]
            [-o OUTDIR]
            [-f [{all,stats,cc,mscc} [{all,stats,cc,mscc} ...]]]
            [statfile]

Usage example

(Re)plot figures from pymasc outputs output/ENCFF000VPI_* with the specified smoothing window size and library length. Note that you need to specify a tab delimited file or a SAM/BAM format file to obtain chromosome lengths, and/or, specify a mappability stats (JSON) file which was generated for a mappability BigWig file by PyMaSC to obtain mappable region lengths.

$ pymasc-plot -w 50 -l 250 -s ENCFF000VPI.bam output/ENCFF000VPI

Input argument

Specify a prefix to pymasc output files. For example, set output/ENCFF000VPI to plot figures from output/ENCFF000VPI_stats.tab, output/ENCFF000VPI_nreads.tab and output/ENCFF000VPI_cc.tab (and/or output/ENCFF000VPI_mscc.tab). *_stats.tab and either or both of *_cc.tab and *_mscc.tab must be exist. To specify these files individually, use --stats, --nreads, --cc and --masc options.

Computation details

BitArray and successive implementation

PyMaSC provides two algorithms for calculation.

BitArray

BitArray approach is based on allocated binary arrays with length of references and computation time mostly depends on the size of reference genome and the maximum shift size. Typically (hg19, chr1), PyMaSC consumes about 250MB RAM per worker.

Successive implementation

Successive implementation is based on buffer with length of maximum shift size and calculate overwrapped bases successively while reading reads and mappable regions. Computation time mostly depends on number of reads and tracks in input files and BitArray implementation is faster in most cases. Successive approach surpasses in processing small input data, quite low memory efficiency and robustness for shift size.

References

  • PyMaSC paper
    • Anzawa, Hayato, Hitoshi Yamagata, and Kengo Kinoshita. "Theoretical characterisation of strand cross-correlation in ChIP-seq." BMC bioinformatics 21.1 (2020): 417.
  • Original paper on the MaSC algorithm
    • Ramachandran, Parameswaran, et al. "MaSC: mappability-sensitive cross-correlation for estimating mean fragment length of single-end short-read sequencing data." Bioinformatics 29.4 (2013): 444-450.

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

pymasc-1.0.1.tar.gz (5.6 MB view details)

Uploaded Source

Built Distributions

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

pymasc-1.0.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

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

pymasc-1.0.1-cp314-cp314-macosx_10_15_universal2.whl (6.6 MB view details)

Uploaded CPython 3.14macOS 10.15+ universal2 (ARM64, x86-64)

pymasc-1.0.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

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

pymasc-1.0.1-cp313-cp313-macosx_10_13_universal2.whl (6.6 MB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

pymasc-1.0.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

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

pymasc-1.0.1-cp312-cp312-macosx_10_13_universal2.whl (6.6 MB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

pymasc-1.0.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

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

pymasc-1.0.1-cp311-cp311-macosx_10_9_universal2.whl (6.6 MB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

pymasc-1.0.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (8.1 MB view details)

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

pymasc-1.0.1-cp310-cp310-macosx_10_9_universal2.whl (6.6 MB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

pymasc-1.0.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (8.1 MB view details)

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

pymasc-1.0.1-cp39-cp39-macosx_10_9_universal2.whl (6.6 MB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

pymasc-1.0.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (8.1 MB view details)

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

pymasc-1.0.1-cp38-cp38-macosx_10_9_universal2.whl (6.6 MB view details)

Uploaded CPython 3.8macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file pymasc-1.0.1.tar.gz.

File metadata

  • Download URL: pymasc-1.0.1.tar.gz
  • Upload date:
  • Size: 5.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pymasc-1.0.1.tar.gz
Algorithm Hash digest
SHA256 1c32bfaa85245840b8021480fb84b5440da57660ab19336a6e250ea3cd40e472
MD5 dceb5f47740ed388c1d9c4aeb76dd9b3
BLAKE2b-256 27d8fe58c7f36e96b43c49b6752c8e556492f87a98046f46878def09916b73b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1.tar.gz:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 19358118a612103f3843c83402d23b3bd14f113a886b8446d2bd86e9ac634363
MD5 ae1bae084a1456dec1682fa3d25cc6ff
BLAKE2b-256 6fcddaa75ff7e89fc562072670b0c9b1383257805ce4af58353614c9c70af7aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp314-cp314-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp314-cp314-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 ec061edc3e7cbf702785b3079fd6ba1ff49fea368ccb86da7fcbe330c512b6e5
MD5 2b7a8882034e0af71cf091a9275f3289
BLAKE2b-256 50e52631347c75f7c8c3fc37e1a78898921b19da44145c406f8da35f027e8b9f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp314-cp314-macosx_10_15_universal2.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4993726f78702cbe5a61d7576d61118b531e7f7320cb0262ed06d840ef552be2
MD5 2f5a83eb4afaff61f1b46f446aa5804f
BLAKE2b-256 809b4d14622f9129e57f80eb83e89bdbad3602af9e3350a5bee4e9d15fc580d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 3fd816d9e0ad02dab6c112ff9b2fce41ef0055a9331ecb975b4834c52ec91a24
MD5 fd1eea21889e5e56780aba3c09bdc9ca
BLAKE2b-256 ecea8412450d764c07a2c68cb7996def0be63286cf107a7c63b70e08485c3496

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp313-cp313-macosx_10_13_universal2.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a9c03cf6746dd593731f46fd4cb1347fcb137b9ef182b117c1565e9515006cdd
MD5 3dae0c999a9663c600680b493c7a88e3
BLAKE2b-256 4b1cf3789dd9a7a0d6935d5196035a53c99ef3ee8f60399ff1cdd96aae8fd7e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 5102afbf7ddcad3242adcc6205596d673f6688dec7514659e3895bda0b7e56b3
MD5 f79588c952d793af4f70887c423a5cef
BLAKE2b-256 5153706165fc7bc5e0e0556154544fcac4a7771bda6de2e01a63d1be43bdf7a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp312-cp312-macosx_10_13_universal2.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8e2af2a82b23118f219115e03aba67a9a8d07390c9a225250ebebbff588c91e0
MD5 e5d65b4da74e1c5ecd1914558f08f209
BLAKE2b-256 b3bbbd1b44fc237480f43d8ed59d300352840800645e3125e6c5781511550e3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 87cb19c8fa017b5e082333efdd3702b790a40fe1c83264316904561fccd5d931
MD5 04111689f9cb8e559a2831f27659439e
BLAKE2b-256 3d385585ce1e9360111c461b4933b2b827bc3a9958ae38933ab68a597386436c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp311-cp311-macosx_10_9_universal2.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 24a9bea99b44754121eb0dcc9765acb5bd660b60705cc137eb9a886d401df6a7
MD5 03be93f3b1ede3d58b983ff7a9b632b0
BLAKE2b-256 76cab016c61038cc615be0503e8e04b4429d60f5bfa3ab8074ab9500c3a1d5d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 ec06c138d7210efe5ad308d7f8ddbca17451352a3cb8017c1957e491647e5872
MD5 2bcd2605f4bd72713c27337e9936065a
BLAKE2b-256 40b898f8ef69d4f964fc0bf99f5fc8713c4e7fb7cfa4d0e4ee416939e1ed40e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp310-cp310-macosx_10_9_universal2.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dca786a103156359b63f05c9e1d99dc2b71f3a1a26648d16498ad60248a0b51c
MD5 31b26908251e52fdabeb179ad6073169
BLAKE2b-256 180d29b927c32a3ef513b85d1fcb663b576698b949ff6236d82f06498ce3a451

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 1e902c6000252ac806b44e267e0c1a06d639a0c62f2ad6045b2446d664b96080
MD5 3c34d65050ae6f56cdf106918b91c0a9
BLAKE2b-256 01fa795b8957bb5e71245b4cd7c904843c4b8292cb23748a33ec4d7ff1f56b2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp39-cp39-macosx_10_9_universal2.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 710c0c269dbacc2e0e3c1239eecfa8abfbc59e2c4a5eb002bb603e5079a45c8a
MD5 6c367af101015d2fc186470f8f4bb44e
BLAKE2b-256 52519d00ab500f336ac615a07a5a7e80324fe463e1d4692154dd2c1f28a0aa2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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

File details

Details for the file pymasc-1.0.1-cp38-cp38-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pymasc-1.0.1-cp38-cp38-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 389a5c08c58fdb1bd70028b2d741bd894e67e1271290b0abcc8a69704fd7ed41
MD5 d6f7870a59c7564ed62e3676ab45679f
BLAKE2b-256 9be6f186d0cf9421663f10c9c918de475eb0df9bb170dbc317135aefc0814ac2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymasc-1.0.1-cp38-cp38-macosx_10_9_universal2.whl:

Publisher: publish-pypi.yml on ronin-gw/PyMaSC

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