Skip to main content

Cython bindings and Python interface to SWORD (Smith Waterman On Reduced Database), a heuristic method for fast database search.

Project description

🐍🗡️ PySWRD Stars

Cython bindings and Python interface to SWORD (Smith Waterman On Reduced Database), a method for fast database search.

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

🗺️ Overview

Searching a sequence inside a database of target sequences involves aligning the sequence to all the targets to find the highest scoring ones, which has a high computational cost. Several methods have been proposed over the years that use a pre-filter to select. In BLAST[1], k-mers are extracted from the query, and only targets containing high-scoring k-mers, with respect to the scoring matrix, are actually aligned.

SWORD[2] proposes a pre-filter built on perfect hashing of short mismatching k-mers. The k-mers generated from the query sequence also include k-mers with mismatches to improve sensitivity. When a k-mer is found in a target sequence, SWORD computes the diagonal where it is located, similarly to FASTA[3]. Target sequences are then selected based on the number of hits they have on the same diagonal. The pairwise alignment is then handled by the platform-accelerated Opal[4] library.

PySWRD is a Python module that provides bindings to the heuristic filter part of SWORD using Cython. It implements a user-friendly, Pythonic interface to build a heuristic filter, process a database in chunks, and produce the indices of targets passing the filter. The resulting indices can be used to filter a PyOpal database, using Opal for pairwise alignment like the original C++ implementation.

  • no binary dependency: PySWRD is distributed as a Python package, so you can add it as a dependency to your project, and stop worrying about the SWORD 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 SWORD CLI using a sub-process and temporary files.
  • better portability: Using only the heuristic filter of SWORD allows the code to be independent of the local CPU features, unlike SWORD and Opal which require SIMD. PySWRD delegates the SIMD compilation and dynamic dispatch to PyOpal to make the package easier to install. It also benefits from the wider platform support of PyOpal compared to the original Opal, featuring support for Windows and for Aarch64 CPUs.

🔧 Installing

PySWRD is available for all modern Python versions (3.6+).

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

$ pip install pyswrd

💡 Example

PySWRD does not provide I/O, so the sequences to be used have to be loaded through another library, such as Biopython. PySWRD only requires the sequences to be available as Python strings:

targets = [
    'MAFSAEDVLKEYDRRRRMEALLLSLYYPNDRKLLDYKEWSPPRVQVECPK', 
    'MSIIGATRLQNDKSDTYSAGPCYAGGCSAFTPRGTCGKDWDLGEQTCASG', 
    'MASNTVSAQGGSNRPVRDFSNIQDVAQFLLFDPIWNEQPGSIVPWKMNRE', 
    'MYQAINPCPQSWYGSPQLEREIVCKMSGAPHYPNYYPVHPNALGGAWFDT', 
    'MARPLLGKTSSVRRRLESLSACSIFFFLRKFCQKMASLVFLNSPVYQMSN'
]
queries = [
    'MASNTVSAQGGSNRPVRDFSNIQDVAQFLLFDPIWNEQPG', 
    'MSFKVYDPIAELIATQFPTSNPDLQIINNDVLVVSPHKIT', 
    'MEQVPIKEMRLSDLRPNNKSIDTDLGGTKLVVIGKPGSGK'
]

Use the high-level search function, which wraps the internal classes in a single function to quickly run many-to-many searches in the event all your sequences are in memory. It expects the sequences as iterable of Python strings, and yields hits passing E-value and alignment thresholds:

import pyswrd
for hit in pyswrd.search(queries, targets):
    print(hit.query_index, hit.target_index, hit.score, hit.evalue)

Different parameters can be passed to pyswrd.search and are passed to the SWORD filter and Opal alignment. For instance, to run SWORD in fast mode instead of the default sensitive mode, and using the PAM70 matrix instead of BLOSUM62, use:

for hit in pyswrd.search(queries, targets, scorer_name="PAM70", score_threshold=0, kmer_length=5):
    print(hit.query_index, hit.target_index, hit.score, hit.evalue)

By default multithreading is supported, using one thread per CPU on the local machine as reported by os.cpu_count, but it can be changed with the threads argument:

for hit in pyswrd.search(queries, targets, threads=1):
    print(hit.query_index, hit.target_index, hit.score, hit.evalue)

You can also use the pyswrd.HeuristicFilter class directly if you wish to manage the data yourself, or if you want to use a different aligner.

⏱️ Benchmarks

The table below shows the time for running pyswrd.search using 196 proteins as queries (uniprot_sprot196.fasta) against a database of 12,701 proteins (uniprot_sprot12071.fasta) pre-loaded into memory:

threads=1 threads=2 threads=4 threads=8 threads=12
max_candidates=10 0.87s 0.83s 0.83s 0.80s 0.76s
max_candidates=50 0.98s 0.91s 0.98s 0.97s 1.04s
max_candidates=100 1.24s 1.33s 1.44s 1.63s 1.67s
max_candidates=500 1.86s 1.83s 1.95s 2.09s 2.15s
max_candidates=1000 2.87s 2.64s 2.83s 2.82s 2.90s
max_candidates=5000 9.33s 8.11s 7.59s 6.60s 6.06s
max_candidates=15000 21.50s 15.85s 14.74s 11.83s 11.34s
max_candidates=30000 23.44s 16.13s 14.61s 12.47s 11.08s
no filter (Opal) 31.38s 23.60s 19.57s 15.43s 14.60s
BLAST+ (blastp) 7.46s 4.97s 4.01s 3.63s 3.66s

The max_candidates parameter controls the strictness of the SWORD heuristic filter, and reduces the total number of alignments made by Opal, at the cost of a lowered sensivity (see SWORD Supplementary Figs. S1 and S2.).

SWORD uses 15,000 candidates in fast mode and 30,000 candidates in sensitive mode by default. This was benchmarked against the NCBI NR database, which contains more than 54M sequences; it is likely a smaller max_candidates value can be selected for smaller databases and/or databases with less redundant sequences without loss of sensitivity.

💭 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 GNU General Public License v3.0. SWORD was written by Robert Vaser and is distributed under the terms of the GPLv3 as well. See vendor/sword/LICENSE for more information. SWORD redistributes additional libraries under the terms of the MIT License.

This project is in no way not affiliated, sponsored, or otherwise endorsed by the SWORD 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

pyswrd-0.3.1.tar.gz (989.3 kB view details)

Uploaded Source

Built Distributions

pyswrd-0.3.1-cp313-cp313-win_amd64.whl (279.6 kB view details)

Uploaded CPython 3.13Windows x86-64

pyswrd-0.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (399.8 kB view details)

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

pyswrd-0.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (399.2 kB view details)

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

pyswrd-0.3.1-cp313-cp313-macosx_11_0_arm64.whl (272.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyswrd-0.3.1-cp313-cp313-macosx_10_13_x86_64.whl (296.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

pyswrd-0.3.1-cp312-cp312-win_amd64.whl (272.6 kB view details)

Uploaded CPython 3.12Windows x86-64

pyswrd-0.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (399.3 kB view details)

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

pyswrd-0.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (397.9 kB view details)

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

pyswrd-0.3.1-cp312-cp312-macosx_11_0_arm64.whl (267.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyswrd-0.3.1-cp312-cp312-macosx_10_13_x86_64.whl (288.0 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

pyswrd-0.3.1-cp311-cp311-win_amd64.whl (278.7 kB view details)

Uploaded CPython 3.11Windows x86-64

pyswrd-0.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (406.6 kB view details)

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

pyswrd-0.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (415.1 kB view details)

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

pyswrd-0.3.1-cp311-cp311-macosx_11_0_arm64.whl (270.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyswrd-0.3.1-cp311-cp311-macosx_10_12_x86_64.whl (287.6 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pyswrd-0.3.1-cp310-cp310-win_amd64.whl (277.5 kB view details)

Uploaded CPython 3.10Windows x86-64

pyswrd-0.3.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (403.5 kB view details)

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

pyswrd-0.3.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (413.4 kB view details)

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

pyswrd-0.3.1-cp310-cp310-macosx_11_0_arm64.whl (268.1 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyswrd-0.3.1-cp310-cp310-macosx_10_12_x86_64.whl (285.2 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

pyswrd-0.3.1-cp39-cp39-win_amd64.whl (272.7 kB view details)

Uploaded CPython 3.9Windows x86-64

pyswrd-0.3.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (402.3 kB view details)

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

pyswrd-0.3.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (412.0 kB view details)

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

pyswrd-0.3.1-cp39-cp39-macosx_11_0_arm64.whl (268.6 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyswrd-0.3.1-cp39-cp39-macosx_10_12_x86_64.whl (285.5 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

pyswrd-0.3.1-cp38-cp38-win_amd64.whl (273.4 kB view details)

Uploaded CPython 3.8Windows x86-64

pyswrd-0.3.1-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (403.7 kB view details)

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

pyswrd-0.3.1-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (412.8 kB view details)

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

pyswrd-0.3.1-cp38-cp38-macosx_11_0_arm64.whl (267.7 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyswrd-0.3.1-cp38-cp38-macosx_10_12_x86_64.whl (285.1 kB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

File details

Details for the file pyswrd-0.3.1.tar.gz.

File metadata

  • Download URL: pyswrd-0.3.1.tar.gz
  • Upload date:
  • Size: 989.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyswrd-0.3.1.tar.gz
Algorithm Hash digest
SHA256 dfae4c73e8362903a0aef9d4cb784ea146568facd016e5ddd494935e731f730c
MD5 e0bff3fad2842475384136e07da5ed49
BLAKE2b-256 298bf3ddcd732ac9ec22c9863d61e167552f82c110e944468f039adacb047631

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1.tar.gz:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pyswrd-0.3.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 279.6 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 pyswrd-0.3.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a81d112cf0d1a96eebbc730c5104015fc53c5e4868b377653a5570ec0b6c1bff
MD5 423a10922c9ea35129454e2bc4644945
BLAKE2b-256 7f18e0215b6c39e05898cb3677f8303725e367365fa6720a275d14714dc3fa0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp313-cp313-win_amd64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e56faa724e9e2cd29b2d2a275f0bf0c895a558b22d5a26fcde99af779c285062
MD5 6962e88d101c6cdf0744fb1dc0b8d30f
BLAKE2b-256 7bc6f4ca52f8a4206bc6d73b3819ce97e0e78fa954a0918081e1843dbf019b43

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9e0826a2ec151ea525846eca040e3c40738a575d92da25392ee669a2b4e9a61f
MD5 ed76d8e2cac4d7999ec5803c5f2e8cb0
BLAKE2b-256 5dfaf2a8f63c84bdf288cb9bd8431871c301490dac83ee799a9d2b18fb211132

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bd1f84ab6544c7400dbc109516e42d0d377d4ee07b3e3100d23754e3ea8eecbb
MD5 fb3ebc3eff29c5e12d29450fae9ed36d
BLAKE2b-256 ef2336c5a1abe19f4ae58dea28eea1f23c338e8253557de61b2c507a0f5a152a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2bcaaa4cfc29ecc45607a3ff080bb9287db2ed80de10c9b2b956d05c104c04f1
MD5 f880f14009a0c270613a1d723ccaa9dd
BLAKE2b-256 7029fac6942d58181ad12d471ba7e2a09eca859dfd20fcdefcf0af6f4967e36a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pyswrd-0.3.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 272.6 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 pyswrd-0.3.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cd7fe3dcf33b991154cad503ccdf05ff2e2f0dd7bc5c4b93454336a696fe00ee
MD5 7047c198512d46f1ce1e5a236b941326
BLAKE2b-256 497e540e9320e484ed91f5a54374ef7e72bdbca54fa1eadca4056167732014d1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp312-cp312-win_amd64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6b0731b054e6b59d5914cfa0248dd74504a9ff75a0cfd21a47fe4a922fb6c72e
MD5 d85276eed6d3ae2b83ddb27c5a0fc54d
BLAKE2b-256 cf9fd0f8dc51c070e339d79e3004d5eb44703fccaade3cddc333cb52955ebecf

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 97f9212fb8239c4ce4bd2cd9b727196cd9a470293f41fd811080dbe448d29e1e
MD5 88cd9a7f1d352be112d398a477c4e260
BLAKE2b-256 de26557404ce71c05fef7f33611df69cd037bb9b19ffa125ea90789323a566a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 53e3b1d131983d1a5c4fc1e69592c662289932543fabb31712fb1703e2d293e4
MD5 f4ab83a4fcd61499641751c18c87d49b
BLAKE2b-256 33bbe186d7053c8d552ccd883c15d3bbde0d80b737781acb9094eb02573d60d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a76333f2c6dfd54bec85dd634dc05b6394f01e3ba92833ac6b5f082d9516bfef
MD5 d855071e080cdfec378abf3a20b45e59
BLAKE2b-256 4d4ea965367f91373b9b9fda36bf5ac4ab14924c953ef850d0b2fed4153fe1de

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyswrd-0.3.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 278.7 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 pyswrd-0.3.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7218cec687b65e5acfa0acd7bd23ee966f247e7168c92c73eb0681721b56c9c1
MD5 08ac1c51b9e7fa94d0d9d2b15bf24ecc
BLAKE2b-256 065ed037d144af6ded4679929804ef82fe04a7baf44fae9481ec5eb9f6719313

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp311-cp311-win_amd64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4fe39e58a85517a2ed094324671304d420f3080542cb28dd1153d69ee33ecf1e
MD5 2429a915cc69f34f9379d4da8697529d
BLAKE2b-256 57d5d66e8118f6a43ea2ad9582b27067c023ffabeffc5399a865c91cba0dbb73

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 af62e96192232527a3e8ab66ef2ba1ae21e96356d4f18fb91866cc2951b51c59
MD5 049a01d22b5a5be828182aa93e4dc2d7
BLAKE2b-256 9e9fc9d709385a55ec0394e29dbcc5fd69e20e24e65096ec0a78dfebd0c24880

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 79100fd18e38cd3a8d3052418cffad489bbf3e120f42e50055d2c09629661ace
MD5 3b70db21b6c2faba61b02cdc83e45fff
BLAKE2b-256 14589290c1d64f03f9c8292664eb5e867e1fefa6d0f691fd8f17de6922e3bc42

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7e16d36be32d4af4b3c6d69ea90f5fcacd3b13ecbf338e24077a70f31f11e561
MD5 28b9c716244cbc10d202d797655b4ab5
BLAKE2b-256 25f27e9d24f22df565f43b107c1c3ff80488b3330ca99547125c52ddd18dc462

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyswrd-0.3.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 277.5 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 pyswrd-0.3.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0100137b8d671a0eab74db2c8cc1e990cb7404ebd5812850f0211c33eb1809c8
MD5 d1321cc6f6cc93e9ee54c5bc6d4ec3d8
BLAKE2b-256 1b9ccae40d76c1bb7407e256798e61ec3c96075042ad1dd8cd5948e9d7b50b91

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp310-cp310-win_amd64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f608e67cc7fd48e6afc7a801d690a726f36740c5f419bd03587f5854b2fb675e
MD5 04b3b7ebaf26c36a6992457ddc1b7725
BLAKE2b-256 a5312f0483e6384b1dfd90c89ff7da8971903b4a4d6cce16eb59ac73dc0daa88

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dd87ceefc031973b219f4cd4c1f8818757f6420d9a4c52e5b36bea24cac92446
MD5 b85d44d1caadbe57c0018e5eea8edf87
BLAKE2b-256 28e584729a0567f5d12b71bc27f626c83c8cfd7f19583a6d581a26f2dbd567b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bfca722e3df63e9eb4a872f5d9d2c118c2b45b1c17bd32c2d37cfdaf8ad78d8c
MD5 4f8375eaa3e1f56e3045b4e6c2a08b34
BLAKE2b-256 275065a285653da8f900304c13c8c4097408cd7b3ed885696d74cf6430500cd1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b1c128ca283d1812069d2dabb5249655015e24a9f84222a075a0f2aff4ed2b8f
MD5 1fa2aafda31264473066dc4f9144aea2
BLAKE2b-256 4479f1a56e0f0ccee2995f66ddcaf673ddb1b41c1bfaa1fc3348f598f0884ed3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pyswrd-0.3.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 272.7 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 pyswrd-0.3.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 fe15ba0f8326503d1dd2a78fbdfa180ef8316e703f811ea5f3d0850d63638874
MD5 1df1b8af5f7fc572eda7a7f5231b0fd2
BLAKE2b-256 0d462902f293823cf3b7bf6347ed78bd923961c68a64a44f41b298b2510db264

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp39-cp39-win_amd64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0648179070a0a90e78823b17fbe69af8b72fea05d64704c5aad4bb8c691516a8
MD5 e3d8b0f77914fdc943334a79763613b3
BLAKE2b-256 feb1a3e3fb1c6841b0e048812c11e58dc5798442b4ae8f69d3da6293131dc67c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b24a1cee79dfcccd86df96b1cc0c54d97a3463b4a21dc89545136265e442708e
MD5 a72b13063c0ad74a06944c9e68d5e345
BLAKE2b-256 8e3fb0262c53264439a73e3d926f62867c04430f4d807583b0af7a86e804a8e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b74159ee02297ad3b7f9e189e8da605d214ace4ee4b784508f427d2c0a069e7d
MD5 796f4fd67f604d3d85a99d2d087459e8
BLAKE2b-256 00106eaefcaeec61ce2578e8cd92f638dd2a929ebb33aaad683218aff3729c33

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 aada9f777557767bd9303620a115bacedc06361570a363c999dc1008c7d3379b
MD5 fcddb65473c4fb30a137b693a57e8993
BLAKE2b-256 1d894fc2c2d6e903fb3d6477b4ed99724f04a745a2e1290b4269265e288a5b8d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp39-cp39-macosx_10_12_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pyswrd-0.3.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 273.4 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 pyswrd-0.3.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 b75662a9e36659fc071134d8fe12ff53e8b69b0d87121e320e686cfff91f1346
MD5 5410386b6a32d5bd9c9c9522b50e0c45
BLAKE2b-256 0bc40b78583a578f4edfaa0f4444424f2ed8645943e67db6a0ce7cf1d9e32c77

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp38-cp38-win_amd64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4b16abab51e28f0ef290301b3010fdcceca9e577e41c89d20806a6cd16e1e3d7
MD5 ace977f6b7e165af6f0eba1a6484cd37
BLAKE2b-256 09d275e63028602c969cfe017cb671e876953ad497002fe15d1cb95a485caee2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 671d0c17cae3bdf9b1725a3b3712b0e9c1ee85c623df9d6e6c9e50ba316bd1af
MD5 ab654833afddbd22cdbe7e74cf357fb8
BLAKE2b-256 15bfc55459e5a9273dc34ebb59b190ed903364a4418448c9c20ae1dd3c8bcd68

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp38-cp38-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f7a630ffa8d645eb04fe85ce70ccd39e3ef62e85daa5198b1926dc0f95070da3
MD5 be898aa5f7ed440a069ae1a12516092f
BLAKE2b-256 89195c6162f0fe14b149a7a2c0720f9e985dbe6f26640bb88232050c47a89109

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp38-cp38-macosx_11_0_arm64.whl:

Publisher: package.yml on althonos/pyswrd

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

File details

Details for the file pyswrd-0.3.1-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyswrd-0.3.1-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9299980d984e4e656c5a3879eaa37929d6d5488680812a1ce4ac94b3e59acbba
MD5 7d65f46d48bf586d26c80d1c6cf322e1
BLAKE2b-256 f1c5db6524c5bf874fc18cf8985d37057dcf2ca3d78d0bb6cbc1bfb3d5f15f6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyswrd-0.3.1-cp38-cp38-macosx_10_12_x86_64.whl:

Publisher: package.yml on althonos/pyswrd

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 Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page