pysylph


Namepysylph JSON
Version 0.1.2 PyPI version JSON
download
home_pagehttps://github.com/althonos/pysylph/
SummaryPyO3 bindings and Python interface to sylph, an ultrafast method for containment ANI querying and taxonomic profiling.
upload_time2024-11-05 00:41:11
maintainerNone
docs_urlNone
authorMartin Larralde <martin.larralde@embl.de>
requires_python>=3.7
licenseMIT
keywords bioinformatics genomics ani taxonomy profiling
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # πŸ•ŠοΈ Pysylph [![Stars](https://img.shields.io/github/stars/althonos/pysylph.svg?style=social&maxAge=3600&label=Star)](https://github.com/althonos/pysylph/stargazers)

*[PyO3](https://pyo3.rs/) bindings and Python interface to [sylph](https://github.com/bluenote-1577/sylph), an ultrafast method for containment ANI querying and taxonomic profiling.*

[![Actions](https://img.shields.io/github/actions/workflow/status/althonos/pysylph/test.yml?branch=main&logo=github&style=flat-square&maxAge=300)](https://github.com/althonos/pysylph/actions)
[![Coverage](https://img.shields.io/codecov/c/gh/althonos/pysylph/branch/main.svg?style=flat-square&maxAge=3600)](https://codecov.io/gh/althonos/pysylph/)
[![License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square&maxAge=2678400)](https://choosealicense.com/licenses/mit/)
[![PyPI](https://img.shields.io/pypi/v/pysylph.svg?style=flat-square&maxAge=3600)](https://pypi.org/project/pysylph)
[![Bioconda](https://img.shields.io/conda/vn/bioconda/pysylph?style=flat-square&maxAge=3600&logo=anaconda)](https://anaconda.org/bioconda/pysylph)
[![AUR](https://img.shields.io/aur/version/python-pysylph?logo=archlinux&style=flat-square&maxAge=3600)](https://aur.archlinux.org/packages/python-pysylph)
[![Wheel](https://img.shields.io/pypi/wheel/pysylph.svg?style=flat-square&maxAge=3600)](https://pypi.org/project/pysylph/#files)
[![Python Versions](https://img.shields.io/pypi/pyversions/pysylph.svg?style=flat-square&maxAge=600)](https://pypi.org/project/pysylph/#files)
[![Python Implementations](https://img.shields.io/pypi/implementation/pysylph.svg?style=flat-square&maxAge=600&label=impl)](https://pypi.org/project/pysylph/#files)
[![Source](https://img.shields.io/badge/source-GitHub-303030.svg?maxAge=2678400&style=flat-square)](https://github.com/althonos/pysylph/)
[![Mirror](https://img.shields.io/badge/mirror-LUMC-001158?style=flat-square&maxAge=2678400)](https://git.lumc.nl/mflarralde/pysylph/)
[![Issues](https://img.shields.io/github/issues/althonos/pysylph.svg?style=flat-square&maxAge=600)](https://github.com/althonos/pysylph/issues)
[![Docs](https://img.shields.io/readthedocs/pysylph/latest?style=flat-square&maxAge=600)](https://pysylph.readthedocs.io)
[![Changelog](https://img.shields.io/badge/keep%20a-changelog-8A0707.svg?maxAge=2678400&style=flat-square)](https://github.com/althonos/pysylph/blob/master/CHANGELOG.md)
[![Downloads](https://img.shields.io/pypi/dm/pysylph?style=flat-square&color=303f9f&maxAge=86400&label=downloads)](https://pepy.tech/project/pysylph)

## πŸ—ΊοΈ Overview

`sylph`[\[1\]](#ref1) is a method developed by [Jim Shaw](https://jim-shaw-bluenote.github.io/)
and [Yun William Yu](https://github.com/yunwilliamyu) for fast and robust
ANI querying or metagenomic profiling for metagenomic shotgun samples. It uses 
a statistical model based on Poisson coverage to compute coverage-adjusted ANI
instead of naive ANI. 

`pysylph` is a Python module, implemented using the [PyO3](https://pyo3.rs/)
framework, that provides bindings to `sylph`. It directly links to the
`sylph` code, which has the following advantages over CLI wrappers:

- **pre-built wheels**: `pysylph` is distributed on PyPI and features
  pre-built wheels for common platforms, including x86-64 and Arm64.
- **single dependency**: If your software or your analysis pipeline is
  distributed as a Python package, you can add `pysylph` as a dependency to
  your project, and stop worrying about the `sylph` binary being present on
  the end-user machine.
- **sans I/O**: Everything happens in memory, in Python objects you control,
  making it easier to pass your sequences to `pysylph` without having to write
  them to a temporary file.

*This library is still a work-in-progress, and in an experimental stage, with
API breaks very likely between minor versions*.


## πŸ”§ Installing

Pysylph can be installed directly from [PyPI](https://pypi.org/project/pysylph/),
which hosts some pre-built CPython wheels for x86-64 platforms, as well as the 
code required to compile from source with Rust and [maturin](https://www.maturin.rs/):
```console
$ pip install pysylph
```

## πŸ”– Citation

Pysylph is scientific software, and builds on top of `sylph`. Please cite 
[`sylph`](https://github.com/bluenote-1577/sylph) if you are using it in
an academic work, for instance as:

> `pysylph`, a Python library binding to `sylph` (Shaw & Yu, 2024).


## πŸ’‘ Examples

### πŸ”¨ Creating a database

A database is a collection of genomes sketched for fast querying. 

Here is how to create a database into memory, using 
[Biopython](https://github.com/biopython/biopython) to load genomes:

```python
sketcher = pysylph.Sketcher()
sketches = []

for path in pathlib.Path(".").glob("*.fasta"):
    contigs = [ str(record.seq) for record in Bio.SeqIO.parse(path, "fasta") ]
    sketch = sketcher.sketch_genome(name=path.stem, contigs=contigs)
    sketches.append(sketch)

database = pysylph.Database(sketches)
```

`Sketcher` methods are re-entrant and can be used to sketch multiple genomes
in parallel using for instance a [`ThreadPool`](https://docs.python.org/3/library/multiprocessing.html#multiprocessing.pool.ThreadPool).

### πŸ“ Saving a database

The database can be saved to the binary format used by the `sylph` binary as
well:

```python
database.dump("genomes.syldb")
```

### πŸ—’οΈ Loading a database

A database previously created with `sylph` can be loaded transparently in 
`pysylph`:

```python
database = pysylph.Database.load("genomes.syldb")
```

### πŸ“Š Sketching a query

Samples must also be sketched before they can be used to query a database.
Here is how to sketch a sample made of single-ended reads stored in FASTQ 
format:

```python
reads = [str(record.seq) for record in Bio.SeqIO.parse("sample.fastq", "fastq")]
sample = sketcher.sketch_single(name="sample", reads=reads)
```

### πŸ”¬ Querying a database

Once a sample has been sketched, it can be used to query a database for ANI
containment or taxonomic profiling:

```python
profiler = pysylph.Profiler()
results = profiler.query(sample, database)   # ANI containment
results = profiler.profile(sample, database) # taxonomic profiling
```

`Profiler` methods are re-entrant and can be used to query a database with
multiple samples in parallel using for instance a 
[`ThreadPool`](https://docs.python.org/3/library/multiprocessing.html#multiprocessing.pool.ThreadPool).

## πŸ”Ž See Also

Computing ANI for closed genomes? You may also be interested in
[`pyskani`, a Python package for computing ANI](https://github.com/althonos/pyskani) binding to [`skani`](https://github.com/bluenote-1577/skani), which
was developed by the same authors.

## πŸ’­ Feedback

### ⚠️ Issue Tracker

Found a bug ? Have an enhancement request ? Head over to the
[GitHub issue tracker](https://github.com/althonos/pysylph/issues) if you need
to report or ask something. If you are filing in on a bug, please include as
much information as you can about the issue, and try to recreate the same bug
in a simple, easily reproducible situation.

### πŸ—οΈ Contributing

Contributions are more than welcome! See
[`CONTRIBUTING.md`](https://github.com/althonos/pysylph/blob/master/CONTRIBUTING.md)
for more details.


## βš–οΈ License

This library is provided under the [MIT License](https://choosealicense.com/licenses/mit/). 
It contains some code included verbatim from the the `sylph` source code, which 
was written by [Jim Shaw](https://jim-shaw-bluenote.github.io/) and is distributed 
under the terms of the [MIT License](https://choosealicense.com/licenses/mit/)
as well. Source distributions of `pysylph` vendors additional sources under their 
own terms using the [`cargo vendor`](https://doc.rust-lang.org/cargo/commands/cargo-vendor.html)
command.

*This project is in no way not affiliated, sponsored, or otherwise endorsed
by the [original `sylph` authors](https://jim-shaw-bluenote.github.io/).
It was developed by [Martin Larralde](https://github.com/althonos/) during his
PhD project at the [Leiden University Medical Center](https://www.lumc.nl/en/)
in the [Zeller team](https://github.com/zellerlab).*

## πŸ“š References

- <a id="ref1">\[1\]</a> Jim Shaw and Yun William Yu. Rapid species-level metagenome profiling and containment estimation with sylph (2024). Nature Biotechnology. [10.1038/s41587-024-02412-y](https://doi.org/10.1038/s41587-024-02412-y). [PMID:39379646](https://pubmed.ncbi.nlm.nih.gov/39379646)


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/althonos/pysylph/",
    "name": "pysylph",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "bioinformatics, genomics, ani, taxonomy, profiling",
    "author": "Martin Larralde <martin.larralde@embl.de>",
    "author_email": "Martin Larralde <martin.larralde@embl.de>",
    "download_url": "https://files.pythonhosted.org/packages/7e/94/c1978ee0e701d67dce58a1375a28deb8ba794247fe75cfbe9cc580a5fcaf/pysylph-0.1.2.tar.gz",
    "platform": null,
    "description": "# \ud83d\udd4a\ufe0f Pysylph [![Stars](https://img.shields.io/github/stars/althonos/pysylph.svg?style=social&maxAge=3600&label=Star)](https://github.com/althonos/pysylph/stargazers)\n\n*[PyO3](https://pyo3.rs/) bindings and Python interface to [sylph](https://github.com/bluenote-1577/sylph), an ultrafast method for containment ANI querying and taxonomic profiling.*\n\n[![Actions](https://img.shields.io/github/actions/workflow/status/althonos/pysylph/test.yml?branch=main&logo=github&style=flat-square&maxAge=300)](https://github.com/althonos/pysylph/actions)\n[![Coverage](https://img.shields.io/codecov/c/gh/althonos/pysylph/branch/main.svg?style=flat-square&maxAge=3600)](https://codecov.io/gh/althonos/pysylph/)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square&maxAge=2678400)](https://choosealicense.com/licenses/mit/)\n[![PyPI](https://img.shields.io/pypi/v/pysylph.svg?style=flat-square&maxAge=3600)](https://pypi.org/project/pysylph)\n[![Bioconda](https://img.shields.io/conda/vn/bioconda/pysylph?style=flat-square&maxAge=3600&logo=anaconda)](https://anaconda.org/bioconda/pysylph)\n[![AUR](https://img.shields.io/aur/version/python-pysylph?logo=archlinux&style=flat-square&maxAge=3600)](https://aur.archlinux.org/packages/python-pysylph)\n[![Wheel](https://img.shields.io/pypi/wheel/pysylph.svg?style=flat-square&maxAge=3600)](https://pypi.org/project/pysylph/#files)\n[![Python Versions](https://img.shields.io/pypi/pyversions/pysylph.svg?style=flat-square&maxAge=600)](https://pypi.org/project/pysylph/#files)\n[![Python Implementations](https://img.shields.io/pypi/implementation/pysylph.svg?style=flat-square&maxAge=600&label=impl)](https://pypi.org/project/pysylph/#files)\n[![Source](https://img.shields.io/badge/source-GitHub-303030.svg?maxAge=2678400&style=flat-square)](https://github.com/althonos/pysylph/)\n[![Mirror](https://img.shields.io/badge/mirror-LUMC-001158?style=flat-square&maxAge=2678400)](https://git.lumc.nl/mflarralde/pysylph/)\n[![Issues](https://img.shields.io/github/issues/althonos/pysylph.svg?style=flat-square&maxAge=600)](https://github.com/althonos/pysylph/issues)\n[![Docs](https://img.shields.io/readthedocs/pysylph/latest?style=flat-square&maxAge=600)](https://pysylph.readthedocs.io)\n[![Changelog](https://img.shields.io/badge/keep%20a-changelog-8A0707.svg?maxAge=2678400&style=flat-square)](https://github.com/althonos/pysylph/blob/master/CHANGELOG.md)\n[![Downloads](https://img.shields.io/pypi/dm/pysylph?style=flat-square&color=303f9f&maxAge=86400&label=downloads)](https://pepy.tech/project/pysylph)\n\n## \ud83d\uddfa\ufe0f Overview\n\n`sylph`[\\[1\\]](#ref1) is a method developed by [Jim Shaw](https://jim-shaw-bluenote.github.io/)\nand [Yun William Yu](https://github.com/yunwilliamyu) for fast and robust\nANI querying or metagenomic profiling for metagenomic shotgun samples. It uses \na statistical model based on Poisson coverage to compute coverage-adjusted ANI\ninstead of naive ANI. \n\n`pysylph` is a Python module, implemented using the [PyO3](https://pyo3.rs/)\nframework, that provides bindings to `sylph`. It directly links to the\n`sylph` code, which has the following advantages over CLI wrappers:\n\n- **pre-built wheels**: `pysylph` is distributed on PyPI and features\n  pre-built wheels for common platforms, including x86-64 and Arm64.\n- **single dependency**: If your software or your analysis pipeline is\n  distributed as a Python package, you can add `pysylph` as a dependency to\n  your project, and stop worrying about the `sylph` binary being present on\n  the end-user machine.\n- **sans I/O**: Everything happens in memory, in Python objects you control,\n  making it easier to pass your sequences to `pysylph` without having to write\n  them to a temporary file.\n\n*This library is still a work-in-progress, and in an experimental stage, with\nAPI breaks very likely between minor versions*.\n\n\n## \ud83d\udd27 Installing\n\nPysylph can be installed directly from [PyPI](https://pypi.org/project/pysylph/),\nwhich hosts some pre-built CPython wheels for x86-64 platforms, as well as the \ncode required to compile from source with Rust and [maturin](https://www.maturin.rs/):\n```console\n$ pip install pysylph\n```\n\n## \ud83d\udd16 Citation\n\nPysylph is scientific software, and builds on top of `sylph`. Please cite \n[`sylph`](https://github.com/bluenote-1577/sylph) if you are using it in\nan academic work, for instance as:\n\n> `pysylph`, a Python library binding to `sylph` (Shaw & Yu, 2024).\n\n\n## \ud83d\udca1 Examples\n\n### \ud83d\udd28 Creating a database\n\nA database is a collection of genomes sketched for fast querying. \n\nHere is how to create a database into memory, using \n[Biopython](https://github.com/biopython/biopython) to load genomes:\n\n```python\nsketcher = pysylph.Sketcher()\nsketches = []\n\nfor path in pathlib.Path(\".\").glob(\"*.fasta\"):\n    contigs = [ str(record.seq) for record in Bio.SeqIO.parse(path, \"fasta\") ]\n    sketch = sketcher.sketch_genome(name=path.stem, contigs=contigs)\n    sketches.append(sketch)\n\ndatabase = pysylph.Database(sketches)\n```\n\n`Sketcher` methods are re-entrant and can be used to sketch multiple genomes\nin parallel using for instance a [`ThreadPool`](https://docs.python.org/3/library/multiprocessing.html#multiprocessing.pool.ThreadPool).\n\n### \ud83d\udcdd Saving a database\n\nThe database can be saved to the binary format used by the `sylph` binary as\nwell:\n\n```python\ndatabase.dump(\"genomes.syldb\")\n```\n\n### \ud83d\uddd2\ufe0f Loading a database\n\nA database previously created with `sylph` can be loaded transparently in \n`pysylph`:\n\n```python\ndatabase = pysylph.Database.load(\"genomes.syldb\")\n```\n\n### \ud83d\udcca Sketching a query\n\nSamples must also be sketched before they can be used to query a database.\nHere is how to sketch a sample made of single-ended reads stored in FASTQ \nformat:\n\n```python\nreads = [str(record.seq) for record in Bio.SeqIO.parse(\"sample.fastq\", \"fastq\")]\nsample = sketcher.sketch_single(name=\"sample\", reads=reads)\n```\n\n### \ud83d\udd2c Querying a database\n\nOnce a sample has been sketched, it can be used to query a database for ANI\ncontainment or taxonomic profiling:\n\n```python\nprofiler = pysylph.Profiler()\nresults = profiler.query(sample, database)   # ANI containment\nresults = profiler.profile(sample, database) # taxonomic profiling\n```\n\n`Profiler` methods are re-entrant and can be used to query a database with\nmultiple samples in parallel using for instance a \n[`ThreadPool`](https://docs.python.org/3/library/multiprocessing.html#multiprocessing.pool.ThreadPool).\n\n## \ud83d\udd0e See Also\n\nComputing ANI for closed genomes? You may also be interested in\n[`pyskani`, a Python package for computing ANI](https://github.com/althonos/pyskani) binding to [`skani`](https://github.com/bluenote-1577/skani), which\nwas developed by the same authors.\n\n## \ud83d\udcad Feedback\n\n### \u26a0\ufe0f Issue Tracker\n\nFound a bug ? Have an enhancement request ? Head over to the\n[GitHub issue tracker](https://github.com/althonos/pysylph/issues) if you need\nto report or ask something. If you are filing in on a bug, please include as\nmuch information as you can about the issue, and try to recreate the same bug\nin a simple, easily reproducible situation.\n\n### \ud83c\udfd7\ufe0f Contributing\n\nContributions are more than welcome! See\n[`CONTRIBUTING.md`](https://github.com/althonos/pysylph/blob/master/CONTRIBUTING.md)\nfor more details.\n\n\n## \u2696\ufe0f License\n\nThis library is provided under the [MIT License](https://choosealicense.com/licenses/mit/). \nIt contains some code included verbatim from the the `sylph` source code, which \nwas written by [Jim Shaw](https://jim-shaw-bluenote.github.io/) and is distributed \nunder the terms of the [MIT License](https://choosealicense.com/licenses/mit/)\nas well. Source distributions of `pysylph` vendors additional sources under their \nown terms using the [`cargo vendor`](https://doc.rust-lang.org/cargo/commands/cargo-vendor.html)\ncommand.\n\n*This project is in no way not affiliated, sponsored, or otherwise endorsed\nby the [original `sylph` authors](https://jim-shaw-bluenote.github.io/).\nIt was developed by [Martin Larralde](https://github.com/althonos/) during his\nPhD project at the [Leiden University Medical Center](https://www.lumc.nl/en/)\nin the [Zeller team](https://github.com/zellerlab).*\n\n## \ud83d\udcda References\n\n- <a id=\"ref1\">\\[1\\]</a> Jim Shaw and Yun William Yu. Rapid species-level metagenome profiling and containment estimation with sylph (2024). Nature Biotechnology. [10.1038/s41587-024-02412-y](https://doi.org/10.1038/s41587-024-02412-y). [PMID:39379646](https://pubmed.ncbi.nlm.nih.gov/39379646)\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "PyO3 bindings and Python interface to sylph, an ultrafast method for containment ANI querying and taxonomic profiling.",
    "version": "0.1.2",
    "project_urls": {
        "Bug Tracker": "https://github.com/althonos/pysylph/issues",
        "Builds": "https://github.com/althonos/pysylph/actions/",
        "Changelog": "https://github.com/althonos/pysylph/blob/master/CHANGELOG.md",
        "Documentation": "https://pysylph.readthedocs.io",
        "Homepage": "https://github.com/althonos/pysylph/",
        "PyPI": "https://pypi.org/project/pysylph"
    },
    "split_keywords": [
        "bioinformatics",
        " genomics",
        " ani",
        " taxonomy",
        " profiling"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9124041028e4cdd015308dd64c7a704a02fb2caee6d8c91df3f93dbabc15be4e",
                "md5": "b429bbb0c9e4040d634fed1282ff06e7",
                "sha256": "c11362314917b4f877f1cd70da71746652ed3c8e51ec5830770d01ea960087b9"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp310-cp310-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "b429bbb0c9e4040d634fed1282ff06e7",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 1402134,
            "upload_time": "2024-11-05T00:39:50",
            "upload_time_iso_8601": "2024-11-05T00:39:50.004410Z",
            "url": "https://files.pythonhosted.org/packages/91/24/041028e4cdd015308dd64c7a704a02fb2caee6d8c91df3f93dbabc15be4e/pysylph-0.1.2-cp310-cp310-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f9613e3ac11e8d60dc445513f99f919e7f3f202a70cdb767fe0b38ce84b5a4bc",
                "md5": "e8121370350bd0cf87f12c3316b2c1ae",
                "sha256": "5e60ac8c7eae818362cbf3a03ca9701546f3010daed0d53e7dfcf401f88b7909"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "e8121370350bd0cf87f12c3316b2c1ae",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 1389371,
            "upload_time": "2024-11-05T00:39:52",
            "upload_time_iso_8601": "2024-11-05T00:39:52.442687Z",
            "url": "https://files.pythonhosted.org/packages/f9/61/3e3ac11e8d60dc445513f99f919e7f3f202a70cdb767fe0b38ce84b5a4bc/pysylph-0.1.2-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ce58c9d6526daf43af2918a88b00db6698d95942cf9e33607b5af2593d8d1c5d",
                "md5": "d3868f981f76e3d5b228b868de0751af",
                "sha256": "9c8a5740ef0521379c0cfda98e485eeaf80dedcb4b83c65cd07f53e0812de467"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "d3868f981f76e3d5b228b868de0751af",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 1446931,
            "upload_time": "2024-11-05T00:39:54",
            "upload_time_iso_8601": "2024-11-05T00:39:54.833828Z",
            "url": "https://files.pythonhosted.org/packages/ce/58/c9d6526daf43af2918a88b00db6698d95942cf9e33607b5af2593d8d1c5d/pysylph-0.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "855c663bda037984ad6e12c32fd80f9db33dff9aedab99c471cef0280f20e96b",
                "md5": "0c4058306d321db8dcebfbfb828026cf",
                "sha256": "ac315614ce535798063953d86946ccf6af6102dba69127567709c1452c3f8371"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0c4058306d321db8dcebfbfb828026cf",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 1458708,
            "upload_time": "2024-11-05T00:39:57",
            "upload_time_iso_8601": "2024-11-05T00:39:57.264692Z",
            "url": "https://files.pythonhosted.org/packages/85/5c/663bda037984ad6e12c32fd80f9db33dff9aedab99c471cef0280f20e96b/pysylph-0.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "607722621d1d8471d8a8a07069d1c75fd79659d6f7deab9d0df909d6dd537e6b",
                "md5": "b34279099cc6e4a3468417bccb73c873",
                "sha256": "cc523c86af6690b920078949924f89932172dd794b2cef71911ef91aaed16df5"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp310-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "b34279099cc6e4a3468417bccb73c873",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 1400499,
            "upload_time": "2024-11-05T00:40:10",
            "upload_time_iso_8601": "2024-11-05T00:40:10.808130Z",
            "url": "https://files.pythonhosted.org/packages/60/77/22621d1d8471d8a8a07069d1c75fd79659d6f7deab9d0df909d6dd537e6b/pysylph-0.1.2-cp310-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e445c2b637849488fc15b2092558c108cce45584250eab23f993bb6f0aca81d6",
                "md5": "0d4673fe020f1de4e4dc8f34ffb15dc2",
                "sha256": "0e89ccf265d02007c8940459ae58cf5b1e99cc0dfbb189101a5f40e77a612406"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp311-cp311-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0d4673fe020f1de4e4dc8f34ffb15dc2",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 1402257,
            "upload_time": "2024-11-05T00:40:13",
            "upload_time_iso_8601": "2024-11-05T00:40:13.314344Z",
            "url": "https://files.pythonhosted.org/packages/e4/45/c2b637849488fc15b2092558c108cce45584250eab23f993bb6f0aca81d6/pysylph-0.1.2-cp311-cp311-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0b839f8d0feb0fe3776434fd9c2f5206a9d5e6eae3c90c147b3980dee6817b24",
                "md5": "511302fe5b0c059cf1a8ec17bf035dd4",
                "sha256": "5e45c33ccca4a23d370feafcb326482a59cecce9959ddb06f9360640f590f712"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "511302fe5b0c059cf1a8ec17bf035dd4",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 1389144,
            "upload_time": "2024-11-05T00:40:15",
            "upload_time_iso_8601": "2024-11-05T00:40:15.745085Z",
            "url": "https://files.pythonhosted.org/packages/0b/83/9f8d0feb0fe3776434fd9c2f5206a9d5e6eae3c90c147b3980dee6817b24/pysylph-0.1.2-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b3ecd3d61093b73d9e234380dfdea659d5ce64105442eadcda4a41f6d33320ca",
                "md5": "773bc7b7ce0040fb7851c53316d9650e",
                "sha256": "942b2c9560989a5bcc0cdba9e649635bec94393e1641e1ceefe177712d1477f1"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "773bc7b7ce0040fb7851c53316d9650e",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 1447703,
            "upload_time": "2024-11-05T00:40:17",
            "upload_time_iso_8601": "2024-11-05T00:40:17.523755Z",
            "url": "https://files.pythonhosted.org/packages/b3/ec/d3d61093b73d9e234380dfdea659d5ce64105442eadcda4a41f6d33320ca/pysylph-0.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a527fedf0a5b3c75bfd80abe6972b7ce4926b29e4701e67e6a542d8af192f71b",
                "md5": "e3a7adcd531272e55e3daac79b71734b",
                "sha256": "6d98fec7b74d511bc24e0e94fef45643d01a6f70c36e18159f5190e362fb59fb"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e3a7adcd531272e55e3daac79b71734b",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 1458583,
            "upload_time": "2024-11-05T00:40:19",
            "upload_time_iso_8601": "2024-11-05T00:40:19.120195Z",
            "url": "https://files.pythonhosted.org/packages/a5/27/fedf0a5b3c75bfd80abe6972b7ce4926b29e4701e67e6a542d8af192f71b/pysylph-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "341b51ec104d3162b187f98853feccde564c25ad7aa5360cad34facd83e6ad4a",
                "md5": "54091fa399c61e4701274bb101cb3ca2",
                "sha256": "f145e94309e6924165fc8ca3d4830d26a43e9aa75539526fd6972594520f9740"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp311-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "54091fa399c61e4701274bb101cb3ca2",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 1400100,
            "upload_time": "2024-11-05T00:40:21",
            "upload_time_iso_8601": "2024-11-05T00:40:21.643899Z",
            "url": "https://files.pythonhosted.org/packages/34/1b/51ec104d3162b187f98853feccde564c25ad7aa5360cad34facd83e6ad4a/pysylph-0.1.2-cp311-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ec213588e4d532a9e94ab8d4c54b0cde6a361be8aab4cc9241cd04983d5d98e4",
                "md5": "df5694a74ac6c067e5c32a1c51ab04bd",
                "sha256": "f4756f461e69e493874111155ccc79094fe705c6326e720744864042b7b21fcd"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp312-cp312-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "df5694a74ac6c067e5c32a1c51ab04bd",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 1402880,
            "upload_time": "2024-11-05T00:40:23",
            "upload_time_iso_8601": "2024-11-05T00:40:23.951688Z",
            "url": "https://files.pythonhosted.org/packages/ec/21/3588e4d532a9e94ab8d4c54b0cde6a361be8aab4cc9241cd04983d5d98e4/pysylph-0.1.2-cp312-cp312-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "917959607d6e20773391cb2e29894691d27fafa2c27253f56472180bbd5a148e",
                "md5": "c1ac7617e8bdaa8f5a677a1566304d09",
                "sha256": "b54dd67e6f25e1e25d463c539ad2f590dfab7f93d5672cf7595eacfbf4601049"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "c1ac7617e8bdaa8f5a677a1566304d09",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 1388679,
            "upload_time": "2024-11-05T00:40:26",
            "upload_time_iso_8601": "2024-11-05T00:40:26.460908Z",
            "url": "https://files.pythonhosted.org/packages/91/79/59607d6e20773391cb2e29894691d27fafa2c27253f56472180bbd5a148e/pysylph-0.1.2-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a79e8c1f20fbe59c37ee9c394b067bec34668537ad93878fc72eb760943e94ae",
                "md5": "095748c31c1f7e36d432c9143922d09e",
                "sha256": "06bd7bdf4f1d3d200962b6e800799e419166ef2ab9d87526d3c769155fa34fcd"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "095748c31c1f7e36d432c9143922d09e",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 1448518,
            "upload_time": "2024-11-05T00:40:28",
            "upload_time_iso_8601": "2024-11-05T00:40:28.171347Z",
            "url": "https://files.pythonhosted.org/packages/a7/9e/8c1f20fbe59c37ee9c394b067bec34668537ad93878fc72eb760943e94ae/pysylph-0.1.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0305265a1a6cdedb65bf849aff1e8c8ce3b8e405e2f4456cbfa97d90fcf1449b",
                "md5": "14d5aca2f153ee1e5bd657f352e98538",
                "sha256": "cb991943af3ed1891fe32a20dca823991fb06e493967da3ce1199ed92b422d85"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "14d5aca2f153ee1e5bd657f352e98538",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 1459146,
            "upload_time": "2024-11-05T00:40:30",
            "upload_time_iso_8601": "2024-11-05T00:40:30.703405Z",
            "url": "https://files.pythonhosted.org/packages/03/05/265a1a6cdedb65bf849aff1e8c8ce3b8e405e2f4456cbfa97d90fcf1449b/pysylph-0.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "62be76eb47e10b54c3e77ecd7362aad920c54dcb95421cde1922b26549de6e9f",
                "md5": "6a4c671880b705ac8355b07ba4a18a89",
                "sha256": "e7e36d98de76a5ebe7e849b4ffc492dfbee6e79b2e4cfff17e87e7bba757614e"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp312-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "6a4c671880b705ac8355b07ba4a18a89",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 1400285,
            "upload_time": "2024-11-05T00:40:32",
            "upload_time_iso_8601": "2024-11-05T00:40:32.956380Z",
            "url": "https://files.pythonhosted.org/packages/62/be/76eb47e10b54c3e77ecd7362aad920c54dcb95421cde1922b26549de6e9f/pysylph-0.1.2-cp312-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "aea020f36b7e8047514b7311216033addc4dd4cf8d5de7cd76de93c60af6c1b4",
                "md5": "c5a469df136a86b6dc71ca03b5080d36",
                "sha256": "fa3b7415cb47b51a8195e291143d8ddca5ccd2f9b1c14f8178c8d06b6a3468b6"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp313-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "c5a469df136a86b6dc71ca03b5080d36",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 1400034,
            "upload_time": "2024-11-05T00:40:35",
            "upload_time_iso_8601": "2024-11-05T00:40:35.164799Z",
            "url": "https://files.pythonhosted.org/packages/ae/a0/20f36b7e8047514b7311216033addc4dd4cf8d5de7cd76de93c60af6c1b4/pysylph-0.1.2-cp313-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "57542cfe01111c8d4b3684416de02d36964030b21f358d326b391ea824f4b1ee",
                "md5": "f60ea18f12640908cae1f0728c3857f7",
                "sha256": "8c8d1a4d51d04bef58ea62620d6877ace43ac2c7fb7e722d81e63795578734b9"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "f60ea18f12640908cae1f0728c3857f7",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.7",
            "size": 1448801,
            "upload_time": "2024-11-05T00:40:37",
            "upload_time_iso_8601": "2024-11-05T00:40:37.485566Z",
            "url": "https://files.pythonhosted.org/packages/57/54/2cfe01111c8d4b3684416de02d36964030b21f358d326b391ea824f4b1ee/pysylph-0.1.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "dbeed9e4503c7cd3a8c68adbd0e0675424571358008cf45812fdb03601cbb722",
                "md5": "baab08a767b4fb65f3aa69cddaeb152e",
                "sha256": "757117aff4cc76d368c72cc6f14a3ed1bb73eba217f412605dd3d8f7208b71c2"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "baab08a767b4fb65f3aa69cddaeb152e",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.7",
            "size": 1460178,
            "upload_time": "2024-11-05T00:40:39",
            "upload_time_iso_8601": "2024-11-05T00:40:39.259292Z",
            "url": "https://files.pythonhosted.org/packages/db/ee/d9e4503c7cd3a8c68adbd0e0675424571358008cf45812fdb03601cbb722/pysylph-0.1.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f35401215002ddbe2ce20ccba02d506e6fb543047bd6bdeed618dfb6a228061e",
                "md5": "e6441ae19624a904dabdcd0c345f3050",
                "sha256": "966b4c8dd53438cb2918969599fa08aae5467800dbda6764ecbf7891f7f6ab5d"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp37-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "e6441ae19624a904dabdcd0c345f3050",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.7",
            "size": 1401369,
            "upload_time": "2024-11-05T00:40:41",
            "upload_time_iso_8601": "2024-11-05T00:40:41.741317Z",
            "url": "https://files.pythonhosted.org/packages/f3/54/01215002ddbe2ce20ccba02d506e6fb543047bd6bdeed618dfb6a228061e/pysylph-0.1.2-cp37-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "69675f475fe684d7cb0d681448166351eaabb0566f502085a87bcd2d46bb323e",
                "md5": "1e87bbde774557eaae039002f66e9b66",
                "sha256": "d42c418a4db94b731faaa45928daf66a0fa26318a6dde4a764aad60f56b3fd45"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "1e87bbde774557eaae039002f66e9b66",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 1448341,
            "upload_time": "2024-11-05T00:40:43",
            "upload_time_iso_8601": "2024-11-05T00:40:43.982969Z",
            "url": "https://files.pythonhosted.org/packages/69/67/5f475fe684d7cb0d681448166351eaabb0566f502085a87bcd2d46bb323e/pysylph-0.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1630348ec7afc1b550946c6121ef0f25852cdd4382ed9eadc4dabba00b9141e6",
                "md5": "91fdc5489e99fe5a810d69396ee7ee23",
                "sha256": "58e04e5f500c67436cd483c777c3f082d50f66d4f3ad2e18c2b717b2f5a6d548"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "91fdc5489e99fe5a810d69396ee7ee23",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 1459601,
            "upload_time": "2024-11-05T00:40:46",
            "upload_time_iso_8601": "2024-11-05T00:40:46.381550Z",
            "url": "https://files.pythonhosted.org/packages/16/30/348ec7afc1b550946c6121ef0f25852cdd4382ed9eadc4dabba00b9141e6/pysylph-0.1.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4e8ea0e9f68b94f90d0d1919e3744800d74b5e310f271502576b96ec290d074d",
                "md5": "73b5d9a32b7e05f237cc9046f2cc0b62",
                "sha256": "0f12f07424d7289a4fd549b36ea8ca8d6b9066a28da6891bd238efc92d4b3776"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp38-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "73b5d9a32b7e05f237cc9046f2cc0b62",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 1401128,
            "upload_time": "2024-11-05T00:40:48",
            "upload_time_iso_8601": "2024-11-05T00:40:48.521059Z",
            "url": "https://files.pythonhosted.org/packages/4e/8e/a0e9f68b94f90d0d1919e3744800d74b5e310f271502576b96ec290d074d/pysylph-0.1.2-cp38-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "31e6b0c85eaf84370695c8803b1a86d77f56f75b499d1d3573483fecee8ef3af",
                "md5": "b3f0d544d4631b98d73d8df8ee7e0cd8",
                "sha256": "8024f780517ceb8567daa1d10c5589e41a8d61f434e3137023a711d3b123c460"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp39-cp39-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "b3f0d544d4631b98d73d8df8ee7e0cd8",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 1403133,
            "upload_time": "2024-11-05T00:40:50",
            "upload_time_iso_8601": "2024-11-05T00:40:50.303321Z",
            "url": "https://files.pythonhosted.org/packages/31/e6/b0c85eaf84370695c8803b1a86d77f56f75b499d1d3573483fecee8ef3af/pysylph-0.1.2-cp39-cp39-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "51772738bd499645bc4a23698be4ee023d736bb61b1d29ce44cc950927af9e5b",
                "md5": "c69674e9a360c24e961ddf025d879f0f",
                "sha256": "407431845733b3fb0aef10ad1e44b25939ccfbe11c2810621caf117e59e465c4"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "c69674e9a360c24e961ddf025d879f0f",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 1389979,
            "upload_time": "2024-11-05T00:40:52",
            "upload_time_iso_8601": "2024-11-05T00:40:52.898278Z",
            "url": "https://files.pythonhosted.org/packages/51/77/2738bd499645bc4a23698be4ee023d736bb61b1d29ce44cc950927af9e5b/pysylph-0.1.2-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "493e13cd6e44b18044d0bb5a7d86b7540e15787f15f868deecd229d609dc4eb9",
                "md5": "440c1b8ffdbfb103f4bda23b80b1b307",
                "sha256": "6d8dc9824b4e2306ed2e349ffcd5787bf39399e1b83857085853c3e2eba7c08b"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "440c1b8ffdbfb103f4bda23b80b1b307",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 1448142,
            "upload_time": "2024-11-05T00:40:55",
            "upload_time_iso_8601": "2024-11-05T00:40:55.247852Z",
            "url": "https://files.pythonhosted.org/packages/49/3e/13cd6e44b18044d0bb5a7d86b7540e15787f15f868deecd229d609dc4eb9/pysylph-0.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f316b8ffefb4470ff969abf134ae7d7bcc83966f25a4f8a892b16a10e3058bb1",
                "md5": "4a50d8d2be65c2101d0a19364e6fe411",
                "sha256": "92f5922d82a6fdde196d5f99f133d240da0376eb429331332a04add9d832b6eb"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "4a50d8d2be65c2101d0a19364e6fe411",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 1460009,
            "upload_time": "2024-11-05T00:40:57",
            "upload_time_iso_8601": "2024-11-05T00:40:57.523201Z",
            "url": "https://files.pythonhosted.org/packages/f3/16/b8ffefb4470ff969abf134ae7d7bcc83966f25a4f8a892b16a10e3058bb1/pysylph-0.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "287690baa6ab355ab74201261fa0e6124cde9afd95cf1c50b5bd69d83074c202",
                "md5": "a51aeaa6e2cb3a85335fa79be4a267e0",
                "sha256": "7d25a02e8e6e02baf316125ca68af91f918851ca82fcc6a75696a008e280eaa2"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-cp39-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "a51aeaa6e2cb3a85335fa79be4a267e0",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 1401407,
            "upload_time": "2024-11-05T00:40:59",
            "upload_time_iso_8601": "2024-11-05T00:40:59.413517Z",
            "url": "https://files.pythonhosted.org/packages/28/76/90baa6ab355ab74201261fa0e6124cde9afd95cf1c50b5bd69d83074c202/pysylph-0.1.2-cp39-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4dd857639b4db58fc3e43eff6035bbb989367b93a3072de3a13237cf2c95a5dc",
                "md5": "34194e319dc9e4c5c3cbb39048ecde0d",
                "sha256": "78cffa2409bb306efc14dae02c2e51c9da88f7ffe2b47f3426d5f13a41d6a3ec"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "34194e319dc9e4c5c3cbb39048ecde0d",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.7",
            "size": 1449205,
            "upload_time": "2024-11-05T00:41:01",
            "upload_time_iso_8601": "2024-11-05T00:41:01.255523Z",
            "url": "https://files.pythonhosted.org/packages/4d/d8/57639b4db58fc3e43eff6035bbb989367b93a3072de3a13237cf2c95a5dc/pysylph-0.1.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a20a06382c17464fb3c467653bceda808ab22931c428df647446d69c3a5bb8f7",
                "md5": "13741712bd4a78927b9b4d4eca903b64",
                "sha256": "785b5b74a5d1c10e395823475f498616a229c8cfb6e8d92dac50d7237c6a9db9"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "13741712bd4a78927b9b4d4eca903b64",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.7",
            "size": 1459533,
            "upload_time": "2024-11-05T00:41:03",
            "upload_time_iso_8601": "2024-11-05T00:41:03.402887Z",
            "url": "https://files.pythonhosted.org/packages/a2/0a/06382c17464fb3c467653bceda808ab22931c428df647446d69c3a5bb8f7/pysylph-0.1.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "89c704118b3f5d983d254c2170e49c322ed89d7248a25fbc3998c27a92ab180a",
                "md5": "831e01606bc97cf7f19129b8400ad2f0",
                "sha256": "142cc172686e6c5e9ef806002fbd965b6537eea5a33704d9ee3e9cd5571bd927"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "831e01606bc97cf7f19129b8400ad2f0",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.7",
            "size": 1452079,
            "upload_time": "2024-11-05T00:41:05",
            "upload_time_iso_8601": "2024-11-05T00:41:05.557698Z",
            "url": "https://files.pythonhosted.org/packages/89/c7/04118b3f5d983d254c2170e49c322ed89d7248a25fbc3998c27a92ab180a/pysylph-0.1.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "34277ae172f414c388abddfddce3993e658d36c7327de7b987259b30dfb16840",
                "md5": "6a1ee636787ecdb7208013900fff94b6",
                "sha256": "b6e5d8e4c6eea247133719e5b9daa79258c6984e349a62077e086df0b46d34d3"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "6a1ee636787ecdb7208013900fff94b6",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.7",
            "size": 1449348,
            "upload_time": "2024-11-05T00:41:07",
            "upload_time_iso_8601": "2024-11-05T00:41:07.578984Z",
            "url": "https://files.pythonhosted.org/packages/34/27/7ae172f414c388abddfddce3993e658d36c7327de7b987259b30dfb16840/pysylph-0.1.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c80fc457e2bb82dd3c94f1455870c17ae7e78bc09b1614d36e1713c17e577925",
                "md5": "7bb1ca8ebf54a67e48d2d0ff3e94a6f3",
                "sha256": "ee9e8dbf386d3ff1173e12108036704f121e30ca9ad327ddf11e2d0966cc767c"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "7bb1ca8ebf54a67e48d2d0ff3e94a6f3",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.7",
            "size": 1449163,
            "upload_time": "2024-11-05T00:41:09",
            "upload_time_iso_8601": "2024-11-05T00:41:09.982992Z",
            "url": "https://files.pythonhosted.org/packages/c8/0f/c457e2bb82dd3c94f1455870c17ae7e78bc09b1614d36e1713c17e577925/pysylph-0.1.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7e94c1978ee0e701d67dce58a1375a28deb8ba794247fe75cfbe9cc580a5fcaf",
                "md5": "c929e5b9ed440eb232db0ad05979d3e3",
                "sha256": "43d58e3cd22a97d4bfbaa1f3682d1bdb2d13dab44ad66ddaa6bd8374a5361d30"
            },
            "downloads": -1,
            "filename": "pysylph-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "c929e5b9ed440eb232db0ad05979d3e3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 1029482,
            "upload_time": "2024-11-05T00:41:11",
            "upload_time_iso_8601": "2024-11-05T00:41:11.727874Z",
            "url": "https://files.pythonhosted.org/packages/7e/94/c1978ee0e701d67dce58a1375a28deb8ba794247fe75cfbe9cc580a5fcaf/pysylph-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-05 00:41:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "althonos",
    "github_project": "pysylph",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pysylph"
}
        
Elapsed time: 0.39559s