Skip to main content

Python wrapper for the Kalign multiple sequence alignment engine

Project description

Kalign Python Package

Python bindings for Kalign, a fast multiple sequence alignment program for biological sequences (DNA, RNA, protein).

Installation

pip install kalign-python

Optional dependencies for ecosystem integration:

pip install kalign-python[biopython]    # Biopython integration (fmt="biopython", I/O helpers)
pip install kalign-python[skbio]        # scikit-bio integration (fmt="skbio")
pip install kalign-python[io]           # I/O helpers (requires Biopython)
pip install kalign-python[analysis]     # pandas + matplotlib for downstream analysis
pip install kalign-python[all]          # all of the above

Quick Start

import kalign

sequences = [
    "ATCGATCGATCG",
    "ATCGTCGATCG",
    "ATCGATCATCG"
]

# Default mode — consistency anchors + VSM (best general-purpose)
aligned = kalign.align(sequences)

# Fast mode — no consistency, fastest
aligned = kalign.align(sequences, mode="fast")

# Precise mode — ensemble + realign, highest precision
aligned = kalign.align(sequences, mode="precise")

Modes

Kalign v3.5 provides three named modes that package the best configurations:

Mode Python CLI Description
default mode="default" or omit kalign Consistency anchors + VSM. Best general-purpose.
fast mode="fast" kalign --fast VSM only. Fastest, similar to kalign v3.4.
precise mode="precise" kalign --precise Ensemble(3) + VSM + realign. Highest precision.

Explicit parameters always override mode defaults:

# Fast base + 5 ensemble runs
aligned = kalign.align(sequences, mode="fast", ensemble=5)

# Precise base + custom gap penalty
aligned = kalign.align(sequences, mode="precise", gap_open=8.0)

Mode constants are also available: kalign.MODE_DEFAULT, kalign.MODE_FAST, kalign.MODE_PRECISE.

Core API

kalign.align()

aligned = kalign.align(
    sequences,              # list of str
    mode=None,              # "default", "fast", "precise", or None (= default)
    seq_type="auto",        # "auto", "dna", "rna", "protein", "divergent", "internal"
    gap_open=None,          # positive float, or None for defaults
    gap_extend=None,        # positive float, or None for defaults
    terminal_gap_extend=None,
    n_threads=None,         # int, or None for global default
    refine="none",          # refinement mode: "none", "all", "confident", "inline"
    ensemble=0,             # number of ensemble runs (0 = off, try 3-5)
    min_support=0,          # explicit consensus threshold (0 = auto)
    fmt="plain",            # "plain", "biopython", "skbio"
    ids=None,               # list of str (for biopython/skbio output)
)

Returns a list of aligned strings (default), a Bio.Align.MultipleSeqAlignment (fmt="biopython"), or a skbio.TabularMSA (fmt="skbio").

When ensemble > 0 and fmt="biopython", per-residue confidence is attached as HMMER-style PP letter_annotations["posterior_probability"].

kalign.align_from_file()

Align sequences directly from a FASTA, MSF, or Clustal file:

result = kalign.align_from_file("sequences.fasta", seq_type="protein")
for name, seq in zip(result.names, result.sequences):
    print(f"{name}: {seq}")

Returns an AlignedSequences object with .names, .sequences, and optional confidence fields (see below).

Additional parameters for advanced use:

result = kalign.align_from_file(
    "input.fasta",
    mode="precise",              # or "default", "fast"
    ensemble=5,                  # override: 5 runs instead of mode default (3)
    min_support=0,               # consensus threshold (0 = auto)
    save_poar="consensus.poar",  # save POAR table for re-thresholding
    # load_poar="consensus.poar",  # OR load pre-computed POAR
    refine="none",               # refinement mode
)

kalign.compare()

Score a test alignment against a reference using the Sum-of-Pairs (SP) score:

score = kalign.compare("reference.msf", "test.fasta")
print(f"SP score: {score:.1f}")  # 0 (no match) to 100 (identical)

kalign.compare_detailed()

Detailed alignment comparison returning POAR recall/precision/F1/TC:

scores = kalign.compare_detailed("reference.msf", "test.fasta")
print(f"F1: {scores['f1']:.3f}, TC: {scores['tc']:.3f}")

kalign.write_alignment()

Write aligned sequences to a file:

kalign.write_alignment(aligned, "output.fasta", format="fasta", ids=ids)

Supported formats: fasta, clustal, stockholm, phylip (non-FASTA formats require Biopython).

Ensemble Alignment & Confidence Scores

Ensemble mode runs multiple alignments with varied parameters and combines results via POAR (Pairs of Aligned Residues) consensus. The simplest way to use it is mode="precise" (ensemble=3 + realign). For more control, set ensemble directly.

import kalign

# Precise mode: ensemble(3) + realign — highest precision
result = kalign.align_from_file("proteins.fasta", mode="precise")

# Or: explicit 5 ensemble runs
result = kalign.align_from_file("proteins.fasta", ensemble=5)

# Per-column confidence: average agreement across ensemble runs [0..1]
print(result.column_confidence[:10])   # e.g. [0.93, 0.87, 1.0, ...]

# Per-residue confidence: per-sequence, per-position agreement [0..1]
print(result.residue_confidence[0][:10])  # e.g. [0.95, 0.90, 1.0, ...]

POAR Save/Load

Save the POAR consensus table to avoid re-running the ensemble when experimenting with thresholds:

# First run: compute ensemble and save POAR
kalign.align_file_to_file("input.fa", "output.fa", ensemble=5,
                          save_poar="consensus.poar")

# Later: instant re-threshold from saved POAR (no re-alignment)
kalign.align_file_to_file("input.fa", "output2.fa",
                          load_poar="consensus.poar", min_support=3)

Stockholm Output with Confidence

Write confidence annotations in Stockholm format (#=GR PP per-residue, #=GC PP_cons per-column):

result = kalign.align_from_file("input.fasta", ensemble=5)
kalign.write_alignment(
    result.sequences, "output.sto", format="stockholm",
    ids=result.names,
    column_confidence=result.column_confidence,
    residue_confidence=result.residue_confidence,
)

Confidence uses HMMER-style PP encoding: *=95%+, 9=85-95%, ..., 0=0-5%, .=gap.

Biopython Per-Residue PP

When using fmt="biopython" with ensemble, per-residue confidence is attached as letter_annotations["posterior_probability"]:

aln = kalign.align(seqs, ensemble=3, fmt="biopython", ids=ids)
print(aln[0].letter_annotations["posterior_probability"])  # e.g. "998.76*9..."

Threading

import kalign

kalign.set_num_threads(4)        # set global default
n = kalign.get_num_threads()     # query current default

# or override per call
aligned = kalign.align(sequences, n_threads=8)

Thread settings are thread-local, so different threads can use different defaults.

Utilities (kalign.utils)

Requires only NumPy (installed automatically):

import kalign

aligned = kalign.align(sequences)

arr = kalign.utils.to_array(aligned)                          # numpy array
stats = kalign.utils.alignment_stats(aligned)                 # dict with gap_fraction, conservation, identity
consensus = kalign.utils.consensus_sequence(aligned, threshold=0.7)
matrix = kalign.utils.pairwise_identity_matrix(aligned)       # numpy array
trimmed = kalign.utils.remove_gap_columns(aligned)
region = kalign.utils.trim_alignment(aligned, start=2, end=10)

Biopython Integration

Requires pip install kalign-python[biopython].

import kalign

# Return a Biopython MultipleSeqAlignment
aln = kalign.align(sequences, fmt="biopython", ids=["s1", "s2", "s3"])
print(aln.get_alignment_length())

# Write in various formats via Biopython
from Bio import AlignIO
AlignIO.write(aln, "output.clustal", "clustal")

I/O helpers (kalign.io)

sequences = kalign.io.read_fasta("input.fasta")
sequences, ids = kalign.io.read_sequences("input.fasta")

aligned = kalign.align(sequences)
kalign.io.write_fasta(aligned, "output.fasta", ids=ids)
kalign.io.write_clustal(aligned, "output.aln", ids=ids)
kalign.io.write_stockholm(aligned, "output.sto", ids=ids)
kalign.io.write_phylip(aligned, "output.phy", ids=ids)

scikit-bio Integration

Requires pip install kalign-python[skbio].

import kalign

# Returns a TabularMSA of DNA, RNA, or Protein depending on seq_type
aln = kalign.align(sequences, seq_type="dna", fmt="skbio")
print(type(aln))  # <class 'skbio.alignment._tabular_msa.TabularMSA'>

Constants

Sequence Types

String Constant Description
"auto" kalign.AUTO Auto-detect (default)
"dna" kalign.DNA DNA sequences
"rna" kalign.RNA RNA sequences
"protein" kalign.PROTEIN Protein sequences
"divergent" kalign.PROTEIN_DIVERGENT Divergent protein sequences
"internal" kalign.DNA_INTERNAL DNA with internal gap preference

Refinement Modes

String Constant Description
"none" kalign.REFINE_NONE No refinement (default)
"all" kalign.REFINE_ALL Refine all columns
"confident" kalign.REFINE_CONFIDENT Refine only confident columns
"inline" kalign.REFINE_INLINE Inline refinement (disables parallelism)

Command-line Interface

# Modes
kalign-py -i sequences.fasta -o aligned.fasta                    # default mode
kalign-py --fast -i sequences.fasta -o aligned.fasta             # fast mode
kalign-py --precise -i sequences.fasta -o aligned.fasta          # precise mode

# I/O options
kalign-py -i sequences.fasta -o - --format clustal               # stdout
cat input.fa | kalign-py -i - -o aligned.fasta                   # stdin
kalign-py -i sequences.fasta -o aligned.fasta --type protein     # explicit type

# Ensemble with POAR save/load
kalign-py -i input.fa -o output.fa --ensemble 5 --save-poar consensus.poar
kalign-py -i input.fa -o output.fa --load-poar consensus.poar --min-support 3

kalign-py --version

Development

git clone https://github.com/TimoLassmann/kalign.git
cd kalign
uv pip install -e .
uv run pytest tests/python/ -v

Requirements: Python 3.9+, CMake 3.18+, C++11 compiler, NumPy.

Citation

If you use Kalign in your research, please cite:

Lassmann, T. (2020). Kalign 3: multiple sequence alignment of large data sets. Bioinformatics, 36(6), 1928-1929. doi:10.1093/bioinformatics/btz795

License

Apache License, Version 2.0. See COPYING.

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

kalign_python-3.5.1.tar.gz (1.3 MB view details)

Uploaded Source

Built Distributions

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

kalign_python-3.5.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (363.0 kB view details)

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

kalign_python-3.5.1-cp313-cp313-macosx_14_0_x86_64.whl (224.7 kB view details)

Uploaded CPython 3.13macOS 14.0+ x86-64

kalign_python-3.5.1-cp313-cp313-macosx_14_0_arm64.whl (451.9 kB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

kalign_python-3.5.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (363.0 kB view details)

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

kalign_python-3.5.1-cp312-cp312-macosx_14_0_x86_64.whl (224.6 kB view details)

Uploaded CPython 3.12macOS 14.0+ x86-64

kalign_python-3.5.1-cp312-cp312-macosx_14_0_arm64.whl (451.9 kB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

kalign_python-3.5.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (361.5 kB view details)

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

kalign_python-3.5.1-cp311-cp311-macosx_14_0_x86_64.whl (223.2 kB view details)

Uploaded CPython 3.11macOS 14.0+ x86-64

kalign_python-3.5.1-cp311-cp311-macosx_14_0_arm64.whl (451.1 kB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

kalign_python-3.5.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (359.7 kB view details)

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

kalign_python-3.5.1-cp310-cp310-macosx_14_0_x86_64.whl (221.8 kB view details)

Uploaded CPython 3.10macOS 14.0+ x86-64

kalign_python-3.5.1-cp310-cp310-macosx_14_0_arm64.whl (449.7 kB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

kalign_python-3.5.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (360.1 kB view details)

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

kalign_python-3.5.1-cp39-cp39-macosx_14_0_x86_64.whl (221.9 kB view details)

Uploaded CPython 3.9macOS 14.0+ x86-64

kalign_python-3.5.1-cp39-cp39-macosx_14_0_arm64.whl (449.8 kB view details)

Uploaded CPython 3.9macOS 14.0+ ARM64

File details

Details for the file kalign_python-3.5.1.tar.gz.

File metadata

  • Download URL: kalign_python-3.5.1.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kalign_python-3.5.1.tar.gz
Algorithm Hash digest
SHA256 fed346be11d8deb785285b2df085927ca82006d197d6805718c0ca5c0e23017e
MD5 295544c7fd02d9fd76342e644c4d590e
BLAKE2b-256 2381d6acf0496c819fa8107ba4b1cfc6b3e324050f6c35ae720a9dae6e88dc03

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1.tar.gz:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e69c896ea734cbc0d675e8792acbcf7b8de5a2da15cada8e29124f6374406366
MD5 e91d038cf40ce13041c1d7d941d46b5b
BLAKE2b-256 6180d5627d90621ae1a0e008494ce0e83aa46e65c22e8e58efd190e068ae0140

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp313-cp313-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp313-cp313-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 6db11a7bcfb872f20e2f3f8b228ee5d66a7119c7d0b2601d08db0169b7e5ce8a
MD5 20a18f2fb1fb70aa6bb8a015e2066fdf
BLAKE2b-256 2ad6b25e07dcd5b89babaaf60835adc42f93d5e491170e8b29408e152e73b056

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp313-cp313-macosx_14_0_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 00e9e9502deda2b53b9646e57c0fc87368cd9a8d44ca91ec1bedbb40926a3106
MD5 bc4b25818f1e122f173f8902740bbb7c
BLAKE2b-256 161084435b64808505fc48ad08123a7418a0cc13c29d3b8dbdb7bde89860a760

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp313-cp313-macosx_14_0_arm64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8984ee038ad486be95c676a670671b8747261a1d0a8a95416fdd17c633541009
MD5 85f3665ee4833eb912a3f342749625cc
BLAKE2b-256 e7200c8af1ee16e52253b20918929cf2bba6549d819ca702f56355c3d41c8f75

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp312-cp312-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp312-cp312-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 804b16dd8947a9562d5506001d97b34ad4ead0052f2e93b0c0513aa41bb8a369
MD5 9397a601a7ef62a61867d142bc1b3e4c
BLAKE2b-256 fe586176593e43ce736c36bfa8f9e914bc517755e2d6afdff947319c4b9c09bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp312-cp312-macosx_14_0_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 4b900257c9831baa0d3f5ecc6d8b2057954306491bef305b5b621c091ef502df
MD5 c9ae08d38c097108e939f13e534e36ff
BLAKE2b-256 ac3efd40503af9f3f5b917fd628d7bf6d89f24fc16ead89ec08169299f7d8e93

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp312-cp312-macosx_14_0_arm64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4179cc3d7a56e2f04779d5414d38e77109538d39b3767571204fd275bbe0fb84
MD5 907cd29eb9856d4ce590ae96e82e2a28
BLAKE2b-256 5b340106c476d8161cb341a574c066f9b0eaff9244926df9edf6227ad8c69625

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp311-cp311-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp311-cp311-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 bf55260bb7145155fe603f9bb086b0e3dde1b62aa642d269b8c15f4dcfc0720c
MD5 421c6bb5afcbbfd3360a1eef344609cd
BLAKE2b-256 1cb4ce34298999ae2bd822e67338b803fb9b59d49ed79f302101f7ad3bf076cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp311-cp311-macosx_14_0_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 e4910a445aa77e91dc1e70ef909573fa72ec91a998d3c947c68eaf5fbb8e30de
MD5 798c67157cf090aca0d6e781b58f614b
BLAKE2b-256 b1fe349ed65c4f87e3e92233ca2787afa416efb553e3a16a7301de788f836a4f

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp311-cp311-macosx_14_0_arm64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a513dd5c33500fd8e1bf4e0a591a6292ce21cc0f1d3d285ce008fd30e4868dd6
MD5 1b650d52bcd50af919ee8d1e68793493
BLAKE2b-256 952f98496df937f8211142909efefdd44d1cbbb7e56ebc6d835a2477e1b3d32f

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp310-cp310-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp310-cp310-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 b2de28f6c8ce9172484e0415c28cee9a72b107f5c6a7b7d693df5855f1073f5e
MD5 5959da7c42c37a902b239fa9d282cf14
BLAKE2b-256 54d98503b45932df8ae6728a251abf734b1c2ac7889f243ea402e9407e8796b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp310-cp310-macosx_14_0_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 3c87fdf95456d6b1a4cc94818c9c9425cebbbc6bf05a4da33f61746a069fb512
MD5 dd6d1f81b3f0399bd7c21b3cdbaacb0a
BLAKE2b-256 2676028d877d55ff89149332b5a649f3fa3cdf2b0e42ed268553ddff985425e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp310-cp310-macosx_14_0_arm64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 15581ba6bae6aa15da55ac4f3a76ed89e4d5fff383f8738fecef79c2d6773e2c
MD5 19e1dc63dc61da6aff77ad55ef76520b
BLAKE2b-256 2a6ee2a3579e632cc8930cd170c73b390562bd8dd847c4c838248d037f4e6bde

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp39-cp39-macosx_14_0_x86_64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp39-cp39-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 df940eac526d0f4ca0955f8d479e68e9aece3a273c88e150b3f3f97abe15aef6
MD5 67aad6bafabf62bfd4a653cfb9677690
BLAKE2b-256 34ea7c614346dd29a904abbff707e38f0fcb5f03ba3be39d644ae262afffb108

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp39-cp39-macosx_14_0_x86_64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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

File details

Details for the file kalign_python-3.5.1-cp39-cp39-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for kalign_python-3.5.1-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 48491b0915fb47ca6d95f65a61d54f3336222ec6cf1bb8ccedea93d750e6f2cc
MD5 ce540209f905ea4c8dbe906918dd4c91
BLAKE2b-256 07237dac53aa9c8b1f4708fb0c6655b9b9452d586438735ea683f2b73e7f12ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalign_python-3.5.1-cp39-cp39-macosx_14_0_arm64.whl:

Publisher: wheels.yml on TimoLassmann/kalign

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