pyrodigal


Namepyrodigal JSON
Version 3.5.1 PyPI version JSON
download
home_pagehttps://github.com/althonos/pyrodigal
SummaryCython bindings and Python interface to Prodigal, an ORF finder for genomes and metagenomes.
upload_time2024-07-17 20:48:17
maintainerNone
docs_urlNone
authorMartin Larralde
requires_python>=3.6
licenseGPL-3.0-only
keywords bioinformatics genome orf gene prodigal
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # πŸ”₯ Pyrodigal [![Stars](https://img.shields.io/github/stars/althonos/pyrodigal.svg?style=social&maxAge=3600&label=Star)](https://github.com/althonos/pyrodigal/stargazers)

*Cython bindings and Python interface to [Prodigal](https://github.com/hyattpd/Prodigal/), an ORF
finder for genomes and metagenomes. **Now with SIMD!***

[![Actions](https://img.shields.io/github/actions/workflow/status/althonos/pyrodigal/test.yml?branch=main&logo=github&style=flat-square&maxAge=300)](https://github.com/althonos/pyrodigal/actions)
[![Coverage](https://img.shields.io/codecov/c/gh/althonos/pyrodigal?style=flat-square&maxAge=3600&logo=codecov)](https://codecov.io/gh/althonos/pyrodigal/)
[![License](https://img.shields.io/badge/license-GPLv3-blue.svg?style=flat-square&maxAge=2678400)](https://choosealicense.com/licenses/gpl-3.0/)
[![PyPI](https://img.shields.io/pypi/v/pyrodigal.svg?style=flat-square&maxAge=3600&logo=PyPI)](https://pypi.org/project/pyrodigal)
[![Bioconda](https://img.shields.io/conda/vn/bioconda/pyrodigal?style=flat-square&maxAge=3600&logo=anaconda)](https://anaconda.org/bioconda/pyrodigal)
[![AUR](https://img.shields.io/aur/version/python-pyrodigal?logo=archlinux&style=flat-square&maxAge=3600)](https://aur.archlinux.org/packages/python-pyrodigal)
[![Wheel](https://img.shields.io/pypi/wheel/pyrodigal.svg?style=flat-square&maxAge=3600)](https://pypi.org/project/pyrodigal/#files)
[![Python Versions](https://img.shields.io/pypi/pyversions/pyrodigal.svg?style=flat-square&maxAge=600&logo=python)](https://pypi.org/project/pyrodigal/#files)
[![Python Implementations](https://img.shields.io/pypi/implementation/pyrodigal.svg?style=flat-square&maxAge=600&label=impl)](https://pypi.org/project/pyrodigal/#files)
[![Source](https://img.shields.io/badge/source-GitHub-303030.svg?maxAge=2678400&style=flat-square)](https://github.com/althonos/pyrodigal/)
[![GitHub issues](https://img.shields.io/github/issues/althonos/pyrodigal.svg?style=flat-square&maxAge=600)](https://github.com/althonos/pyrodigal/issues)
[![Docs](https://img.shields.io/readthedocs/pyrodigal/latest?style=flat-square&maxAge=600)](https://pyrodigal.readthedocs.io)
[![Changelog](https://img.shields.io/badge/keep%20a-changelog-8A0707.svg?maxAge=2678400&style=flat-square)](https://github.com/althonos/pyrodigal/blob/main/CHANGELOG.md)
[![Downloads](https://img.shields.io/pypi/dm/pyrodigal?style=flat-square&color=303f9f&maxAge=86400&label=downloads)](https://pepy.tech/project/pyrodigal)
[![Paper](https://img.shields.io/badge/paper-JOSS-9400ff?style=flat-square&maxAge=86400)](https://doi.org/10.21105/joss.04296)
[![Citations](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fbadge.dimensions.ai%2Fdetails%2Fid%2Fpub.1147419140%2Fmetadata.json&query=%24.times_cited&style=flat-square&label=citations&maxAge=86400)](https://badge.dimensions.ai/details/id/pub.1147419140)

## πŸ—ΊοΈ Overview

Pyrodigal is a Python module that provides bindings to Prodigal using
[Cython](https://cython.org/). It directly interacts with the Prodigal
internals, which has the following advantages:

- **single dependency**: Pyrodigal is distributed as a Python package, so you
  can add it as a dependency to your project, and stop worrying about the
  Prodigal binary being present on the end-user machine.
- **no intermediate files**: Everything happens in memory, in a Python object
  you fully control, so you don't have to invoke the Prodigal CLI using a
  sub-process and temporary files. Sequences can be passed directly as
  strings or bytes, which avoids the overhead of formatting your input to
  FASTA for Prodigal.
- **better memory usage**: Pyrodigal uses more compact data structures compared
  to the original Prodigal implementation, allowing to save memory to store 
  the same information. A heuristic is used to estimate the number of nodes
  to allocate based on the sequence GC% in order to minimize reallocations.
- **better performance**: Pyrodigal uses *SIMD* instructions to compute which
  dynamic programming nodes can be ignored when scoring connections. This can
  save from a third to half the runtime depending on the sequence. The [Benchmarks](https://pyrodigal.readthedocs.io/en/stable/benchmarks.html) page of the documentation contains comprehensive comparisons. See the [JOSS paper](https://doi.org/10.21105/joss.04296)
  for details about how this is achieved.
- **same results**: Pyrodigal is tested to make sure it produces
  exactly the same results as Prodigal `v2.6.3+31b300a`. *This was verified
  extensively by [Julian Hahnfeld](https://github.com/jhahnfeld) and can be
  checked with his [comparison repository](https://github.com/jhahnfeld/prodigal-pyrodigal-comparison).*

### πŸ“‹ Features

The library now features everything from the original Prodigal CLI:

- **run mode selection**: Choose between *single* mode, using a training
  sequence to count nucleotide hexamers, or *metagenomic* mode, using
  pre-trained data from different organisms (`prodigal -p`).
- **region masking**: Prevent genes from being predicted across regions
  containing unknown nucleotides  (`prodigal -m`).
- **closed ends**: Genes will be identified as running over edges if they
  are larger than a certain size, but this can be disabled (`prodigal -c`).
- **training configuration**: During the training process, a custom
  translation table can be given (`prodigal -g`), and the Shine-Dalgarno motif
  search can be forcefully bypassed (`prodigal -n`)
- **output files**: Output files can be written in a format mostly
  compatible with the Prodigal binary, including the protein translations
  in FASTA format (`prodigal -a`), the gene sequences in FASTA format
  (`prodigal -d`), or the potential gene scores in tabular format
  (`prodigal -s`).
- **training data persistence**: Getting training data from a sequence and
  using it for other sequences is supported; in addition, a training data
  file can be saved and loaded transparently (`prodigal -t`).

In addition, the **new** features are available:

- **custom gene size threshold**: While Prodigal uses a minimum gene size
  of 90 nucleotides (60 if on edge), Pyrodigal allows to customize this
  threshold, allowing for smaller ORFs to be identified if needed.
- **custom metagenomic models**: Since `v3.0.0`, you can use your own 
  metagenomic models to run Pyrodigal in *meta*-mode. *Check for instance
  [`pyrodigal-gv`](https://github.com/althonos/pyrodigal-gv), which 
  provides additional models for giant viruses and gut phages.*

### 🐏 Memory

Pyrodigal makes several changes compared to the original Prodigal binary
regarding memory management:

* Sequences are stored as raw bytes instead of compressed bitmaps. This means
  that the sequence itself takes 3/8th more space, but since the memory used
  for storing the sequence is often negligible compared to the memory used to
  store dynamic programming nodes, this is an acceptable trade-off for better
  performance when extracting said nodes.
* Node fields use smaller data types to fit into 128 bytes, compared to the 
  176 bytes of the original Prodigal data structure.
* Node arrays are pre-allocated based on the sequence GC% to extrapolate the
  probability to find a start or stop codon.
* Genes are stored in a more compact data structure than in Prodigal (which
  reserves a buffer to store string data), saving around 1KiB per gene.


### 🧢 Thread-safety

[`pyrodigal.GeneFinder`](https://pyrodigal.readthedocs.io/en/stable/api/orf_finder.html#pyrodigal.GeneFinder)
instances are thread-safe. In addition, the
[`find_genes`](https://pyrodigal.readthedocs.io/en/stable/api/gene_finder.html#pyrodigal.GeneFinder.find_genes)
method is re-entrant. This means you can train an
[`GeneFinder`](https://pyrodigal.readthedocs.io/en/stable/api/gene_finder.html#pyrodigal.GeneFinder)
instance once, and then use a pool to process sequences in parallel:
```python
import multiprocessing.pool
import pyrodigal

gene_finder = pyrodigal.GeneFinder()
gene_finder.train(training_sequence)

with multiprocessing.pool.ThreadPool() as pool:
    predictions = pool.map(orf_finder.find_genes, sequences)
```

## πŸ”§ Installing

Pyrodigal can be installed directly from [PyPI](https://pypi.org/project/pyrodigal/),
which hosts some pre-built wheels for the x86-64 architecture (Linux/MacOS/Windows)
and the Aarch64 architecture (Linux/MacOS), as well as the code required to compile
from source with Cython:
```console
$ pip install pyrodigal
```

Otherwise, Pyrodigal is also available as a [Bioconda](https://bioconda.github.io/)
package:
```console
$ conda install -c bioconda pyrodigal
```

Check the [*install* page](https://pyrodigal.readthedocs.io/en/stable/install.html)
of the documentation for other ways to install Pyrodigal on your machine.

## πŸ’‘ Example

Let's load a sequence from a
[GenBank](http://www.insdc.org/files/feature_table.html) file, use an `GeneFinder`
to find all the genes it contains, and print the proteins in two-line FASTA
format.

### πŸ”¬ [Biopython](https://github.com/biopython/biopython)

To use the [`GeneFinder`](https://pyrodigal.readthedocs.io/en/stable/api/orf_finder.html#pyrodigal.GeneFinder)
in single mode (corresponding to `prodigal -p single`, the default operation mode of Prodigal),
you must explicitly call the
[`train`](https://pyrodigal.readthedocs.io/en/stable/api/orf_finder.html#pyrodigal.GeneFinder.train) method
with the sequence you want to use for training before trying to find genes,
or you will get a [`RuntimeError`](https://docs.python.org/3/library/exceptions.html#RuntimeError):
```python
import Bio.SeqIO
import pyrodigal

record = Bio.SeqIO.read("sequence.gbk", "genbank")

orf_finder = pyrodigal.GeneFinder()
orf_finder.train(bytes(record.seq))
genes = orf_finder.find_genes(bytes(record.seq))
```

However, in `meta` mode (corresponding to `prodigal -p meta`), you can find genes directly:
```python
import Bio.SeqIO
import pyrodigal

record = Bio.SeqIO.read("sequence.gbk", "genbank")

orf_finder = pyrodigal.GeneFinder(meta=True)
for i, pred in enumerate(orf_finder.find_genes(bytes(record.seq))):
    print(f">{record.id}_{i+1}")
    print(pred.translate())
```

*On older versions of Biopython (before 1.79) you will need to use
`record.seq.encode()` instead of `bytes(record.seq)`*.


### πŸ§ͺ [Scikit-bio](https://github.com/biocore/scikit-bio)

```python
import skbio.io
import pyrodigal

seq = next(skbio.io.read("sequence.gbk", "genbank"))

orf_finder = pyrodigal.GeneFinder(meta=True)
for i, pred in enumerate(orf_finder.find_genes(seq.values.view('B'))):
    print(f">{record.id}_{i+1}")
    print(pred.translate())
```

*We need to use the [`view`](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.view.html)
method to get the sequence viewable by Cython as an array of `unsigned char`.*


## πŸ”– Citation

Pyrodigal is scientific software, with a
[published paper](https://doi.org/10.21105/joss.04296)
in the [Journal of Open-Source Software](https://joss.theoj.org/). Please
cite both [Pyrodigal](https://doi.org/10.21105/joss.04296)
and [Prodigal](https://doi.org/10.1186/1471-2105-11-119) if you are using it in
an academic work, for instance as:

> Pyrodigal (Larralde, 2022), a Python library binding to Prodigal (Hyatt *et al.*, 2010).

Detailed references are available on the [Publications page](https://pyrodigal.readthedocs.io/en/stable/publications.html) of the
[online documentation](https://pyrodigal.readthedocs.io/).

## πŸ’­ Feedback

### ⚠️ Issue Tracker

Found a bug ? Have an enhancement request ? Head over to the [GitHub issue
tracker](https://github.com/althonos/pyrodigal/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/pyrodigal/blob/main/CONTRIBUTING.md)
for more details.

## πŸ“‹ Changelog

This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html)
and provides a [changelog](https://github.com/althonos/pyrodigal/blob/main/CHANGELOG.md)
in the [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) format.


## βš–οΈ License

This library is provided under the [GNU General Public License v3.0](https://choosealicense.com/licenses/gpl-3.0/).
The Prodigal code was written by [Doug Hyatt](https://github.com/hyattpd) and is distributed under the
terms of the GPLv3 as well. See `vendor/Prodigal/LICENSE` for more information.

*This project is in no way not affiliated, sponsored, or otherwise endorsed
by the [original Prodigal authors](https://github.com/hyattpd). It was developed
by [Martin Larralde](https://github.com/althonos/) during his PhD project
at the [European Molecular Biology Laboratory](https://www.embl.de/) in
the [Zeller team](https://github.com/zellerlab).*

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/althonos/pyrodigal",
    "name": "pyrodigal",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "bioinformatics, genome, orf, gene, prodigal",
    "author": "Martin Larralde",
    "author_email": "martin.larralde@embl.de",
    "download_url": "https://files.pythonhosted.org/packages/ca/22/7f13942fe55586a8f0cab3bc119ce368c550e9afc2c26a8e0b6f8ed68a9c/pyrodigal-3.5.1.tar.gz",
    "platform": "any",
    "description": "# \ud83d\udd25 Pyrodigal [![Stars](https://img.shields.io/github/stars/althonos/pyrodigal.svg?style=social&maxAge=3600&label=Star)](https://github.com/althonos/pyrodigal/stargazers)\n\n*Cython bindings and Python interface to [Prodigal](https://github.com/hyattpd/Prodigal/), an ORF\nfinder for genomes and metagenomes. **Now with SIMD!***\n\n[![Actions](https://img.shields.io/github/actions/workflow/status/althonos/pyrodigal/test.yml?branch=main&logo=github&style=flat-square&maxAge=300)](https://github.com/althonos/pyrodigal/actions)\n[![Coverage](https://img.shields.io/codecov/c/gh/althonos/pyrodigal?style=flat-square&maxAge=3600&logo=codecov)](https://codecov.io/gh/althonos/pyrodigal/)\n[![License](https://img.shields.io/badge/license-GPLv3-blue.svg?style=flat-square&maxAge=2678400)](https://choosealicense.com/licenses/gpl-3.0/)\n[![PyPI](https://img.shields.io/pypi/v/pyrodigal.svg?style=flat-square&maxAge=3600&logo=PyPI)](https://pypi.org/project/pyrodigal)\n[![Bioconda](https://img.shields.io/conda/vn/bioconda/pyrodigal?style=flat-square&maxAge=3600&logo=anaconda)](https://anaconda.org/bioconda/pyrodigal)\n[![AUR](https://img.shields.io/aur/version/python-pyrodigal?logo=archlinux&style=flat-square&maxAge=3600)](https://aur.archlinux.org/packages/python-pyrodigal)\n[![Wheel](https://img.shields.io/pypi/wheel/pyrodigal.svg?style=flat-square&maxAge=3600)](https://pypi.org/project/pyrodigal/#files)\n[![Python Versions](https://img.shields.io/pypi/pyversions/pyrodigal.svg?style=flat-square&maxAge=600&logo=python)](https://pypi.org/project/pyrodigal/#files)\n[![Python Implementations](https://img.shields.io/pypi/implementation/pyrodigal.svg?style=flat-square&maxAge=600&label=impl)](https://pypi.org/project/pyrodigal/#files)\n[![Source](https://img.shields.io/badge/source-GitHub-303030.svg?maxAge=2678400&style=flat-square)](https://github.com/althonos/pyrodigal/)\n[![GitHub issues](https://img.shields.io/github/issues/althonos/pyrodigal.svg?style=flat-square&maxAge=600)](https://github.com/althonos/pyrodigal/issues)\n[![Docs](https://img.shields.io/readthedocs/pyrodigal/latest?style=flat-square&maxAge=600)](https://pyrodigal.readthedocs.io)\n[![Changelog](https://img.shields.io/badge/keep%20a-changelog-8A0707.svg?maxAge=2678400&style=flat-square)](https://github.com/althonos/pyrodigal/blob/main/CHANGELOG.md)\n[![Downloads](https://img.shields.io/pypi/dm/pyrodigal?style=flat-square&color=303f9f&maxAge=86400&label=downloads)](https://pepy.tech/project/pyrodigal)\n[![Paper](https://img.shields.io/badge/paper-JOSS-9400ff?style=flat-square&maxAge=86400)](https://doi.org/10.21105/joss.04296)\n[![Citations](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fbadge.dimensions.ai%2Fdetails%2Fid%2Fpub.1147419140%2Fmetadata.json&query=%24.times_cited&style=flat-square&label=citations&maxAge=86400)](https://badge.dimensions.ai/details/id/pub.1147419140)\n\n## \ud83d\uddfa\ufe0f Overview\n\nPyrodigal is a Python module that provides bindings to Prodigal using\n[Cython](https://cython.org/). It directly interacts with the Prodigal\ninternals, which has the following advantages:\n\n- **single dependency**: Pyrodigal is distributed as a Python package, so you\n  can add it as a dependency to your project, and stop worrying about the\n  Prodigal binary being present on the end-user machine.\n- **no intermediate files**: Everything happens in memory, in a Python object\n  you fully control, so you don't have to invoke the Prodigal CLI using a\n  sub-process and temporary files. Sequences can be passed directly as\n  strings or bytes, which avoids the overhead of formatting your input to\n  FASTA for Prodigal.\n- **better memory usage**: Pyrodigal uses more compact data structures compared\n  to the original Prodigal implementation, allowing to save memory to store \n  the same information. A heuristic is used to estimate the number of nodes\n  to allocate based on the sequence GC% in order to minimize reallocations.\n- **better performance**: Pyrodigal uses *SIMD* instructions to compute which\n  dynamic programming nodes can be ignored when scoring connections. This can\n  save from a third to half the runtime depending on the sequence. The [Benchmarks](https://pyrodigal.readthedocs.io/en/stable/benchmarks.html) page of the documentation contains comprehensive comparisons. See the [JOSS paper](https://doi.org/10.21105/joss.04296)\n  for details about how this is achieved.\n- **same results**: Pyrodigal is tested to make sure it produces\n  exactly the same results as Prodigal `v2.6.3+31b300a`. *This was verified\n  extensively by [Julian Hahnfeld](https://github.com/jhahnfeld) and can be\n  checked with his [comparison repository](https://github.com/jhahnfeld/prodigal-pyrodigal-comparison).*\n\n### \ud83d\udccb Features\n\nThe library now features everything from the original Prodigal CLI:\n\n- **run mode selection**: Choose between *single* mode, using a training\n  sequence to count nucleotide hexamers, or *metagenomic* mode, using\n  pre-trained data from different organisms (`prodigal -p`).\n- **region masking**: Prevent genes from being predicted across regions\n  containing unknown nucleotides  (`prodigal -m`).\n- **closed ends**: Genes will be identified as running over edges if they\n  are larger than a certain size, but this can be disabled (`prodigal -c`).\n- **training configuration**: During the training process, a custom\n  translation table can be given (`prodigal -g`), and the Shine-Dalgarno motif\n  search can be forcefully bypassed (`prodigal -n`)\n- **output files**: Output files can be written in a format mostly\n  compatible with the Prodigal binary, including the protein translations\n  in FASTA format (`prodigal -a`), the gene sequences in FASTA format\n  (`prodigal -d`), or the potential gene scores in tabular format\n  (`prodigal -s`).\n- **training data persistence**: Getting training data from a sequence and\n  using it for other sequences is supported; in addition, a training data\n  file can be saved and loaded transparently (`prodigal -t`).\n\nIn addition, the **new** features are available:\n\n- **custom gene size threshold**: While Prodigal uses a minimum gene size\n  of 90 nucleotides (60 if on edge), Pyrodigal allows to customize this\n  threshold, allowing for smaller ORFs to be identified if needed.\n- **custom metagenomic models**: Since `v3.0.0`, you can use your own \n  metagenomic models to run Pyrodigal in *meta*-mode. *Check for instance\n  [`pyrodigal-gv`](https://github.com/althonos/pyrodigal-gv), which \n  provides additional models for giant viruses and gut phages.*\n\n### \ud83d\udc0f Memory\n\nPyrodigal makes several changes compared to the original Prodigal binary\nregarding memory management:\n\n* Sequences are stored as raw bytes instead of compressed bitmaps. This means\n  that the sequence itself takes 3/8th more space, but since the memory used\n  for storing the sequence is often negligible compared to the memory used to\n  store dynamic programming nodes, this is an acceptable trade-off for better\n  performance when extracting said nodes.\n* Node fields use smaller data types to fit into 128 bytes, compared to the \n  176 bytes of the original Prodigal data structure.\n* Node arrays are pre-allocated based on the sequence GC% to extrapolate the\n  probability to find a start or stop codon.\n* Genes are stored in a more compact data structure than in Prodigal (which\n  reserves a buffer to store string data), saving around 1KiB per gene.\n\n\n### \ud83e\uddf6 Thread-safety\n\n[`pyrodigal.GeneFinder`](https://pyrodigal.readthedocs.io/en/stable/api/orf_finder.html#pyrodigal.GeneFinder)\ninstances are thread-safe. In addition, the\n[`find_genes`](https://pyrodigal.readthedocs.io/en/stable/api/gene_finder.html#pyrodigal.GeneFinder.find_genes)\nmethod is re-entrant. This means you can train an\n[`GeneFinder`](https://pyrodigal.readthedocs.io/en/stable/api/gene_finder.html#pyrodigal.GeneFinder)\ninstance once, and then use a pool to process sequences in parallel:\n```python\nimport multiprocessing.pool\nimport pyrodigal\n\ngene_finder = pyrodigal.GeneFinder()\ngene_finder.train(training_sequence)\n\nwith multiprocessing.pool.ThreadPool() as pool:\n    predictions = pool.map(orf_finder.find_genes, sequences)\n```\n\n## \ud83d\udd27 Installing\n\nPyrodigal can be installed directly from [PyPI](https://pypi.org/project/pyrodigal/),\nwhich hosts some pre-built wheels for the x86-64 architecture (Linux/MacOS/Windows)\nand the Aarch64 architecture (Linux/MacOS), as well as the code required to compile\nfrom source with Cython:\n```console\n$ pip install pyrodigal\n```\n\nOtherwise, Pyrodigal is also available as a [Bioconda](https://bioconda.github.io/)\npackage:\n```console\n$ conda install -c bioconda pyrodigal\n```\n\nCheck the [*install* page](https://pyrodigal.readthedocs.io/en/stable/install.html)\nof the documentation for other ways to install Pyrodigal on your machine.\n\n## \ud83d\udca1 Example\n\nLet's load a sequence from a\n[GenBank](http://www.insdc.org/files/feature_table.html) file, use an `GeneFinder`\nto find all the genes it contains, and print the proteins in two-line FASTA\nformat.\n\n### \ud83d\udd2c [Biopython](https://github.com/biopython/biopython)\n\nTo use the [`GeneFinder`](https://pyrodigal.readthedocs.io/en/stable/api/orf_finder.html#pyrodigal.GeneFinder)\nin single mode (corresponding to `prodigal -p single`, the default operation mode of Prodigal),\nyou must explicitly call the\n[`train`](https://pyrodigal.readthedocs.io/en/stable/api/orf_finder.html#pyrodigal.GeneFinder.train) method\nwith the sequence you want to use for training before trying to find genes,\nor you will get a [`RuntimeError`](https://docs.python.org/3/library/exceptions.html#RuntimeError):\n```python\nimport Bio.SeqIO\nimport pyrodigal\n\nrecord = Bio.SeqIO.read(\"sequence.gbk\", \"genbank\")\n\norf_finder = pyrodigal.GeneFinder()\norf_finder.train(bytes(record.seq))\ngenes = orf_finder.find_genes(bytes(record.seq))\n```\n\nHowever, in `meta` mode (corresponding to `prodigal -p meta`), you can find genes directly:\n```python\nimport Bio.SeqIO\nimport pyrodigal\n\nrecord = Bio.SeqIO.read(\"sequence.gbk\", \"genbank\")\n\norf_finder = pyrodigal.GeneFinder(meta=True)\nfor i, pred in enumerate(orf_finder.find_genes(bytes(record.seq))):\n    print(f\">{record.id}_{i+1}\")\n    print(pred.translate())\n```\n\n*On older versions of Biopython (before 1.79) you will need to use\n`record.seq.encode()` instead of `bytes(record.seq)`*.\n\n\n### \ud83e\uddea [Scikit-bio](https://github.com/biocore/scikit-bio)\n\n```python\nimport skbio.io\nimport pyrodigal\n\nseq = next(skbio.io.read(\"sequence.gbk\", \"genbank\"))\n\norf_finder = pyrodigal.GeneFinder(meta=True)\nfor i, pred in enumerate(orf_finder.find_genes(seq.values.view('B'))):\n    print(f\">{record.id}_{i+1}\")\n    print(pred.translate())\n```\n\n*We need to use the [`view`](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.view.html)\nmethod to get the sequence viewable by Cython as an array of `unsigned char`.*\n\n\n## \ud83d\udd16 Citation\n\nPyrodigal is scientific software, with a\n[published paper](https://doi.org/10.21105/joss.04296)\nin the [Journal of Open-Source Software](https://joss.theoj.org/). Please\ncite both [Pyrodigal](https://doi.org/10.21105/joss.04296)\nand [Prodigal](https://doi.org/10.1186/1471-2105-11-119) if you are using it in\nan academic work, for instance as:\n\n> Pyrodigal (Larralde, 2022), a Python library binding to Prodigal (Hyatt *et al.*, 2010).\n\nDetailed references are available on the [Publications page](https://pyrodigal.readthedocs.io/en/stable/publications.html) of the\n[online documentation](https://pyrodigal.readthedocs.io/).\n\n## \ud83d\udcad Feedback\n\n### \u26a0\ufe0f Issue Tracker\n\nFound a bug ? Have an enhancement request ? Head over to the [GitHub issue\ntracker](https://github.com/althonos/pyrodigal/issues) if you need to report\nor ask something. If you are filing in on a bug, please include as much\ninformation 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/pyrodigal/blob/main/CONTRIBUTING.md)\nfor more details.\n\n## \ud83d\udccb Changelog\n\nThis project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html)\nand provides a [changelog](https://github.com/althonos/pyrodigal/blob/main/CHANGELOG.md)\nin the [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) format.\n\n\n## \u2696\ufe0f License\n\nThis library is provided under the [GNU General Public License v3.0](https://choosealicense.com/licenses/gpl-3.0/).\nThe Prodigal code was written by [Doug Hyatt](https://github.com/hyattpd) and is distributed under the\nterms of the GPLv3 as well. See `vendor/Prodigal/LICENSE` for more information.\n\n*This project is in no way not affiliated, sponsored, or otherwise endorsed\nby the [original Prodigal authors](https://github.com/hyattpd). It was developed\nby [Martin Larralde](https://github.com/althonos/) during his PhD project\nat the [European Molecular Biology Laboratory](https://www.embl.de/) in\nthe [Zeller team](https://github.com/zellerlab).*\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-only",
    "summary": "Cython bindings and Python interface to Prodigal, an ORF finder for genomes and metagenomes.",
    "version": "3.5.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/althonos/pyrodigal/issues",
        "Builds": "https://github.com/althonos/pyrodigal/actions",
        "Changelog": "https://github.com/althonos/pyrodigal/blob/master/CHANGELOG.md",
        "Coverage": "https://codecov.io/gh/althonos/pyrodigal/",
        "Documentation": "https://pyrodigal.readthedocs.io/en/stable/",
        "Homepage": "https://github.com/althonos/pyrodigal",
        "Paper": "https://doi.org/10.21105/joss.04296",
        "PyPI": "https://pypi.org/project/pyrodigal"
    },
    "split_keywords": [
        "bioinformatics",
        " genome",
        " orf",
        " gene",
        " prodigal"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8d761b71dff669c2ee03c903523587a9bd92087ae9b9426f38ddd1d762a53b2f",
                "md5": "1f6d8c1c16986cd4d9d2af02936d2a73",
                "sha256": "d109bf29beff72c6d40a158d04f7de58b9c285812017112b913b50d599497017"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp310-cp310-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1f6d8c1c16986cd4d9d2af02936d2a73",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.6",
            "size": 2841404,
            "upload_time": "2024-07-17T20:45:42",
            "upload_time_iso_8601": "2024-07-17T20:45:42.109109Z",
            "url": "https://files.pythonhosted.org/packages/8d/76/1b71dff669c2ee03c903523587a9bd92087ae9b9426f38ddd1d762a53b2f/pyrodigal-3.5.1-cp310-cp310-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f75b79f365b6ae4edde5a9b0baf857a156dd7bec6eff2879939b4c634babd25e",
                "md5": "6939add54de29f2e7636e3e362cda243",
                "sha256": "9857ea8732e0407cfe86af1fa712a17aa76b723c4eabb28011253bff5f63f03d"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "6939add54de29f2e7636e3e362cda243",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.6",
            "size": 2818218,
            "upload_time": "2024-07-17T20:45:46",
            "upload_time_iso_8601": "2024-07-17T20:45:46.540547Z",
            "url": "https://files.pythonhosted.org/packages/f7/5b/79f365b6ae4edde5a9b0baf857a156dd7bec6eff2879939b4c634babd25e/pyrodigal-3.5.1-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0c963cdc58c220b46c7701989e230579ac63c0a7f26ba44fd8ae5449830fb804",
                "md5": "9967a1a5ff3f45ff1540745f62d6eba5",
                "sha256": "4979d268e29f377aadab3f71869629c9ec3a2b57398aa4afd98a4b3cf1158b35"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "9967a1a5ff3f45ff1540745f62d6eba5",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.6",
            "size": 4439092,
            "upload_time": "2024-07-17T20:45:52",
            "upload_time_iso_8601": "2024-07-17T20:45:52.433049Z",
            "url": "https://files.pythonhosted.org/packages/0c/96/3cdc58c220b46c7701989e230579ac63c0a7f26ba44fd8ae5449830fb804/pyrodigal-3.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cd1ad5ee35df86b8de63defc2067304410cc623e5f17c16184a342e6240111a5",
                "md5": "7e5148c132d28f643a47e10db1a6c083",
                "sha256": "fb46d6f7879ed753609c9b52c1f8bc9681762ec0bcd9cc433681479b302f1b59"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7e5148c132d28f643a47e10db1a6c083",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.6",
            "size": 4492612,
            "upload_time": "2024-07-17T20:45:54",
            "upload_time_iso_8601": "2024-07-17T20:45:54.988079Z",
            "url": "https://files.pythonhosted.org/packages/cd/1a/d5ee35df86b8de63defc2067304410cc623e5f17c16184a342e6240111a5/pyrodigal-3.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c3863596ab66755ff3d4dc856088fd689a153f830dd692f3597b3bd2f5855ddb",
                "md5": "69f6fcaf704acf061f7d999c5e9ff19f",
                "sha256": "cd7bd9aa09de63f8660b9f6ef44ac02ae3e9809a2284e052e1e8ad99ac7ba68c"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "69f6fcaf704acf061f7d999c5e9ff19f",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.6",
            "size": 3129980,
            "upload_time": "2024-07-17T20:45:56",
            "upload_time_iso_8601": "2024-07-17T20:45:56.914877Z",
            "url": "https://files.pythonhosted.org/packages/c3/86/3596ab66755ff3d4dc856088fd689a153f830dd692f3597b3bd2f5855ddb/pyrodigal-3.5.1-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cae31350521c4d2af82f612fbee71bcdc75e74f484aa5cd378a8e2d94f2c15d4",
                "md5": "b4f109b1f4408ff9a70465f5aa7a21f2",
                "sha256": "e2b69dbaf657a842b758443f314b28727ff6f4cdf74d9326de6787ae9bc02587"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp311-cp311-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "b4f109b1f4408ff9a70465f5aa7a21f2",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.6",
            "size": 2842885,
            "upload_time": "2024-07-17T20:45:59",
            "upload_time_iso_8601": "2024-07-17T20:45:59.263535Z",
            "url": "https://files.pythonhosted.org/packages/ca/e3/1350521c4d2af82f612fbee71bcdc75e74f484aa5cd378a8e2d94f2c15d4/pyrodigal-3.5.1-cp311-cp311-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "db267357dc135b3a7f72f17d8bb044db2ae85e14ff5c990fd0dcf38831857ed9",
                "md5": "093c94792383448310f4a5000c64075b",
                "sha256": "217795538d27abeb66fb3fff0dab674c61a5226584b1c6440154a052295f4d16"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "093c94792383448310f4a5000c64075b",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.6",
            "size": 2819119,
            "upload_time": "2024-07-17T20:46:03",
            "upload_time_iso_8601": "2024-07-17T20:46:03.029223Z",
            "url": "https://files.pythonhosted.org/packages/db/26/7357dc135b3a7f72f17d8bb044db2ae85e14ff5c990fd0dcf38831857ed9/pyrodigal-3.5.1-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e81dbc6e37026009ad0c39ead6fd2513000efdb76a9465fcc9fdf8cb0b28fb8c",
                "md5": "673bac3675c41e2194c2f850f94d8684",
                "sha256": "e88665e05075b69cdcc0df0df495db7dff2360663905aa267628d7ad10122a99"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "673bac3675c41e2194c2f850f94d8684",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.6",
            "size": 4569018,
            "upload_time": "2024-07-17T20:46:05",
            "upload_time_iso_8601": "2024-07-17T20:46:05.328764Z",
            "url": "https://files.pythonhosted.org/packages/e8/1d/bc6e37026009ad0c39ead6fd2513000efdb76a9465fcc9fdf8cb0b28fb8c/pyrodigal-3.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7f041892f07afae0e164c8eeedae1c87fafc829a39af9bcc51047cd9e2d6e343",
                "md5": "3aacaf831cd4a4f6383ee4779090a3ab",
                "sha256": "5344273faa1638f9e32a0c8adb07d8d2ebb8066841ccb326bff6ea95a35357d4"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "3aacaf831cd4a4f6383ee4779090a3ab",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.6",
            "size": 4630060,
            "upload_time": "2024-07-17T20:46:07",
            "upload_time_iso_8601": "2024-07-17T20:46:07.332917Z",
            "url": "https://files.pythonhosted.org/packages/7f/04/1892f07afae0e164c8eeedae1c87fafc829a39af9bcc51047cd9e2d6e343/pyrodigal-3.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d51356134c526afab0f6306abab49ff9c7c895db9ad0293c155f34bb731182a2",
                "md5": "0a1806940a4110ad392641cf2362ad87",
                "sha256": "68afa7f080c17ea7b51c293ab688d731a63e150cb96966163a7dd0c50c93d37e"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "0a1806940a4110ad392641cf2362ad87",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.6",
            "size": 3131247,
            "upload_time": "2024-07-17T20:46:11",
            "upload_time_iso_8601": "2024-07-17T20:46:11.545905Z",
            "url": "https://files.pythonhosted.org/packages/d5/13/56134c526afab0f6306abab49ff9c7c895db9ad0293c155f34bb731182a2/pyrodigal-3.5.1-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "73dd1ee3a10d0b468b8a81279df0651b23bc11c24cf036729cdd4edbac369065",
                "md5": "7178325978b91672f16ffcae64d2240a",
                "sha256": "b1ba411084cf640757b7349ae874ec3b7c2882962f141233a506a0f939f67dbb"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp312-cp312-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7178325978b91672f16ffcae64d2240a",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.6",
            "size": 2837374,
            "upload_time": "2024-07-17T20:46:13",
            "upload_time_iso_8601": "2024-07-17T20:46:13.210655Z",
            "url": "https://files.pythonhosted.org/packages/73/dd/1ee3a10d0b468b8a81279df0651b23bc11c24cf036729cdd4edbac369065/pyrodigal-3.5.1-cp312-cp312-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c70978c893a31773348fda8e437aa863257022c32d034685e1f7d5f44cf5b470",
                "md5": "659764b212b4f246f031f12b3d041222",
                "sha256": "58cc8fde7df14936024a119ab55796d1b249fda18c141844bb4c062be297ebb5"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "659764b212b4f246f031f12b3d041222",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.6",
            "size": 2816183,
            "upload_time": "2024-07-17T20:46:14",
            "upload_time_iso_8601": "2024-07-17T20:46:14.785607Z",
            "url": "https://files.pythonhosted.org/packages/c7/09/78c893a31773348fda8e437aa863257022c32d034685e1f7d5f44cf5b470/pyrodigal-3.5.1-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ff35ed87b929c2190cb7ac56e9d62a2b11e1265864c4ac913ee10d95f780ca38",
                "md5": "8c5f076750f84d6220bfcac38d5a971c",
                "sha256": "d820e0c6c37042bc5035077b6c9786e423a43fec8aca66c3ce90c60e2b264c8e"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "8c5f076750f84d6220bfcac38d5a971c",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.6",
            "size": 4555102,
            "upload_time": "2024-07-17T20:46:16",
            "upload_time_iso_8601": "2024-07-17T20:46:16.764586Z",
            "url": "https://files.pythonhosted.org/packages/ff/35/ed87b929c2190cb7ac56e9d62a2b11e1265864c4ac913ee10d95f780ca38/pyrodigal-3.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "472b44797593da274c916e750fa19c1dffad0d689f417d4fe0948712c9547ba6",
                "md5": "4fc1959c22bedaba33db15c57a9a6e3f",
                "sha256": "754118f08fc89ec47cb563eb409ef339b2143a76168cf2f9f2645c5a53713407"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "4fc1959c22bedaba33db15c57a9a6e3f",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.6",
            "size": 4624910,
            "upload_time": "2024-07-17T20:46:19",
            "upload_time_iso_8601": "2024-07-17T20:46:19.148726Z",
            "url": "https://files.pythonhosted.org/packages/47/2b/44797593da274c916e750fa19c1dffad0d689f417d4fe0948712c9547ba6/pyrodigal-3.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "eaaf1478c5efefa3956ed7ac9676252e3f5c298bc3b4cbc9b70498fb39358de1",
                "md5": "a0f4c137f8a5b353b72bf6948a82e7de",
                "sha256": "1b42b538d4ebcf1fd9b9b99946832a4bd08aa147b8ec7fb7e279497cbbf88739"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "a0f4c137f8a5b353b72bf6948a82e7de",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.6",
            "size": 3129403,
            "upload_time": "2024-07-17T20:46:24",
            "upload_time_iso_8601": "2024-07-17T20:46:24.872289Z",
            "url": "https://files.pythonhosted.org/packages/ea/af/1478c5efefa3956ed7ac9676252e3f5c298bc3b4cbc9b70498fb39358de1/pyrodigal-3.5.1-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "afa837ffe656e54c9551a917b3342355d7dbe67e9f12be413a8c2e323bad4734",
                "md5": "aded4e6c4096b048800753ef099c5ec8",
                "sha256": "55258bd71b2f55c30dbed50496d12ce851cab220f11c6ffa1dadb4f9f07b89ae"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp36-cp36m-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "aded4e6c4096b048800753ef099c5ec8",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 2829663,
            "upload_time": "2024-07-17T20:46:26",
            "upload_time_iso_8601": "2024-07-17T20:46:26.876462Z",
            "url": "https://files.pythonhosted.org/packages/af/a8/37ffe656e54c9551a917b3342355d7dbe67e9f12be413a8c2e323bad4734/pyrodigal-3.5.1-cp36-cp36m-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "64442153a63ecc1be9acc107f7049a094d8398f0e39041dc683371068fda44a5",
                "md5": "4b8c86b3d491ebf18548456fde5f768a",
                "sha256": "bab5724411f79f8ef6b9968e34b77d030719308687409f4bbb428be5063608a5"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "4b8c86b3d491ebf18548456fde5f768a",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 4278399,
            "upload_time": "2024-07-17T20:46:29",
            "upload_time_iso_8601": "2024-07-17T20:46:29.893487Z",
            "url": "https://files.pythonhosted.org/packages/64/44/2153a63ecc1be9acc107f7049a094d8398f0e39041dc683371068fda44a5/pyrodigal-3.5.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "65f70df593cdae399f219f80239115d07bae41603092155ab6b697bb95c0e4c2",
                "md5": "1f23554ae5f5ba8bd24b2ab4c08a6984",
                "sha256": "4cd6f7a068cba0ad0b449f9c60a131201443ee1a74db5ea542a938ea5c4435b1"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1f23554ae5f5ba8bd24b2ab4c08a6984",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 4332046,
            "upload_time": "2024-07-17T20:46:35",
            "upload_time_iso_8601": "2024-07-17T20:46:35.154944Z",
            "url": "https://files.pythonhosted.org/packages/65/f7/0df593cdae399f219f80239115d07bae41603092155ab6b697bb95c0e4c2/pyrodigal-3.5.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "126742583e7207ba581c440a397a86ddb829e8fdbece45b731a0d3529d6eb638",
                "md5": "e63c8af604ab6b2c459ae9a6d3ad0424",
                "sha256": "2a4aa92ce893a63d69a4634b1f1550e4848f70ab4f37fa1af0cc7d85bb71112a"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp36-cp36m-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "e63c8af604ab6b2c459ae9a6d3ad0424",
            "packagetype": "bdist_wheel",
            "python_version": "cp36",
            "requires_python": ">=3.6",
            "size": 3161465,
            "upload_time": "2024-07-17T20:46:37",
            "upload_time_iso_8601": "2024-07-17T20:46:37.386150Z",
            "url": "https://files.pythonhosted.org/packages/12/67/42583e7207ba581c440a397a86ddb829e8fdbece45b731a0d3529d6eb638/pyrodigal-3.5.1-cp36-cp36m-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d2cd020bc82cc0acb3f6ac7616b78f22005d23a4144cdcf0d8216112637c1360",
                "md5": "5462182bec37ddb03b2cb6359d20d519",
                "sha256": "3f15e371f99e623c56af9ab846bd993bedc496d457ef643ef40f4b40c5f8d098"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp37-cp37m-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "5462182bec37ddb03b2cb6359d20d519",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.6",
            "size": 2834110,
            "upload_time": "2024-07-17T20:46:39",
            "upload_time_iso_8601": "2024-07-17T20:46:39.618398Z",
            "url": "https://files.pythonhosted.org/packages/d2/cd/020bc82cc0acb3f6ac7616b78f22005d23a4144cdcf0d8216112637c1360/pyrodigal-3.5.1-cp37-cp37m-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "435f233e843306e9cffe51661aae0efab59cf494d836b4ce483dd4ce2bffdd19",
                "md5": "7b7f16345315eac13e8fae78365bb817",
                "sha256": "2b67874f23c48a7ab94421936d1f47007594dedb32570d7e229d3cec7c02dc08"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "7b7f16345315eac13e8fae78365bb817",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.6",
            "size": 4280823,
            "upload_time": "2024-07-17T20:46:44",
            "upload_time_iso_8601": "2024-07-17T20:46:44.416922Z",
            "url": "https://files.pythonhosted.org/packages/43/5f/233e843306e9cffe51661aae0efab59cf494d836b4ce483dd4ce2bffdd19/pyrodigal-3.5.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "45900e30f2a4d92408db7a7b045811baf2ffa356c45d8416fba1e53001a536ba",
                "md5": "4af2575cd77df83b4624d21599d6a47d",
                "sha256": "d2d6d1efa86f9cb5fcc79312c81408e7d9bbef7ccb3ac6513c4bdca07c3c1bcb"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "4af2575cd77df83b4624d21599d6a47d",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.6",
            "size": 4339085,
            "upload_time": "2024-07-17T20:46:46",
            "upload_time_iso_8601": "2024-07-17T20:46:46.136803Z",
            "url": "https://files.pythonhosted.org/packages/45/90/0e30f2a4d92408db7a7b045811baf2ffa356c45d8416fba1e53001a536ba/pyrodigal-3.5.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "03ecdb641a36739515dc14b769ef0b4d3fb6cd97eff3a75931b9854d20c14d7c",
                "md5": "2c681712d4b94047b277d16196efb556",
                "sha256": "c379cab9882f764ad36928699271c32a2a0d5b0732db025b29796bd56324f04c"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp37-cp37m-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "2c681712d4b94047b277d16196efb556",
            "packagetype": "bdist_wheel",
            "python_version": "cp37",
            "requires_python": ">=3.6",
            "size": 3124171,
            "upload_time": "2024-07-17T20:46:48",
            "upload_time_iso_8601": "2024-07-17T20:46:48.711892Z",
            "url": "https://files.pythonhosted.org/packages/03/ec/db641a36739515dc14b769ef0b4d3fb6cd97eff3a75931b9854d20c14d7c/pyrodigal-3.5.1-cp37-cp37m-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e1bf9085116e01533fbaf442e00ee07b93c0c9b46dccf782438f8e15785aaea9",
                "md5": "6c14a91ffb245b2c4a42022763cdf767",
                "sha256": "37356693f95264429cd58fda80a6f92b68b3149d31093b587dfa1dd9aa44ddbc"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp38-cp38-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6c14a91ffb245b2c4a42022763cdf767",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.6",
            "size": 2836147,
            "upload_time": "2024-07-17T20:46:53",
            "upload_time_iso_8601": "2024-07-17T20:46:53.966136Z",
            "url": "https://files.pythonhosted.org/packages/e1/bf/9085116e01533fbaf442e00ee07b93c0c9b46dccf782438f8e15785aaea9/pyrodigal-3.5.1-cp38-cp38-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "21007f4661effd8ff9ac9a9d273197f6e5e43205bd2625a488e2962294acac14",
                "md5": "9648a2e78ed74acf272403bb4e38f33c",
                "sha256": "050923963d3abe6e8cd3ab57a66d8b2f50741d8c179239c5f2d037929230c205"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp38-cp38-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "9648a2e78ed74acf272403bb4e38f33c",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.6",
            "size": 2815080,
            "upload_time": "2024-07-17T20:46:56",
            "upload_time_iso_8601": "2024-07-17T20:46:56.150150Z",
            "url": "https://files.pythonhosted.org/packages/21/00/7f4661effd8ff9ac9a9d273197f6e5e43205bd2625a488e2962294acac14/pyrodigal-3.5.1-cp38-cp38-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "444fedfb6ff347bb1ac7fafaa186e844bec35b79ce814a103fdb41970c69a931",
                "md5": "bb4a1f99fa70b27690619193d3135daf",
                "sha256": "143ecf1f72434fb22d8c3a244f27ebb269d5bcdeb9e0883dba7a70b289f80607"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "bb4a1f99fa70b27690619193d3135daf",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.6",
            "size": 4481514,
            "upload_time": "2024-07-17T20:46:57",
            "upload_time_iso_8601": "2024-07-17T20:46:57.928502Z",
            "url": "https://files.pythonhosted.org/packages/44/4f/edfb6ff347bb1ac7fafaa186e844bec35b79ce814a103fdb41970c69a931/pyrodigal-3.5.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e3bf4db2a5c811fb2e49a304d262cd0f366c932d60d0811763d7c9befb9d29f6",
                "md5": "d30d26a2da570c27a941037d98603bfa",
                "sha256": "93f172155e3004038b42172bbdccb6af73243373913636b1d5b6819309d99fd7"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d30d26a2da570c27a941037d98603bfa",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.6",
            "size": 4543301,
            "upload_time": "2024-07-17T20:47:01",
            "upload_time_iso_8601": "2024-07-17T20:47:01.265842Z",
            "url": "https://files.pythonhosted.org/packages/e3/bf/4db2a5c811fb2e49a304d262cd0f366c932d60d0811763d7c9befb9d29f6/pyrodigal-3.5.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6ba4a327eec5f8679ad984e595fc9248a675f9da1f8d43907710457d4abb19f1",
                "md5": "02684b1f539e2618ce6b2cdf0a4a16bf",
                "sha256": "a1b013f65f8c585936ddfdc85326de7ee8c4d12e5756c578e41fa5f4f5ed7e20"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "02684b1f539e2618ce6b2cdf0a4a16bf",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.6",
            "size": 3133174,
            "upload_time": "2024-07-17T20:47:02",
            "upload_time_iso_8601": "2024-07-17T20:47:02.880655Z",
            "url": "https://files.pythonhosted.org/packages/6b/a4/a327eec5f8679ad984e595fc9248a675f9da1f8d43907710457d4abb19f1/pyrodigal-3.5.1-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5fcf25788e58c4ffc70095e195f1285f8f9e922d4fa18cc8688a15b8636337ba",
                "md5": "276c13078a0bc2aa68450004a0294129",
                "sha256": "27d02a7b65c465cbec0d47317b7abba6e55ec2c46490db1dfc520b75ad6f16ca"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp39-cp39-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "276c13078a0bc2aa68450004a0294129",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.6",
            "size": 2841985,
            "upload_time": "2024-07-17T20:47:04",
            "upload_time_iso_8601": "2024-07-17T20:47:04.583540Z",
            "url": "https://files.pythonhosted.org/packages/5f/cf/25788e58c4ffc70095e195f1285f8f9e922d4fa18cc8688a15b8636337ba/pyrodigal-3.5.1-cp39-cp39-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "56ac523893a9c7162a2d3a5e0e3c85e5fc3d1a2c48ae2309a204b8f723a131a3",
                "md5": "2589e404b7841df05ce58e512c75ed8c",
                "sha256": "284dd7e1d35dc4ea280ac38bcd5861e1e9dcbbf24ee9330646b5310fd3ca1362"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "2589e404b7841df05ce58e512c75ed8c",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.6",
            "size": 2818598,
            "upload_time": "2024-07-17T20:47:11",
            "upload_time_iso_8601": "2024-07-17T20:47:11.301138Z",
            "url": "https://files.pythonhosted.org/packages/56/ac/523893a9c7162a2d3a5e0e3c85e5fc3d1a2c48ae2309a204b8f723a131a3/pyrodigal-3.5.1-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "97adf27f8ff2c873d4d28750d28d22bee38f61a5f44eb94c2a2dac9134b39d3a",
                "md5": "6c7bf604ed87ce4ad3151fde579df7eb",
                "sha256": "9bc24c89dfe3a2c9fdd16f67ef592068b2f8cd856d618457b36e559129c37b2f"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "6c7bf604ed87ce4ad3151fde579df7eb",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.6",
            "size": 4438542,
            "upload_time": "2024-07-17T20:47:13",
            "upload_time_iso_8601": "2024-07-17T20:47:13.081012Z",
            "url": "https://files.pythonhosted.org/packages/97/ad/f27f8ff2c873d4d28750d28d22bee38f61a5f44eb94c2a2dac9134b39d3a/pyrodigal-3.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9e7af641d1b5246ecd871f5d84f4d58e218ade3ee9eb36262a20cfb5deee23c0",
                "md5": "b2324aac1d3e7fbf8d93542bcb1fc79c",
                "sha256": "d975d78dcc42302996121d489886c13dfb6a504bd588f09555f3acd94bb5eed8"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "b2324aac1d3e7fbf8d93542bcb1fc79c",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.6",
            "size": 4492854,
            "upload_time": "2024-07-17T20:47:15",
            "upload_time_iso_8601": "2024-07-17T20:47:15.138638Z",
            "url": "https://files.pythonhosted.org/packages/9e/7a/f641d1b5246ecd871f5d84f4d58e218ade3ee9eb36262a20cfb5deee23c0/pyrodigal-3.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d5863f612577cf473a0100ca044728be6e6d4a7cbfaa3405164facc9a84bda2e",
                "md5": "c0d35f9dbabea715e79b7cb0a952a13c",
                "sha256": "6d1ba25ef43a587feabc826effe6a1f3764317d76d042f39c07ab53546725e25"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "c0d35f9dbabea715e79b7cb0a952a13c",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.6",
            "size": 3129857,
            "upload_time": "2024-07-17T20:47:16",
            "upload_time_iso_8601": "2024-07-17T20:47:16.809286Z",
            "url": "https://files.pythonhosted.org/packages/d5/86/3f612577cf473a0100ca044728be6e6d4a7cbfaa3405164facc9a84bda2e/pyrodigal-3.5.1-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "73824cc1506df2d5b0c0dd775fa0bc24d7d23916190b73c6b4f779b9631f39ad",
                "md5": "ad7056d3e9ead034ed2589855cc343ed",
                "sha256": "05706414fb1782ebcba3e1bc0255904eed38f53d8da6d5857dbb0befa51feb57"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ad7056d3e9ead034ed2589855cc343ed",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.6",
            "size": 2731373,
            "upload_time": "2024-07-17T20:47:21",
            "upload_time_iso_8601": "2024-07-17T20:47:21.672047Z",
            "url": "https://files.pythonhosted.org/packages/73/82/4cc1506df2d5b0c0dd775fa0bc24d7d23916190b73c6b4f779b9631f39ad/pyrodigal-3.5.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fd4fb60627c8f745a4379d11758bf9b61ba454ebc5e8203d4708ffd1ddab785f",
                "md5": "80be81e70d484ce193f1b8fc9f5cc8ab",
                "sha256": "033820152edb70a68c2511923ce3cc6c7690f1094022c544a8bcf4da54b3d7b9"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "80be81e70d484ce193f1b8fc9f5cc8ab",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.6",
            "size": 2771058,
            "upload_time": "2024-07-17T20:47:23",
            "upload_time_iso_8601": "2024-07-17T20:47:23.636178Z",
            "url": "https://files.pythonhosted.org/packages/fd/4f/b60627c8f745a4379d11758bf9b61ba454ebc5e8203d4708ffd1ddab785f/pyrodigal-3.5.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "980a32a5f330b0b984eb70a876a157b3eb0b2da0f9168f9d20dcadbac38d1d6d",
                "md5": "fd792d1bcc632e4f4464725ff0419645",
                "sha256": "aef0d5a970cfc87867e00a4e20fe8c54f6f867238c1d6c1ff4f8e73ebab3c2fe"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "fd792d1bcc632e4f4464725ff0419645",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.6",
            "size": 2790786,
            "upload_time": "2024-07-17T20:47:25",
            "upload_time_iso_8601": "2024-07-17T20:47:25.640288Z",
            "url": "https://files.pythonhosted.org/packages/98/0a/32a5f330b0b984eb70a876a157b3eb0b2da0f9168f9d20dcadbac38d1d6d/pyrodigal-3.5.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f8bf24e4915ec94cf0dc3c08f1f83efeaeae28c1dbad737d2c457143476752ff",
                "md5": "dc71cda9f3045c62aa6a2187b7baed28",
                "sha256": "f412480fb1784e5844c5e2ae08347bd3955e0a9f1033897dd8531414d41ae9ed"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp310-pypy310_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "dc71cda9f3045c62aa6a2187b7baed28",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.6",
            "size": 3089851,
            "upload_time": "2024-07-17T20:47:27",
            "upload_time_iso_8601": "2024-07-17T20:47:27.346303Z",
            "url": "https://files.pythonhosted.org/packages/f8/bf/24e4915ec94cf0dc3c08f1f83efeaeae28c1dbad737d2c457143476752ff/pyrodigal-3.5.1-pp310-pypy310_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b45835fa2a62db8842cebb40790c125df0ad71e6de8c60602f3dd5504b017aa6",
                "md5": "0867fe936a95f67445c58fbdfa0ba190",
                "sha256": "110ac65f9c1e4f2f36d6e0331404ae6fd72cd31155defe6ecc97758c44c4697c"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0867fe936a95f67445c58fbdfa0ba190",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 2734951,
            "upload_time": "2024-07-17T20:47:29",
            "upload_time_iso_8601": "2024-07-17T20:47:29.221218Z",
            "url": "https://files.pythonhosted.org/packages/b4/58/35fa2a62db8842cebb40790c125df0ad71e6de8c60602f3dd5504b017aa6/pyrodigal-3.5.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0fe668220f2c7821a1fb9fd78f4093eb6d43a94fe2bf4652d1189ebdb86b1e6b",
                "md5": "4692e25e6bce16310b442b3e0cd26129",
                "sha256": "caa716cb884f871ca2ae00a96e29883f6c019c5575f5bbfb13158b66a868038e"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "4692e25e6bce16310b442b3e0cd26129",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 2782334,
            "upload_time": "2024-07-17T20:47:31",
            "upload_time_iso_8601": "2024-07-17T20:47:31.981248Z",
            "url": "https://files.pythonhosted.org/packages/0f/e6/68220f2c7821a1fb9fd78f4093eb6d43a94fe2bf4652d1189ebdb86b1e6b/pyrodigal-3.5.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "10248f26821a8e30ee1485d31cff628a503bca7788639657e9a436a5addb6b83",
                "md5": "3ba60066b2c3bb3f68faaa184e71faec",
                "sha256": "f562e5328ead23d4afd831c903f5d1295069753735a8c2e37a6428797c36f642"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "3ba60066b2c3bb3f68faaa184e71faec",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 2803795,
            "upload_time": "2024-07-17T20:47:34",
            "upload_time_iso_8601": "2024-07-17T20:47:34.479004Z",
            "url": "https://files.pythonhosted.org/packages/10/24/8f26821a8e30ee1485d31cff628a503bca7788639657e9a436a5addb6b83/pyrodigal-3.5.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e1207b39def40178bee3247d3260c2b3fda29c49ce574c492fa5c174d2c9ddd2",
                "md5": "d7c44a0eef487dfb925b0e01f02e98d6",
                "sha256": "71bb27bb43fd94f668625a53e65208b8a5bb40a46dd0b89cb2d456d9b96da3bf"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp37-pypy37_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "d7c44a0eef487dfb925b0e01f02e98d6",
            "packagetype": "bdist_wheel",
            "python_version": "pp37",
            "requires_python": ">=3.6",
            "size": 3089996,
            "upload_time": "2024-07-17T20:47:36",
            "upload_time_iso_8601": "2024-07-17T20:47:36.210710Z",
            "url": "https://files.pythonhosted.org/packages/e1/20/7b39def40178bee3247d3260c2b3fda29c49ce574c492fa5c174d2c9ddd2/pyrodigal-3.5.1-pp37-pypy37_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a3eeec8476256b7893d2ed7453b64d34a61128a915be14dabfae17a052aa0d93",
                "md5": "52d726a48400b3627cbab9a0d9d8aac3",
                "sha256": "dcfef1438c08ee0bcb6b495abec18a1c7302173601823b2592daf75b2f74fadf"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "52d726a48400b3627cbab9a0d9d8aac3",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 2734021,
            "upload_time": "2024-07-17T20:47:41",
            "upload_time_iso_8601": "2024-07-17T20:47:41.008793Z",
            "url": "https://files.pythonhosted.org/packages/a3/ee/ec8476256b7893d2ed7453b64d34a61128a915be14dabfae17a052aa0d93/pyrodigal-3.5.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1d5cec0443b04a60cd892c96899bee566a03d36f1766d7662ac6a4f9fdc9f6aa",
                "md5": "8154d3dca2b8e85babb94d014e04669c",
                "sha256": "e22e876ea446fa08aa32acb9b1c78fac0a45029b6eb8fabb51d8aa89b3d117ed"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "8154d3dca2b8e85babb94d014e04669c",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 2781301,
            "upload_time": "2024-07-17T20:47:42",
            "upload_time_iso_8601": "2024-07-17T20:47:42.714291Z",
            "url": "https://files.pythonhosted.org/packages/1d/5c/ec0443b04a60cd892c96899bee566a03d36f1766d7662ac6a4f9fdc9f6aa/pyrodigal-3.5.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4d592e0d2579cb7892d10b0692991de4e1ba49d199410f44e90b757a1c9032e9",
                "md5": "08bf66ba484165327b77824c1307eb52",
                "sha256": "f425b86ce7ad6c9b427eea6a0bc3a7e77ad04e37c12d456fa245a67d88bbd104"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "08bf66ba484165327b77824c1307eb52",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 2802190,
            "upload_time": "2024-07-17T20:47:44",
            "upload_time_iso_8601": "2024-07-17T20:47:44.502997Z",
            "url": "https://files.pythonhosted.org/packages/4d/59/2e0d2579cb7892d10b0692991de4e1ba49d199410f44e90b757a1c9032e9/pyrodigal-3.5.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c36c797e026bf745df3d8d2e15fef7e3aa995f75a3e8161bab37ddd6e7e0e1f7",
                "md5": "983171a13e3375ac3ff1727cf1a0435a",
                "sha256": "ea1d75d48a84b99ba0cc348c98368c1ebf13812b4ef505479b7b32ba90d9abd2"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp38-pypy38_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "983171a13e3375ac3ff1727cf1a0435a",
            "packagetype": "bdist_wheel",
            "python_version": "pp38",
            "requires_python": ">=3.6",
            "size": 3090031,
            "upload_time": "2024-07-17T20:47:47",
            "upload_time_iso_8601": "2024-07-17T20:47:47.005593Z",
            "url": "https://files.pythonhosted.org/packages/c3/6c/797e026bf745df3d8d2e15fef7e3aa995f75a3e8161bab37ddd6e7e0e1f7/pyrodigal-3.5.1-pp38-pypy38_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f6f554162cbf20339bd989ed2107638f00bd534303e5893ba692d19e895cb4f9",
                "md5": "c03487ea4492a85de81c848db06870cc",
                "sha256": "1c91941fc10d8d13277a4b2ff2d7d916b60da6569ac9251c98adb96fc2cb3db5"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c03487ea4492a85de81c848db06870cc",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.6",
            "size": 2730853,
            "upload_time": "2024-07-17T20:47:53",
            "upload_time_iso_8601": "2024-07-17T20:47:53.515211Z",
            "url": "https://files.pythonhosted.org/packages/f6/f5/54162cbf20339bd989ed2107638f00bd534303e5893ba692d19e895cb4f9/pyrodigal-3.5.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ec21cc9e553820bc951773cf0af286217fa54116a6abb23fa81b3497309211b7",
                "md5": "75d733003b065065d24501f8c9742f2c",
                "sha256": "f9e1186143ccbf9c27f7f0b993f133b8508fd9f1cf445f7d7e22cb4714f4b0a1"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "75d733003b065065d24501f8c9742f2c",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.6",
            "size": 2771054,
            "upload_time": "2024-07-17T20:48:02",
            "upload_time_iso_8601": "2024-07-17T20:48:02.154562Z",
            "url": "https://files.pythonhosted.org/packages/ec/21/cc9e553820bc951773cf0af286217fa54116a6abb23fa81b3497309211b7/pyrodigal-3.5.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "208ca30e44699f7b4fd4d462ba1992c74c3cf227b2a735595ad262d91b93e463",
                "md5": "cff8947e4b67f62b9fbae40a3285ab0e",
                "sha256": "48b607d024a357db1ab35883d8f96e6fa2c7c7b3dd62074ca8b461c4df8c4ca7"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "cff8947e4b67f62b9fbae40a3285ab0e",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.6",
            "size": 2791255,
            "upload_time": "2024-07-17T20:48:08",
            "upload_time_iso_8601": "2024-07-17T20:48:08.854215Z",
            "url": "https://files.pythonhosted.org/packages/20/8c/a30e44699f7b4fd4d462ba1992c74c3cf227b2a735595ad262d91b93e463/pyrodigal-3.5.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b4d23ce10c249382251bb079eb92ab715eda0f41afca1dfd1fdd6707028e364e",
                "md5": "0e65dbcb908540648d2ec2c5ce2e2d5f",
                "sha256": "bbf3579cd847e51639eb9691e12dcb1171240a7e35feeac075ae17e792671cb4"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1-pp39-pypy39_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "0e65dbcb908540648d2ec2c5ce2e2d5f",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.6",
            "size": 3089819,
            "upload_time": "2024-07-17T20:48:15",
            "upload_time_iso_8601": "2024-07-17T20:48:15.274407Z",
            "url": "https://files.pythonhosted.org/packages/b4/d2/3ce10c249382251bb079eb92ab715eda0f41afca1dfd1fdd6707028e364e/pyrodigal-3.5.1-pp39-pypy39_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ca227f13942fe55586a8f0cab3bc119ce368c550e9afc2c26a8e0b6f8ed68a9c",
                "md5": "d28558d3b19f2822b2f461812c4274f5",
                "sha256": "20af59a6d968c88910b99d5f647bb7dd22d49e440ead95fe715cdd2c49f36e9f"
            },
            "downloads": -1,
            "filename": "pyrodigal-3.5.1.tar.gz",
            "has_sig": false,
            "md5_digest": "d28558d3b19f2822b2f461812c4274f5",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 2578391,
            "upload_time": "2024-07-17T20:48:17",
            "upload_time_iso_8601": "2024-07-17T20:48:17.197225Z",
            "url": "https://files.pythonhosted.org/packages/ca/22/7f13942fe55586a8f0cab3bc119ce368c550e9afc2c26a8e0b6f8ed68a9c/pyrodigal-3.5.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-17 20:48:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "althonos",
    "github_project": "pyrodigal",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyrodigal"
}
        
Elapsed time: 0.28720s