Skip to main content

Cython bindings and Python interface to Opal, a SIMD-accelerated pairwise aligner.

Project description

🐍🌈🪨 PyOpal Stars

Cython bindings and Python interface to Opal, a SIMD-accelerated database search aligner.

Actions Coverage License PyPI Bioconda AUR Wheel Python Versions Python Implementations Source Mirror Issues Docs Changelog Downloads

🗺️ Overview

Opal is a sequence aligner enabling fast sequence similarity search using either of the Smith-Waterman, semi-global or Needleman-Wunsch algorithms. It is used part of the SW#db method[1] to align a query sequence to multiple database sequences on CPU, using the multi-sequence vectorization method described in SWIPE[2]

PyOpal is a Python module that provides bindings to Opal using Cython. It implements a user-friendly, Pythonic interface to query a database of sequences and access the search results. It interacts with the Opal interface rather than with the CLI, which has the following advantages:

  • no binary dependency: PyOpal is distributed as a Python package, so you can add it as a dependency to your project, and stop worrying about the Opal binary being present on the end-user machine.
  • no intermediate files: Everything happens in memory, in a Python object you control, so you don't have to invoke the Opal CLI using a sub-process and temporary files.
  • better portability: Opal uses SIMD to accelerate alignment scoring, but doesn't support dynamic dispatch, so it has to be compiled on the local machine to be able to use the full capabilities of the local CPU. PyOpal ships several versions of Opal instead, each compiled with different target features, and selects the best one for the local platform at runtime.
  • wider platform support: The Opal code has been backported to work on SSE2 rather than SSE4.1, allowing PyOpal to run on older x86 CPUs (all x86 CPUs support it since 2003). In addition, Armv7 and Aarch64 CPUs are also supported if they implement NEON extensions. Finally, the C++ code of Opal has been modified to compile on Windows.

🔧 Installing

PyOpal is available for all modern versions (3.6+), optionally depending on the lightweight Python package archspec for runtime CPU feature detection.

It can be installed directly from PyPI, which hosts some pre-built x86-64 wheels for Linux, MacOS, and Windows, Aarch64 wheels for Linux and MacOS, as well as the code required to compile from source with Cython:

$ pip install pyopal

Otherwise, PyOpal is also available as a Bioconda package:

$ conda install -c bioconda pyopal

Check the install page of the documentation for other ways to install PyOpal on your machine.

💡 Example

All classes are imported in the main namespace pyopal:

import pyopal

pyopal can work with sequences passed as Python strings, as well as with ASCII strings in bytes objects:

query = "MAGFLKVVQLLAKYGSKAVQWAWANKGKILDWLNAGQAIDWVVSKIKQILGIK"
database = [
    "MESILDLQELETSEEESALMAASTVSNNC",
    "MKKAVIVENKGCATCSIGAACLVDGPIPDFEIAGATGLFGLWG",
    "MAGFLKVVQILAKYGSKAVQWAWANKGKILDWINAGQAIDWVVEKIKQILGIK",
    "MTQIKVPTALIASVHGEGQHLFEPMAARCTCTTIISSSSTF",
]

If you plan to reuse the database across several queries, you can store it in a Database, which will keep sequences encoded according to an Alphabet:

database = pyopal.Database(database)

The top-level function pyopal.align can be used to align a query sequence against a database, using multithreading to process chunks of the database in parallel:

for result in pyopal.align(query, database):
    print(result.score, result.target_index, database[result.target_index])

See the API documentation for more examples, including how to use the internal API, and detailed reference of the parameters and result types.

🧶 Thread-safety

Database objects are thread safe through a C++17 read/write lock that prevents modification while the database is searched. In addition, the Aligner.align method is re-entrant and can be safely used to query the same database in parallel with different queries across different threads:

import multiprocessing.pool
import pyopal
import Bio.SeqIO

queries = [
    "MEQQIELDVLEISDLIAGAGENDDLAQVMAASCTTSSVSTSSSSSSS",
    "MTQIKVPTALIASVHGEGQHLFEPMAARCTCTTIISSSSTF",
    "MGAIAKLVAKFGWPIVKKYYKQIMQFIGEGWAINKIIDWIKKHI",
    "MGPVVVFDCMTADFLNDDPNNAELSALEMEELESWGAWDGEATS",
]

database = pyopal.Database([
    str(record.seq)
    for record in Bio.SeqIO.parse("vendor/opal/test_data/db/uniprot_sprot12071.fasta", "fasta")
])

aligner = pyopal.Aligner()
with multiprocessing.pool.ThreadPool() as pool:
    hits = dict(pool.map(lambda q: (q, aligner.align(q, database)), queries))

💭 Feedback

⚠️ Issue Tracker

Found a bug ? Have an enhancement request ? Head over to the GitHub issue tracker 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 for more details.

📋 Changelog

This project adheres to Semantic Versioning and provides a changelog in the Keep a Changelog format.

⚖️ License

This library is provided under the MIT License. Opal is developed by Martin Šošić and is distributed under the terms of the MIT License as well. See vendor/opal/LICENSE for more information.

This project is in no way not affiliated, sponsored, or otherwise endorsed by the Opal authors. It was developed by Martin Larralde during his PhD project at the European Molecular Biology Laboratory in the Zeller team.

📚 References

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyopal-0.7.3.tar.gz (2.1 MB view details)

Uploaded Source

Built Distributions

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

pyopal-0.7.3-cp313-cp313-win_amd64.whl (505.8 kB view details)

Uploaded CPython 3.13Windows x86-64

pyopal-0.7.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (853.5 kB view details)

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

pyopal-0.7.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (483.7 kB view details)

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

pyopal-0.7.3-cp313-cp313-macosx_11_0_arm64.whl (287.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyopal-0.7.3-cp313-cp313-macosx_10_13_x86_64.whl (508.9 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

pyopal-0.7.3-cp312-cp312-win_amd64.whl (496.3 kB view details)

Uploaded CPython 3.12Windows x86-64

pyopal-0.7.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (857.6 kB view details)

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

pyopal-0.7.3-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (483.0 kB view details)

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

pyopal-0.7.3-cp312-cp312-macosx_11_0_arm64.whl (282.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyopal-0.7.3-cp312-cp312-macosx_10_13_x86_64.whl (504.8 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

pyopal-0.7.3-cp311-cp311-win_amd64.whl (513.0 kB view details)

Uploaded CPython 3.11Windows x86-64

pyopal-0.7.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (867.4 kB view details)

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

pyopal-0.7.3-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (502.6 kB view details)

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

pyopal-0.7.3-cp311-cp311-macosx_11_0_arm64.whl (286.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyopal-0.7.3-cp311-cp311-macosx_10_12_x86_64.whl (501.5 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pyopal-0.7.3-cp310-cp310-win_amd64.whl (511.9 kB view details)

Uploaded CPython 3.10Windows x86-64

pyopal-0.7.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (864.1 kB view details)

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

pyopal-0.7.3-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (501.5 kB view details)

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

pyopal-0.7.3-cp310-cp310-macosx_11_0_arm64.whl (284.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyopal-0.7.3-cp310-cp310-macosx_10_12_x86_64.whl (498.7 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

pyopal-0.7.3-cp39-cp39-win_amd64.whl (505.8 kB view details)

Uploaded CPython 3.9Windows x86-64

pyopal-0.7.3-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (866.3 kB view details)

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

pyopal-0.7.3-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (501.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

pyopal-0.7.3-cp39-cp39-macosx_11_0_arm64.whl (285.8 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyopal-0.7.3-cp39-cp39-macosx_10_12_x86_64.whl (500.9 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

pyopal-0.7.3-cp38-cp38-win_amd64.whl (508.6 kB view details)

Uploaded CPython 3.8Windows x86-64

pyopal-0.7.3-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (869.5 kB view details)

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

pyopal-0.7.3-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (504.4 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

pyopal-0.7.3-cp38-cp38-macosx_11_0_arm64.whl (287.4 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyopal-0.7.3-cp38-cp38-macosx_10_12_x86_64.whl (504.7 kB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

File details

Details for the file pyopal-0.7.3.tar.gz.

File metadata

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

File hashes

Hashes for pyopal-0.7.3.tar.gz
Algorithm Hash digest
SHA256 11a5fffc970c9ff963aeb2c3dfc57bff7c09f0ab44ef245ad2e7752a2c0715bf
MD5 81c87ec907297629836911b055e5fe69
BLAKE2b-256 afa2748ef3fc8e532b665a0a1135f6dc0d8e4a600e60ecb3a2fd6d471bd77514

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3.tar.gz:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pyopal-0.7.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 505.8 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyopal-0.7.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 285d2cd30dc71b1d256db010a64f68062f211ec7a031d9c6a2ccefdef42469c4
MD5 9ff8db8774f30d2971338c053de7b795
BLAKE2b-256 341a2e4c52d3f8858d57c6683944e8d413ff5cb00f690df5197f9a5e2be0d0fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp313-cp313-win_amd64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b3c064afb53dbb5dc0264f73aa6795004ff0201c7397737ebd8e9c29abc52a68
MD5 97b16a7be53db109da0e300cba067de6
BLAKE2b-256 d3f4bbc66ee9ff661d3048cdccc01234677dac357be69a678785b9f623c7b392

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d5ebe6cf9596368e3ab8f0c8dca922cf02366416006259ad0e408d5b01d3c4e4
MD5 7f463c02b66d47026615c2ccfac3326a
BLAKE2b-256 e89f9a586b0e934e1c0ae64e53056c029c5c28d5dd5c2b0f9433f3ee0dabc56c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 82f3532aa63d021358011baff70bac2f3f1e17ab2ae1c0bfdcbc57a41387ee6f
MD5 80a33f00cf983abbc1c6a8c442719ebf
BLAKE2b-256 41a9876061a7ac9a500ad287ebbee4b44f7d0013bfeff82846a632b89673004b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 29c624a951a017768732d40113e4025d675391a276e761c5f5609a9247d6eacf
MD5 e7cfb19c2f0e2a67199a5938d499fb19
BLAKE2b-256 fbe9e8b8ee25b67590f5514f426d9e1f0507dbccf5ca6889704631b19e7cb41b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pyopal-0.7.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 496.3 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyopal-0.7.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f0c7ffb33cdd1951e18ac00d6fcf66b30117d717c939b66f2ca327462994943b
MD5 71a65dcc008ae9393773b7650857c23b
BLAKE2b-256 d0d76b8241be8f682823f08a52aa4eaa733fb4ce4c3343f7b5f792a938b21652

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp312-cp312-win_amd64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b329499b8ac0b36754a9345edfbb1d6cfc32b78cce33480a3757686fb35be609
MD5 d51b4483e52cca2e0649a77f43fba963
BLAKE2b-256 746bf7bf6eece7d5567166948d7805ca3ef44e80b93542a4662b66415c99bb80

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 14f4969eec81a22b721235beba4955bcfa2819f6b4e6fe13e14f5d82df075e4f
MD5 1c000825ecb4c1eb2e6be1553520cba9
BLAKE2b-256 c71a0b45975b411c2d82df6d0d38a9dfe221486df20aac139c45c7a49ce612ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aa44773c23996615664f5db922a1ddf7cadcdcf8716580361fd8d659d6b99628
MD5 5773372306f67226c2f1a4507053835e
BLAKE2b-256 4e3cbaa94dcd1aacf8361eeed785f79b642ff590bb4f7e47c2717a316de3539c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b7de4e70fc93ed8d7481686c04bcdc74d913b5defd61ba29aecf85d732e97a7c
MD5 cc4ac9b04a10b12e57ad1d9668100bf6
BLAKE2b-256 a1055176631a86dc6eb2afb79fede984afad7fc73d99d2f67f7e679fdedf5835

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyopal-0.7.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 513.0 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyopal-0.7.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 870bc34fba8fe8ec8d69ab77789b13dc98dd3b56380476f0c6d6d60edaff40c4
MD5 fb9d81b163d101e1b9b91d2569f8dbd5
BLAKE2b-256 fbbe8b7a2354644336fa4e5afa798bf6541ef4197452a11a4e135569611d6731

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp311-cp311-win_amd64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 95d0a37d1a86a42ef9a66a11a8e2a4831c44512be0952b204073192f1f5a9311
MD5 877b9c8816429ecb60a75e22bdeaf84d
BLAKE2b-256 c6ac4ea22033cbb1a7d13c0b4374827a3ea782af52809e917f85efb1387d79b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9c16db9a2d9cf226a8e02c3e6772124b8ec95ce5b3b74aef9de9594e985baa2c
MD5 782b897828e4821c5a8238e94a8cdc71
BLAKE2b-256 02a0e0c70df267175101a338fcc871a60c8713a7aa2d27856206606c90b179a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9278a99b237d83c6ead69d933c16bee21d17fb40c09f904a278b0f47fe8c93e6
MD5 2922a18499e902817d596b0ceb2b20f3
BLAKE2b-256 4e95cc23385f614cd069bd704d922a9a2cf5ea80974adfe65c437f052a58c2e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8002140083c1daf6b256b9c4ce107795fae1d4bf0fb70c568cc5f5836c71eaf2
MD5 b543ea82bb2a6940b068abac01eb1320
BLAKE2b-256 d85a10c9744cc7fbc896a67965684402e09d24fdccef7cc9f0862fa50c4c8024

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyopal-0.7.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 511.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyopal-0.7.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d8696368673f8a55e8c9722159c4956f3734e8333c839cb735ad03754616896d
MD5 5c0710f9b9e50253302c2991c355bed8
BLAKE2b-256 ef8155ffd8d59606111e5f561c2212e04a358c319703b52d6c189d416788f0a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp310-cp310-win_amd64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 45d6f6d2e7b44b669bee9707545ac8b3cfdaf61d30192bf273bb30d830fb208f
MD5 a47bd7f353125936496b330df8dcb139
BLAKE2b-256 cfad3beab271ae824d762ada1023bd1111031c8f78081ab30ff826825f80af83

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e1cf94000708dd7f2773b85a5daf98a1386ab7cbc50004ae51ecb9914a712d13
MD5 c711b90fe2344f65fe30ce4b03088584
BLAKE2b-256 95409981b435cc6ec988bf0ee433c0944d4ad432e8ef5f0bc74966d19e411244

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 30e3770bfa474642f863c26338f5189fd59cccb2279251296a782d75b0345b28
MD5 0a9c01bbc7e3ab8876ab4e6d2b1a9ed2
BLAKE2b-256 3a98947a7000900da321baf17ffab2d66d5c81c80a5d9b94406d4c0f74af4065

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 dae2495ea47d3ca5edf09328d28fd44458759c9dac61320904465dcdd9abf653
MD5 0668f31ffbbb4a6c248e430edd6b6969
BLAKE2b-256 da1b3e3b67239c1c8611ba7a67915ca41f4c8c8c7983332aaef12b2041f3eae7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pyopal-0.7.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 505.8 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyopal-0.7.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 65698d87292873cd2d8ed47acd7fdc831a514452c2880980220687e050934b88
MD5 65606a0f2c59591a66f059435bd26d0d
BLAKE2b-256 88402690b4e0037168c6facf7a2c6680f0bbd759a91ccd7d8ed8ed05594befce

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp39-cp39-win_amd64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c655a1760fe8fcc430d2527d8c740fe82c706e745cedf095b9247420d92ace1f
MD5 779a66c78b1754d14d71d03d50b50974
BLAKE2b-256 3c6683ab76016445ec2ad2aa55afe701069d2ffc935f723437c3c255cf811323

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b385d4f14b4367be717fa71458cdbf6c3ce933a8c246e786f1942f6de5dc4fdf
MD5 6865ca01c7a80b49a437e908b1d67e2c
BLAKE2b-256 b90a2905604a48646a2a5417443e3d62d8f015b6543253f40dcbfc85c16ddf24

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 05f2d41a0b141812e214b4731693ffec2661cfe6e721c6f713e8d7033b1a3185
MD5 acd01ddf26551e463fa36bcfa2746212
BLAKE2b-256 a6f148606b6ebc38ce8a5c461ed43c484f85b5d596b77c277f4ba8bbe52a6b21

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 120eb8049fbdf53f1e22059c023fe32ec5dace6acdcf554ab3bdbc670e0c404d
MD5 b392901efba8daf777864b00da5a1bd0
BLAKE2b-256 0739c75b791840b1d0d339a05be12bd0be41b99603dfb20e014beb261630d01a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp39-cp39-macosx_10_12_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pyopal-0.7.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 508.6 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyopal-0.7.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 04c98cee3340532cc7a780d0a4e87c290f03f7240122c4d3ad7e7ceee05a4f86
MD5 bb518bc0068ba636cdedee1170da6885
BLAKE2b-256 8f11148aa4675de37b553ab0f50b4faeb05a72d571dea8d4649f25548eff0f5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp38-cp38-win_amd64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eb3b2fcd3a0875033047baf7f17776e77996c2112cd654615207fcc21d381e75
MD5 209c76ed224dcdbc304f9e0692536116
BLAKE2b-256 0c547e18b4837ee9ad9e78973d1ec9b1301e0614c7d5e58667cf7786db28258d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ca563813d8e4e534f15bb328e00a64255a4edd3a0b7906154d947b35c28b428c
MD5 8d938f74f9f2c157cd839f1a3e1079c3
BLAKE2b-256 f363b3fedfb829701ac60e1288d38a0af8a896dbb545a04865eb839f7733830a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a4c036637a4acd2c92aa810d5283947a512a03579204da3178a090de00e51d6e
MD5 6687f71488cbe58368cc9151164cb2ec
BLAKE2b-256 08256330ad9996f89b3fcccaa39781da8eeb03414c9c489f38ceae73bdca2a05

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp38-cp38-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyopal

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

File details

Details for the file pyopal-0.7.3-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyopal-0.7.3-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c647ac2ee35655a60fa839225a63dbaeefcacb55f27391fd18a4f5a05b579718
MD5 e512a2cd52ae821a6cc2b9559930d64e
BLAKE2b-256 99777ffd74dd9b9b8950957573b778faff65d241d3052a6d1bf1eba8cc561300

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyopal-0.7.3-cp38-cp38-macosx_10_12_x86_64.whl:

Publisher: package.yml on althonos/pyopal

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page