Skip to main content

Search, hash, sort, and process strings faster via SWAR and SIMD

Project description

StringZilla ๐Ÿฆ–

StringZilla banner

Strings are the first fundamental data type every programming language implements in software rather than hardware โ€” the closest CPUs come to a "find substring" instruction is x86's PCMPISTRI, which is too slow and too narrow to build a library on, and nothing ships a "compute string hash" instruction at all. So most string-processing code still looks like for (i = 0; i < length; ++i) if (text[i] == 'x') โ€ฆ โ€” a tangle of loops, branches, and per-character lookups, where the surrounding control flow often costs more than the character-level logic itself, whether the text is ASCII or UTF-8 encoded Unicode. Worse, chewing through one byte or codepoint at a time squanders the hardware: a modern CPU carries dozens of 16-64 byte architectural registers, and hundreds of physical ones to feed out-of-order execution. StringZilla reaches for those SIMD and SWAR instructions directly, offering one of the widest, fastest, and most portable collections of text-processing primitives anywhere.

StringZilla Python installs StringZilla Rust installs StringZilla code size

StringZilla is the GodZilla of string libraries, accelerating exact and fuzzy matching, hashing, edit distances, sorting, segmentation, and even random-string generation, with allocation-free lazily-evaluated iterators throughout.

  • It can be 3x faster than LibC doing substring search on Arm servers, and 9x on Apple Silicon, where the system strstr is weaker.
  • It can be 10-70x faster than ICU, both ICU4C and its Rust successor ICU4X, in UTF-8 handling, case folding, segmentation, and tokenization.
  • It can be over 10x faster than NVIDIA's own libraries for on-GPU Levenshtein, NW, and SW edit distances.
  • It comes with built-in custom WebAssembly backend for sandboxed browser, DBMS, & LLM environments, custom RVV backend for RISC-V CPUs, PowerPC backend for IBM Power servers, LoongArch for Chinese domestic chips, and more!

Reach for it from your language of choice:

  • ๐Ÿ‚ C: Upgrade LibC's <string.h> to <stringzilla/stringzilla.h> in C 99
  • ๐Ÿ‰ C++: Upgrade STL's <string> to <stringzilla/stringzilla.hpp> in C++ 11
  • ๐Ÿงฎ CUDA: Process in-bulk with <stringzillas/stringzillas.cuh> in CUDA C++ 17
  • ๐Ÿ Python: Upgrade your str to faster Str
  • ๐Ÿฆ€ Rust: Use the StringZilla traits crate
  • ๐Ÿฆซ Go: Use the StringZilla cGo module
  • ๐ŸŽ Swift: Use the String+StringZilla extension
  • ๐ŸŸจ JavaScript: Use the StringZilla library
  • ๐Ÿ’œ C#: Zero-copy over ReadOnlySpan<byte>, NativeAOT-friendly
  • โ˜• Java: Pure FFM API over MemorySegment, no JNI
  • ๐Ÿš Shell: Accelerate common CLI tools with sz- prefix
  • ๐Ÿ“š Researcher? Jump to Algorithms & Design Decisions
  • ๐Ÿ’ก Thinking to contribute? Look for "good first issues"
  • ๐Ÿค And check the guide to set up the environment
  • Want more bindings or features? Let me know!

Who is this for?

  • For data-engineers parsing large datasets, like the CommonCrawl, RedPajama, or LAION.
  • For software engineers optimizing strings in their apps and services.
  • For bioinformaticians and search engineers looking for edit-distances for USearch.
  • For DBMS devs, optimizing LIKE, ORDER BY, and GROUP BY operations.
  • For hardware designers, needing a SWAR baseline for string-processing functionality.
  • For students studying SIMD/SWAR applications to non-data-parallel operations.

Performance

Throughput and timings on two CPUs and one GPU, grouped by operation. Only the languages that ship a counterpart appear under each heading. StringZilla.C is the C kernel called directly; StringZilla.Py is the same kernel through the CPython binding, so the gap between them is the cost of crossing the interpreter boundary.

                                                      Xeon4    M5 Pro        H100
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Unicode case-insensitive substring search  (GB/s)
  Python          icu.StringSearch                     0.06      0.15
  StringZilla.C   sz_utf8_uncased_search              13.16      9.30
  StringZilla.Py  sz.utf8_uncased_search              12.40      9.19

Find the first occurrence of a random word, โ‰… 5 bytes  (GB/s)
  LibC            strstr                               21.3       3.5
  STL C++         std::string::find                     9.1      10.9
  Python          str.find                              2.5       3.1
  StringZilla.C   sz_find                              21.0      37.1
  StringZilla.Py  sz.find                              18.6      33.4

Split lines separated by \n or \r  (GB/s)
  LibC            strcspn                               9.2       3.8
  STL C++         std::string::find_first_of            1.1       4.1
  Python          re.finditer                          0.32      0.64
  StringZilla.C   sz_find_byteset                      13.8      23.7
  StringZilla.Py  sz.split_byteset_iter                11.2      21.7

Levenshtein distances, โ‰… 100 byte DNA, one core  (MCUPS)
  Python          rapidfuzz.process.cdist             4,970    18,370
  StringZilla.C   szs_levenshtein_distances          15,680    22,844   5,980,110
  StringZilla.Py  szs.LevenshteinDistances           14,130    21,930   4,074,700

Needleman-Wunsch scores, โ‰… 1 KB DNA, one core  (MCUPS)
  Python          Bio.Align.PairwiseAligner.score       430       870
  StringZilla.C   szs_needleman_wunsch_scores        12,000     1,267     701,760
  StringZilla.Py  szs.NeedlemanWunschScores          10,730     1,060     700,900

Treat these as a first impression, not a benchmark suite. The Unicode numbers were obtained on a 128 MB slice of multilingual XLSum; the similarity rows on synthetic DNA strings. Xeon4 is an Intel Sapphire Rapids with GCC and glibc, M5 Pro an 18-core Apple Silicon with Apple clang and libc++, H100 an Nvidia Hopper GPU. The two CPUs therefore differ in standard library as much as in ISA, which is most of the gap in the strstr, std::string::rfind, and bytes.translate rows; the StringZilla rows build from the same source on both. These will not reproduce exactly; the links below carry the methodology and the per-library breakdowns.

Most StringZilla modules ship ready-to-run benchmarks for C, C++, Python, and more. Grab them from ./scripts, and see CONTRIBUTING.md, test/README.md, and bench/README.md for instructions. For wider head-to-heads against Rust and Python favorites, browse the StringWars repository. To inspect collision resistance and distribution shapes for our hashers, see HashEvals.

Why StringZilla

There are several other excellent libraries with overlapping subsets of operations and somewhat different design philosophies. LibC obviously provides a good baseline for basic memory operations, but its APIs vary widely in quality, and its Arm implementations often trail its x86 ones. ICU and ICU4X implement the Unicode standard to a letter, but don't exploit hidden invariants in the Unicode ruleset to vectorize those operations. RapidFuzz comes with a very good set of string-similarity algorithms and is already well vectorized on CPUs, but leaves batched cross-products symmetries and massive GPU speedups on the table. xxHash and aHash provide great non-cryptographic hashes, but may not cover all of the hashing use cases, or leverage the wider AES and predicated instructions available on modern CPUs.

Because StringZilla mirrors the familiar standard APIs, adoption is mostly a search-and-replace.

                           Standard                  StringZilla
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
Python
  Find a substring         "...".find(x)             sz.find("...", x)
  Sort strings             sorted(items)             sz.Strs(items).sorted()
  Split on a separator     "...".split(sep)          sz.Str("...").split(sep)
  Case-fold for matching   "...".casefold()          sz.utf8_uncased_fold("...")
  Streaming SHA-256        hashlib.sha256()          sz.Sha256()

C++
  Find a substring         std::string::find         sz::string::find
  Sort a collection        std::sort of indices      sz::argsort
  Intersect string sets    std::set_intersection     sz::try_intersect
  Hash map, string keys    std::unordered_map<K, V>  sz::hash + sz::equal_to

Functionality

StringZilla is compatible with most modern CPUs, and provides a broad range of functionality. It's split into 2 layers:

  1. StringZilla: single-header C library and C++ wrapper for high-performance string operations.
  2. StringZillas: parallel CPU/GPU backends used for large-batch operations and accelerators.

Having a second C++/CUDA layer greatly simplifies the implementation of similarity scoring and fingerprinting functions, which would otherwise require too much error-prone boilerplate code in pure C. Both layers are designed to be extremely portable:

  • across both little-endian and big-endian architectures.
  • across 32-bit and 64-bit hardware architectures.
  • across operating systems and compilers.
  • across ASCII and UTF-8 encoded inputs.

Not all features are available across all bindings. Consider contributing if you need a feature that's not yet implemented.

Maturity C C++ Python Rust JS Swift Go C# Java
Substring Search ๐ŸŒณ โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ…
Character Set Search ๐ŸŒณ โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ…
Sorting & Sequence Operations ๐ŸŒณ โœ… โœ… โœ… โœ… โšช โšช โšช โœ… โœ…
Set Intersection & Joins ๐Ÿง โœ… โœ… โœ… โœ… โšช โšช โšช โœ… โœ…
Lazy Ranges, Compressed Arrays ๐ŸŒณ โŒ โœ… โœ… โœ… โŒ โšช โšช โœ… โœ…
One-Shot & Streaming Hashes ๐ŸŒณ โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ…
Cryptographic Hashes ๐ŸŒณ โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ…
Small String Class ๐Ÿง โœ… โœ… โŒ โšช โŒ โŒ โŒ โŒ โŒ
Random String Generation ๐ŸŒณ โœ… โœ… โœ… โœ… โšช โšช โšช โœ… โœ…
Unicode Case Folding ๐Ÿง โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ…
Uncased UTF-8 Search ๐Ÿšง โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ…
TR29 Word Boundary Detection ๐Ÿšง โœ… โœ… โœ… โœ… โœ… โœ… โšช โœ… โœ…
TR29 Grapheme Segmentation ๐Ÿšง โœ… โœ… โœ… โœ… โœ… โšช โšช โœ… โœ…
TR29 Sentence Segmentation ๐Ÿšง โœ… โœ… โœ… โœ… โœ… โšช โšช โœ… โœ…
UAX14 Line-Break Detection ๐Ÿšง โœ… โœ… โœ… โœ… โœ… โšช โšช โœ… โœ…
Unicode Normalization ๐Ÿšง โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ…
Codepoint Counting & Indexing ๐ŸŒณ โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ… โœ…
Parallel Similarity Scoring ๐ŸŒณ โœ… โœ… โœ… โœ… โšช โšช โšช โšช โšช
Parallel Rolling Fingerprints ๐ŸŒณ โœ… โœ… โœ… โœ… โšช โšช โšช โšช โšช

๐ŸŒณ parts are used in production. ๐Ÿง parts are in beta. ๐Ÿšง parts are under active development, and are likely to break in subsequent releases. โœ… are implemented. โšช are considered. โŒ are not intended.

Quick Start

Each binding has its own install command, import line, and dedicated guide, all collected in the per-language sections below. The batch and GPU engines ship separately, as stringzillas-cpus and stringzillas-cuda on PyPI and the cpus and cuda crate features; each binding's guide covers the details.

Python

pip install stringzilla ยท guide: python/README.md

import stringzilla as sz

text = sz.Str("the quick brown fox")
text.find("brown")          # 10
text.split()                # Strs(['the', 'quick', 'brown', 'fox'])
sz.hash("hello")            # fast 64-bit hash

The Python package upgrades str and bytes with SIMD search, sorting, hashing, UTF-8 segmentation, and Unicode case-folding, plus the batch-parallel stringzillas engines for edit distances and rolling fingerprints.

C and C++

Header-only, or pull it in with CMake FetchContent ยท guides: include/stringzilla/README.md and include/stringzillas/README.md

#include <stringzilla/stringzilla.h>
sz_find(haystack, h_length, "brown", 5); // pointer to the match, or NULL
#include <stringzilla/stringzilla.hpp>
namespace sz = ashvardanian::stringzilla;
sz::string_view("the quick brown fox").find("brown"); // 10

The header-only library covers search, hashing, sorting, comparison, set intersection, memory operations, and lazy UTF-8 segmentation; the bulk and GPU engines for edit distances, alignment scores, and fingerprints live in the companion stringzillas distribution.

Rust

cargo add stringzilla ยท guide: rust/README.md

use stringzilla::sz;

assert_eq!(sz::find("the quick brown fox", "brown"), Some(10));
let digest = sz::hash("hello"); // fast 64-bit hash

The crate adds SIMD search, sorting, hashing, and UTF-8 segmentation to any AsRef<[u8]>, with the optional stringzillas engines for batch edit distances and rolling fingerprints.

JavaScript

npm install stringzilla ยท guide: javascript/README.md

import sz from "stringzilla";

sz.find(Buffer.from("the quick brown fox"), Buffer.from("brown")); // => 10n
sz.hash(Buffer.from("hello"));                                     // 64-bit BigInt

The Node-API addon runs on Node, Bun, and Deno, exposing zero-copy search, hashing, SHA-256, and Unicode case-folding over Buffer objects.

Swift

Add the Swift Package Manager dependency ยท guide: swift/README.md

import StringZilla

let i = "the quick brown fox".findFirst(substring: "brown") // Index of "brown"
let h = "hello".hash()                                       // fast 64-bit hash

The Foundation-free package extends String with SIMD search, comparison, hashing, Unicode case-folding, normalization, and word and line segmentation, on Linux and embedded targets as well as Apple platforms.

Go

go get github.com/ashvardanian/stringzilla/golang ยท guide: golang/README.md

import sz "github.com/ashvardanian/stringzilla/golang"

sz.Index("the quick brown fox", "brown") // 10
sz.Hash("hello", 0)                      // fast 64-bit hash

The cgo module exposes byte-level search, counting, checksums, SHA-256, and UTF-8 case-folding to Go.

C#

Build from source ยท guide: csharp/README.md ยท not yet on NuGet

using StringZilla;

Sz.IndexOf("the quick brown fox"u8, "brown"u8); // 10
Sz.Hash("hello"u8);                             // fast 64-bit hash

Zero-copy over ReadOnlySpan<byte> (and Unity's NativeArray<byte>); net8.0, NativeAOT-friendly. Exposes search, hashing, SHA-256, UTF-8 segmentation, case-folding, normalization, sorting, and allocation-free splitting and iteration.

Java

Build from source with mvn ยท guide: java/README.md ยท not yet on Maven Central

import com.stringzilla.StringZilla;

StringZilla.indexOf("the quick brown fox".getBytes(), "brown".getBytes());  // 10
StringZilla.hash("hello".getBytes());                                       // fast 64-bit hash

Pure Foreign Function & Memory API (JDK 22+), no JNI. Zero-copy over byte[] and MemorySegment โ€” including Lucene BytesRef and Spark UTF8String backing memory. Lazy Iterable/Stream splitting and iteration, with zero-allocation cursors as the escape hatch.

Algorithms & Design Decisions

StringZilla aims to optimize some of the slowest string operations. Some popular operations, however, like equality comparisons and relative order checking, almost always complete on some of the very first bytes in either string. In such operations vectorization is almost useless, unless huge and very similar strings are considered. StringZilla implements those operations as well, but won't result in substantial speedups. Where vectorization stops being effective, parallelism takes over, across two layers:

  • StringZilla C library w/out dependencies
  • StringZillas parallel extensions:
    • Parallel C++ algorithms built with ForkUnion
    • Parallel CUDA algorithms for Nvidia GPUs
    • Parallel ROCm algorithms for AMD GPUs ๐Ÿ”œ

Exact Substring Search

Substring search algorithms are generally divided into: comparison-based, automaton-based, and bit-parallel. Different families are effective for different alphabet sizes and needle lengths. The more operations are needed per-character - the more effective SIMD would be. The longer the needle - the more effective the skip-tables are. StringZilla uses different exact substring search algorithms for different needle lengths and backends:

  • When no SIMD is available - SWAR (SIMD Within A Register) algorithms are used on 64-bit words.
  • Boyer-Moore-Horspool (BMH) algorithm with Raita heuristic variation for longer needles.
  • SIMD backends compare characters at multiple strategically chosen offsets within the needle to reduce degeneracy.

On very short needles, especially 1-4 characters long, brute force with SIMD is the fastest solution. On mid-length needles, bit-parallel algorithms are effective, as the character masks fit into 32-bit or 64-bit words. Either way, if the needle is under 64-bytes long, on haystack traversal we will still fetch every CPU cache line. So the only way to improve performance is to reduce the number of comparisons.

For 2-byte needles, see sz_find_2byte_serial_ in include/stringzilla/find/serial.h:

https://github.com/ashvardanian/StringZilla/blob/a6402dd71d01a8967a62bcc45a900477e0232f60/include/stringzilla/find/serial.h#L231-L273

Going beyond that, to long needles, Boyer-Moore (BM) and its variants are often the best choice. It has two tables: the good-suffix shift and the bad-character shift. Common choice is to use the simplified BMH algorithm, which only uses the bad-character shift table, reducing the pre-processing time. We do the same for mid-length needles up to 256 bytes long. That way the stack-allocated shift table remains small.

For mid-length needles (โ‰ค256 bytes), see sz_find_horspool_upto_256bytes_serial_ in include/stringzilla/find/serial.h:

https://github.com/ashvardanian/StringZilla/blob/a6402dd71d01a8967a62bcc45a900477e0232f60/include/stringzilla/find/serial.h#L449-L500

In the C++ Standards Library, the std::string::find function uses the BMH algorithm with Raita's heuristic. Before comparing the entire string, it matches the first, last, and the middle character. Very practical, but can be slow for repetitive characters. Both SWAR and SIMD backends of StringZilla have a cheap pre-processing step, where we locate unique characters. This makes the library a lot more practical when dealing with non-English corpora.

The offset selection heuristic is implemented in sz_locate_needle_anomalies_ in include/stringzilla/find/serial.h:

https://github.com/ashvardanian/StringZilla/blob/a6402dd71d01a8967a62bcc45a900477e0232f60/include/stringzilla/find/serial.h#L35-L96

All those, still, have $O(hn)$ worst case complexity. To guarantee $O(h)$ worst case time complexity, the Apostolico-Giancarlo (AG) algorithm adds an additional skip-table. Preprocessing phase is $O(n + \sigma)$ in time and space. On traversal, performs from $(h/n)$ to $(3h/2)$ comparisons. It however, isn't practical on modern CPUs. The Galil rule is a simpler and more relevant optimization, if many matches must be found.

Other algorithms previously considered and deprecated:

  • Apostolico-Giancarlo algorithm for longer needles. Control-flow is too complex for efficient vectorization.
  • Shift-Or-based Bitap algorithm for short needles. Slower than SWAR.
  • Horspool-style bad-character check in SIMD backends. Effective only for very long needles, and very uneven character distributions between the needle and the haystack. Faster "character-in-set" check needed to generalize.

ยง Reading materials. Exact String Matching Algorithms in Java. SIMD-friendly algorithms for substring searching.

Exact Multiple Substring Search

Few algorithms for multiple substring search are known. Most are based on the Aho-Corasick automaton, which is a generalization of the KMP algorithm. The naive implementation, however:

  • Allocates disjoint memory for each Trie node and Automaton state.
  • Requires a lot of pointer chasing, limiting speculative execution.
  • Has a lot of branches and conditional moves, which are hard to predict.
  • Matches text a character at a time, which is slow on modern CPUs.

There are several ways to improve the original algorithm. One is to use sparse DFA representation, which is more cache-friendly, but would require extra processing to navigate state transitions.

StringZilla does not ship an Aho-Corasick automaton today. For multi-pattern workloads, the rolling-fingerprint machinery described below covers the near-duplicate and candidate-filtering cases, and hyperscan or pyahocorasick remain the better fit for large literal dictionaries.

Levenshtein Edit Distance

Levenshtein distance is the best known edit-distance for strings, that checks, how many insertions, deletions, and substitutions are needed to transform one string to another. It's extensively used in approximate string-matching, spell-checking, and bioinformatics.

The computational cost of the Levenshtein distance is $O(n * m)$, where $n$ and $m$ are the lengths of the string arguments. To compute that, the naive approach requires $O(n * m)$ space to store the "Levenshtein matrix", the bottom-right corner of which will contain the Levenshtein distance. The algorithm producing the matrix has been simultaneously studied/discovered by the Soviet mathematicians Vladimir Levenshtein in 1965, Taras Vintsyuk in 1968, and American computer scientists - Robert Wagner, David Sankoff, Michael J. Fischer in the following years. Several optimizations are known:

  1. Space Optimization: The matrix can be computed in $O(min(n,m))$ space, by only storing the last two rows of the matrix.
  2. Divide and Conquer: Hirschberg's algorithm can be applied to decompose the computation into subtasks.
  3. Automata: Levenshtein automata can be effective, if one of the strings doesn't change, and is a subject to many comparisons.
  4. Shift-Or: Bit-parallel algorithms transpose the matrix into a bit-matrix, and perform bitwise operations on it.

The last approach is quite powerful and performant, and is used by the great RapidFuzz library. It's less known, than the others, derived from the Baeza-Yates-Gonnet algorithm, extended to bounded edit-distance search by Manber and Wu in 1990s, and further extended by Gene Myers in 1999 and Heikki Hyyro between 2002 and 2004.

StringZilla focuses on a different approach, extensively used in Unum's internal combinatorial optimization libraries. It doesn't change the number of trivial operations, but performs them in a different order, removing the data dependency, that occurs when computing the insertion costs. StringZilla evaluates diagonals instead of rows, exploiting the fact that all cells within a diagonal are independent, and can be computed in parallel. We'll store 3 diagonals instead of the 2 rows, and each consecutive diagonal will be computed from the previous two. Substitution costs will come from the sooner diagonal, while insertion and deletion costs will come from the later diagonal.

Row-by-Row Algorithm
Computing row 4:
    โˆ…  A  B  C  D  E
 โˆ…  0  1  2  3  4  5
 P  1  โ–‘  โ–‘  โ–‘  โ–‘  โ–‘
 Q  2  โ–   โ–   โ–   โ–   โ– 
 R  3  โ–   โ–   โ–ก  โ†’  .
 S  4  .  .  .  .  .
 T  5  .  .  .  .  .
Anti-Diagonal Algorithm
Computing diagonal 5:
    โˆ…  A  B  C  D  E
 โˆ…  0  1  2  3  4  5
 P  1  โ–‘  โ–‘  โ–   โ–   โ–ก
 Q  2  โ–‘  โ–   โ–   โ–ก  โ†˜
 R  3  โ–   โ–   โ–ก  โ†˜  .
 S  4  โ–   โ–ก  โ†˜  .  .
 T  5  โ–ก  โ†˜  .  .  .
Legend:
0,1,2,3... = initialization constants ย ย  โ–‘ = cells processed and forgotten ย ย  โ–  = stored cells ย ย  โ–ก = computing in parallel ย ย  โ†’ โ†˜ = movement direction ย ย  . = cells to compute later

This results in much better vectorization for intra-core parallelism and potentially multi-core evaluation of a single request. Moreover, it's easy to generalize to weighted edit-distances, where the cost of a substitution between two characters may not be the same for all pairs, often used in bioinformatics.

ยง Reading materials. Faster Levenshtein Distances with a SIMD-friendly Traversal Order.

Needleman-Wunsch and Smith-Waterman Scores for Bioinformatics

The field of bioinformatics studies various representations of biological structures. The "primary" representations are generally strings over sparse alphabets:

  • DNA sequences, where the alphabet is {A, C, G, T}, ranging from ~100 characters for short reads to 3 billion for the human genome.
  • RNA sequences, where the alphabet is {A, C, G, U}, ranging from ~50 characters for tRNA to thousands for mRNA.
  • Proteins, where the alphabet is made of 22 amino acids, ranging from 2 characters for dipeptide to 35,000 for Titin, the longest protein.

The shorter the representation, the more often researchers may want to use custom substitution matrices. Meaning that the cost of a substitution between two characters may not be the same for all pairs. In the general case the serial algorithm works for arbitrary substitution costs for each of 256ร—256 possible character pairs. That lookup table, however, is too large to fit into CPU registers, so StringZilla ships a 32ร—32 substitution-matrix design, the error_costs_32x32_t type in include/stringzillas/similarities.hpp, which fits into 1 KB with single-byte "error costs" and stays resident across the diagonal sweep. That said, most BLOSUM and PAM substitution matrices only contain 4-bit values, so they can be packed even further.

Memory Copying, Fills, and Moves

A lot has been written about the time computers spend copying memory and how that operation is implemented in LibC. Interestingly, the operation can still be improved, as most Assembly implementations use outdated instructions. Even performance-oriented STL replacements, like Meta's Folly v2024.09.23 focus on AVX2, and don't take advantage of the new masked instructions in AVX-512 or SVE.

In AVX-512, StringZilla uses non-temporal stores to avoid cache pollution, when dealing with very large strings. Moreover, it handles the unaligned head and the tails of the target buffer separately, ensuring that writes in big copies are always aligned to cache-line boundaries. That's true for both AVX2 and AVX-512 backends.

StringZilla also contains "drafts" of smarter, but less efficient algorithms, that minimize the number of unaligned loads, performing shuffles and permutations. That's a topic for future research, as the performance gains are not yet satisfactory.

ยง Reading materials. memset benchmarks by Nadav Rotem. Cache Associativity by Sergey Slotin.

Hashing

StringZilla implements a high-performance 64-bit hash function inspired by the "AquaHash", "aHash", and "GxHash" design and optimized for modern CPU architectures. It passes the rigorous SMHasher test suite, including the --extra flag with no collisions.

The core algorithm operates on a dual state that runs two independent mixers over the same bytes and folds them together at the end:

  • AES State: Initialized with the seed XOR-ed against ฯ€ constants and advanced with one AES encryption round per block, providing the strong avalanche behavior.
  • Sum State: Initialized from a second slice of the ฯ€ constants and advanced as an additive byte sum under a fixed permutation, cheap to compute and complementary to the AES mixing.

Because the AES round is the backbone, the per-ISA backends lean on each platform's cryptographic instructions rather than emulating them: AES-NI and VAES on x86, SHA-NI on Goldmont, NEON-AES, NEON-SHA, and SVE2-AES on Arm, and RVV-crypto on RISC-V, in the include/stringzilla/hash/{neonaes,neonsha,sve2aes,rvvcrypto}.h files. To keep the streaming path off the stack, the incremental construction uses an in-register streaming-state merge: each incoming run is slid into a resident register with a masked load and a blend, so partial blocks never spill to memory.

For strings โ‰ค64 bytes, a minimal state processes data in 16-byte blocks. Longer strings employ a 4ร— wider state (512 bits) that processes 64-byte chunks, maximizing throughput on modern superscalar CPUs. The algorithm can be expressed in pseudocode as:

function sz_hash(text: u8[], length: usize, seed: u64) -> u64:
    pi: u64[16] = [0x243F6A8885A308D3, 0x13198A2E03707344, 0xA4093822299F31D0, 0x082EFA98EC4E6C89, 0x452821E638D01377, 0xBE5466CF34E90C6C, 0xC0AC29B7C97C50DD, 0x3F84D5B5B5470917,
                   0x9216D5D98979FB1B, 0xD1310BA698DFB5AC, 0x2FFD72DBD01ADFB7, 0xB8E1AFED6A267E96, 0xBA7C9045F12C7F99, 0x24A19947B3916CF7, 0x0801F2E2858EFC16, 0x636920D871574E69]
    shuffle: u8[16] = [0x04, 0x0b, 0x09, 0x06, 0x08, 0x0d, 0x0f, 0x05, 0x0e, 0x03, 0x01, 0x0c, 0x00, 0x07, 0x0a, 0x02]   # Permutation order for the sum state

    # Both states are `lanes` ร— 128 bits wide: one lane for short inputs, four for long ones. The AES half seeds
    # from the low 512 bits of ฯ€, the sum half from the high 512 bits, each XOR-ed against the seed.
    lanes: usize = 1 if length โ‰ค 64 else 4
    aes: u128[lanes] = [seed โŠ• pi[2*lane], seed โŠ• pi[2*lane + 1] for lane in 0..lanes-1]
    sum: u128[lanes] = [seed โŠ• pi[2*lane + 8], seed โŠ• pi[2*lane + 9] for lane in 0..lanes-1]

    # One AES round and one shuffle-add per 16-byte block. Short inputs are zero-padded to 1-4 blocks;
    # long inputs stream 64-byte chunks, one block per lane, so the four lanes stay independent.
    for each chunk: u8[16 * lanes] in split_into_chunks(text, length, 16 * lanes):
        for lane in 0..lanes-1:
            aes[lane] = AESENC(aes[lane], chunk[lane])
            sum[lane] = SHUFFLE(sum[lane], shuffle) + chunk[lane]

    if lanes > 1: aes, sum = fold_to_one_lane(aes), fold_to_one_lane(sum)    # Collapse the 512-bit states back to 128

    # Finalization: mix the length into the key, then AES-mix the two states together for SMHasher compliance
    key: u128 = [seed + length, seed]
    mixed: u128 = AESENC(sum, aes)
    return low_u64(AESENC(AESENC(mixed, key), mixed))

This allows us to balance several design trade-offs. First, it allows us to achieve a high port-level parallelism. Looking at AVX-512 capable CPUs and their ZMM instructions, on each cycle, we'll have at least 2 ports busy when dealing with long strings:

  • VAESENC: 5 cycles on port 0 on Intel Ice Lake, 4 cycles on ports 0/1 on AMD Zen4.
  • VPSHUFB_Z: 3 cycles on port 5 on Intel Ice Lake, 2 cycles on ports 1/2 on AMD Zen4.
  • VPADDQ: 1 cycle on ports 0/5 on Intel Ice Lake, 1 cycle on ports 0/1/2/3 on AMD Zen4.

When dealing with smaller strings, we design our approach to avoid large registers and maintain the CPU at the same energy state, thereby avoiding downclocking and expensive power-state transitions.

Unlike some AES-accelerated alternatives, the length of the input is not mixed into the AES block at the start to allow incremental construction, when the final length is not known in advance. Also, unlike some alternatives, with "masked" AVX-512 and "predicated" SVE loads, we avoid expensive block-shuffling procedures on non-divisible-by-16 lengths.

ยง Reading materials. Stress-testing hash functions for avalance behaviour, collision bias, and distribution.

SHA-256 Checksums

In addition to the fast AES-based hash, StringZilla implements hardware-accelerated SHA-256 cryptographic checksums, following the FIPS 180-4 specification. Where the AES hash leans on the AES round instructions, SHA-256 leans on the dedicated SHA extensions: SHA256RNDS2 and SHA256MSG1/SHA256MSG2 on x86 from Goldmont onward, and the SHA256H/SHA256SU0 family on Arm, with SWAR, LASX, RVV, and WebAssembly fallbacks rounding out the set.

The API is a three-call streaming state โ€” sz_sha256_state_init, sz_sha256_state_update, sz_sha256_state_digest โ€” so arbitrarily long inputs can be absorbed in chunks without buffering the whole message. Each backend is also exposed under its own suffix, like sz_sha256_state_update_neonsha, for the same manual-dispatch reasons as the rest of the library.

Random Generation

StringZilla implements a fast Pseudorandom Number Generator inspired by the "AES-CTR-128" algorithm, reusing the same AES primitives as the hash function. Unlike "NIST SP 800-90A" which uses multiple AES rounds, StringZilla uses only one round of AES mixing for performance while maintaining reproducible output across platforms. The generator operates in counter mode with AESENC(nonce + lane_index, nonce โŠ• pi_constants), rotating through the first 512 bits of ฯ€ for each 16-byte block. The only state required to reproduce an output is a 64-bit nonce, which is much cheaper than a Mersenne Twister.

Sorting

For lexicographic sorting of string collections, StringZilla exports pointer-sized nโ€‘grams ("pgrams") into a contiguous buffer to improve locality, then recursively QuickSorts those pgrams with a 3โ€‘way partition and dives into equal pgrams to compare deeper characters. Very small inputs fall back to insertion sort.

  • Average time complexity: O(n log n)
  • Worst-case time complexity: quadratic (due to QuickSort), mitigated in practice by 3โ€‘way partitioning and the nโ€‘gram staging

Unicode 17, UTF-8, and Wide Characters

Most StringZilla operations are byte-level, so they work well with ASCII and UTF-8 content out of the box. In some cases, like edit-distance computation, the result of byte-level evaluation and character-level evaluation may differ.

  • szs_levenshtein_distances_utf8("ฮฑฮฒฮณฮด", "ฮฑฮณฮด") == 1 โ€” one unicode symbol.
  • szs_levenshtein_distances("ฮฑฮฒฮณฮด", "ฮฑฮณฮด") == 2 โ€” one unicode symbol is two bytes long.

Java, JavaScript, Python 2, C#, and Objective-C, however, expose strings as UTF-16 โ€” a variable-length encoding whose code units are two bytes, so anything outside the Basic Multilingual Plane takes two of them. Because those languages index by code unit rather than by codepoint, this leads to all kinds of offset-counting issues when facing four-byte long Unicode characters. StringZilla's own bindings for those languages sidestep the problem entirely by operating on the UTF-8 bytes directly, and internally it uses proper 32-bit "runes" to represent unpacked Unicode codepoints, ensuring correct results in all operations. If you need to transcode between UTF-8, UTF-16, and UTF-32 at the boundary, simdutf is the right tool. Moreover, StringZilla implements the Unicode 17.0 standard, being practically the only library besides ICU and PCRE2 to do so, but with order(s) of magnitude better performance.

Case Folding and Uncased Search

StringZilla provides Unicode-aware uncased substring search that handles the full complexity of Unicode case folding. This includes multi-character expansions:

Character Codepoint UTF-8 Bytes Case-Folds To Result Bytes
รŸ U+00DF C3 9F ss 73 73
๏ฌƒ U+FB03 EF AC 83 ffi 66 66 69
ฤฐ U+0130 C4 B0 i + โ—Œฬ‡ 69 CC 87

The search returns byte offsets and lengths in the original haystack, correctly handling length differences. For example, searching for "STRASSE" (7 bytes) in "StraรŸe" (7 bytes: 53 74 72 61 C3 9F 65) succeeds because both case-fold to "strasse".

Note that Turkish ฤฐ and ASCII I are distinct: ฤฐstanbul case-folds to iฬ‡stanbul (with combining dot), while ISTANBUL case-folds to istanbul (without). They will not match each other โ€” this is correct Unicode behavior for Turkish locale handling.

Under the hood, folding uses register-resident lookup tables for the common single-codepoint folds and dedicated expansion paths for the multi-byte ones. Uncased search folds on the fly, so the haystack is never pre-folded into a second buffer; the matcher tracks the byte-length mismatch whenever a folded form differs in length from its source, returning offsets into the original text. The folding paths live in the utf8_uncased* files.

UTF-8 Decoding and Unicode Segmentation

Codepoint decoding walks the input in register-wide chunks, classifying each lead byte by its continuation-byte count through a register-resident lookup table rather than branching byte by byte. It runs under a fill-and-drain contract: a decode-once step fills a buffer of runes, and a separate drain step emits them, which keeps the hot loop tight and lets callers consume runes at their own pace. Ill-formed input is handled without derailing the stream, re-syncing on the maximal-subpart rule and substituting exactly one U+FFFD before continuing. The decoder lives in include/stringzilla/utf8_runes.h.

UAX-29 word, grapheme, and sentence boundaries, together with UAX-14 line-break opportunities, are found in a single pass. Each codepoint is classified against register-resident property tables and the boundary rules are applied directly, so combining marks, emoji zero-width-joiner sequences, and regional-indicator flags are all handled without a second traversal. The segmenters live in the utf8_wordbreaks*, utf8_graphemes*, utf8_sentences*, and utf8_linebreaks* files.

Unicode Normalization

Normalization implements the UAX-15 NFC, NFD, NFKC, and NFKD forms through canonical and compatibility decomposition, canonical-combining-class reordering, and recomposition. Quick-check flags short-circuit the work, so text that is already in the requested form is passed through without the expensive decomposition and reordering passes. The normalizers live in the utf8_norm* files.

Set Intersection

StringZilla intersects two deduplicated string collections through a power-of-two open-addressing hash table. The hash is seeded for adversarial resistance and the probe sequence runs under a bounded collision budget, so the intersection completes in linear time and space rather than degrading on crafted inputs. The implementation lives in include/stringzilla/intersect.h.

Rolling Fingerprints and MinHash

For near-duplicate detection and multi-pattern search at scale, StringZilla slides multiple Rabin-Karp rolling-hash windows of different widths over each document at once. Each window tracks its running minimum to build MinHash sketches, and the same passes feed Count-Min-Sketch counters, so a single traversal yields both the similarity signatures and the frequency estimates. The implementation lives in the include/stringzillas/fingerprints* files.

GPU Edit Distances

On the GPU, short pairs are scored entirely in registers, one thread per pair, holding the anti-diagonal wavefront of the dynamic-programming matrix in registers instead of shared memory. For short sequences this is several times faster than the classic shared-memory anti-diagonal kernel, which is dominated by shared-memory traffic at small sizes. Hopper DPX instructions accelerate the min-plus recurrence, and a warp-per-pair path covers older GPUs that lack them. The kernels live in include/stringzillas/similarities/hopper.cuh and include/stringzillas/similarities/kepler.cuh.

Dynamic Dispatch

Due to the high-level of fragmentation of SIMD support in different CPUs, StringZilla names its backends after select CPU generations and instruction-set extensions. The full v5 set spans the serial SWAR fallback, x86 (Westmere, Goldmont, Haswell, Skylake, Ice Lake), Arm (NEON, NEON-AES, NEON-SHA, SVE, SVE2, SVE2-AES), RISC-V (RVV, RVV-crypto), LoongArch (LASX), IBM Power (PowerVSX), and WebAssembly (v128 and relaxed v128). You can query supported backends and use them manually. Use it to guarantee constant performance, or to explore how different algorithms scale on your hardware.

sz_find(text, length, pattern, 3);          // Auto-dispatch
sz_find_westmere(text, length, pattern, 3); // Intel Westmere+ SSE4.2
sz_find_haswell(text, length, pattern, 3);  // Intel Haswell+ AVX2
sz_find_skylake(text, length, pattern, 3);  // Intel Skylake+ AVX-512
sz_find_neon(text, length, pattern, 3);     // Arm NEON 128-bit
sz_find_sve(text, length, pattern, 3);      // Arm SVE 128/256/512/1024/2048-bit

StringZilla automatically picks the most advanced backend for the given CPU. Similarly, in Python, you can log the auto-detected capabilities:

python -c "import stringzilla; print(stringzilla.__capabilities__)"         # e.g. ('serial', 'westmere', 'goldmont', 'haswell', 'skylake', 'icelake')
python -c "import stringzilla; print(stringzilla.__capabilities_str__)"     # e.g. "serial, westmere, goldmont, haswell, skylake, icelake"
# Other targets report their own names: Arm "neon, neonaes, neonsha, sve, sve2, sve2aes",
# WebAssembly "v128, v128relaxed", RISC-V "rvv", LoongArch "lasx", IBM Power "powervsx".

You can also explicitly set the backend to use, or scope the backend to a specific function.

import stringzilla as sz
sz.reset_capabilities(('serial',))          # Force SWAR backend
sz.reset_capabilities(('haswell',))         # Force AVX2 backend
sz.reset_capabilities(('neon',))            # Force NEON backend
sz.reset_capabilities(sz.__capabilities__)  # Reset to auto-dispatch

Contributing ๐Ÿ‘พ

Please check out the contributing guide for more details on how to set up the development environment and contribute to this project. If you like this project, you may also enjoy USearch, UCall, UForm, and SimSIMD. ๐Ÿค—

If you like strings and value efficiency, you may also enjoy the following projects:

  • simdutf - transcoding UTF-8, UTF-16, and UTF-32 LE and BE.
  • hyperscan - regular expressions with SIMD acceleration.
  • pyahocorasick - Aho-Corasick algorithm in Python.
  • rapidfuzz - fast string matching in C++ and Python.
  • memchr - fast string search in Rust.

If you are looking for more reading materials on this topic, consider the following:

Citation

If StringZilla helps your research or product, please cite it:

@software{Vardanian_StringZilla,
  author = {Vardanian, Ash},
  title = {{StringZilla: Fast SIMD, SWAR, and GPGPU String Processing}},
  doi = {10.5281/zenodo.21472333},
  url = {https://github.com/ashvardanian/StringZilla},
  license = {Apache-2.0}
}

A machine-readable CITATION.cff is provided at the repository root.

License ๐Ÿ“œ

Feel free to use the project under Apache 2.0 or the Three-clause BSD license at your preference.

Release history Release notifications | RSS feed

Download files

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

Source Distribution

stringzilla-5.0.5.tar.gz (1.8 MB view details)

Uploaded Source

Built Distributions

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

stringzilla-5.0.5-cp314-cp314t-win_arm64.whl (407.3 kB view details)

Uploaded CPython 3.14tWindows ARM64

stringzilla-5.0.5-cp314-cp314t-win_amd64.whl (480.2 kB view details)

Uploaded CPython 3.14tWindows x86-64

stringzilla-5.0.5-cp314-cp314t-win32.whl (298.3 kB view details)

Uploaded CPython 3.14tWindows x86

stringzilla-5.0.5-cp314-cp314t-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

stringzilla-5.0.5-cp314-cp314t-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

stringzilla-5.0.5-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

stringzilla-5.0.5-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

stringzilla-5.0.5-cp314-cp314t-macosx_11_0_x86_64.whl (400.6 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ x86-64

stringzilla-5.0.5-cp314-cp314t-macosx_11_0_arm64.whl (387.0 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

stringzilla-5.0.5-cp314-cp314-win_arm64.whl (406.1 kB view details)

Uploaded CPython 3.14Windows ARM64

stringzilla-5.0.5-cp314-cp314-win_amd64.whl (476.5 kB view details)

Uploaded CPython 3.14Windows x86-64

stringzilla-5.0.5-cp314-cp314-win32.whl (296.0 kB view details)

Uploaded CPython 3.14Windows x86

stringzilla-5.0.5-cp314-cp314-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

stringzilla-5.0.5-cp314-cp314-musllinux_1_2_s390x.whl (828.2 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ s390x

stringzilla-5.0.5-cp314-cp314-musllinux_1_2_riscv64.whl (795.0 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ riscv64

stringzilla-5.0.5-cp314-cp314-musllinux_1_2_ppc64le.whl (987.6 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ppc64le

stringzilla-5.0.5-cp314-cp314-musllinux_1_2_i686.whl (804.4 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ i686

stringzilla-5.0.5-cp314-cp314-musllinux_1_2_armv7l.whl (796.1 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARMv7l

stringzilla-5.0.5-cp314-cp314-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

stringzilla-5.0.5-cp314-cp314-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl (819.8 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ riscv64manylinux: glibc 2.39+ riscv64

stringzilla-5.0.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

stringzilla-5.0.5-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (838.7 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

stringzilla-5.0.5-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (993.4 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

stringzilla-5.0.5-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl (994.5 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARMv7lmanylinux: glibc 2.31+ ARMv7l

stringzilla-5.0.5-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

stringzilla-5.0.5-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (801.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

stringzilla-5.0.5-cp314-cp314-macosx_11_0_x86_64.whl (399.1 kB view details)

Uploaded CPython 3.14macOS 11.0+ x86-64

stringzilla-5.0.5-cp314-cp314-macosx_11_0_arm64.whl (385.7 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

stringzilla-5.0.5-cp313-cp313-win_arm64.whl (389.2 kB view details)

Uploaded CPython 3.13Windows ARM64

stringzilla-5.0.5-cp313-cp313-win_amd64.whl (460.6 kB view details)

Uploaded CPython 3.13Windows x86-64

stringzilla-5.0.5-cp313-cp313-win32.whl (286.8 kB view details)

Uploaded CPython 3.13Windows x86

stringzilla-5.0.5-cp313-cp313-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

stringzilla-5.0.5-cp313-cp313-musllinux_1_2_s390x.whl (828.9 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ s390x

stringzilla-5.0.5-cp313-cp313-musllinux_1_2_riscv64.whl (795.0 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ riscv64

stringzilla-5.0.5-cp313-cp313-musllinux_1_2_ppc64le.whl (987.7 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ppc64le

stringzilla-5.0.5-cp313-cp313-musllinux_1_2_i686.whl (804.6 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ i686

stringzilla-5.0.5-cp313-cp313-musllinux_1_2_armv7l.whl (797.4 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARMv7l

stringzilla-5.0.5-cp313-cp313-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

stringzilla-5.0.5-cp313-cp313-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl (819.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ riscv64manylinux: glibc 2.39+ riscv64

stringzilla-5.0.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.9 MB view details)

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

stringzilla-5.0.5-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (839.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

stringzilla-5.0.5-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (993.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

stringzilla-5.0.5-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl (995.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7lmanylinux: glibc 2.31+ ARMv7l

stringzilla-5.0.5-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

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

stringzilla-5.0.5-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (801.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

stringzilla-5.0.5-cp313-cp313-macosx_11_0_x86_64.whl (399.1 kB view details)

Uploaded CPython 3.13macOS 11.0+ x86-64

stringzilla-5.0.5-cp313-cp313-macosx_11_0_arm64.whl (385.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

stringzilla-5.0.5-cp312-cp312-win_arm64.whl (389.2 kB view details)

Uploaded CPython 3.12Windows ARM64

stringzilla-5.0.5-cp312-cp312-win_amd64.whl (460.6 kB view details)

Uploaded CPython 3.12Windows x86-64

stringzilla-5.0.5-cp312-cp312-win32.whl (286.8 kB view details)

Uploaded CPython 3.12Windows x86

stringzilla-5.0.5-cp312-cp312-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

stringzilla-5.0.5-cp312-cp312-musllinux_1_2_s390x.whl (828.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ s390x

stringzilla-5.0.5-cp312-cp312-musllinux_1_2_riscv64.whl (795.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ riscv64

stringzilla-5.0.5-cp312-cp312-musllinux_1_2_ppc64le.whl (987.6 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ppc64le

stringzilla-5.0.5-cp312-cp312-musllinux_1_2_i686.whl (804.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ i686

stringzilla-5.0.5-cp312-cp312-musllinux_1_2_armv7l.whl (797.4 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARMv7l

stringzilla-5.0.5-cp312-cp312-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

stringzilla-5.0.5-cp312-cp312-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl (819.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ riscv64manylinux: glibc 2.39+ riscv64

stringzilla-5.0.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.9 MB view details)

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

stringzilla-5.0.5-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (839.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

stringzilla-5.0.5-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (993.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

stringzilla-5.0.5-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl (995.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7lmanylinux: glibc 2.31+ ARMv7l

stringzilla-5.0.5-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

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

stringzilla-5.0.5-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (801.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

stringzilla-5.0.5-cp312-cp312-macosx_11_0_x86_64.whl (399.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ x86-64

stringzilla-5.0.5-cp312-cp312-macosx_11_0_arm64.whl (385.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

stringzilla-5.0.5-cp311-cp311-win_arm64.whl (389.0 kB view details)

Uploaded CPython 3.11Windows ARM64

stringzilla-5.0.5-cp311-cp311-win_amd64.whl (460.3 kB view details)

Uploaded CPython 3.11Windows x86-64

stringzilla-5.0.5-cp311-cp311-win32.whl (286.3 kB view details)

Uploaded CPython 3.11Windows x86

stringzilla-5.0.5-cp311-cp311-musllinux_1_2_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

stringzilla-5.0.5-cp311-cp311-musllinux_1_2_s390x.whl (826.6 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ s390x

stringzilla-5.0.5-cp311-cp311-musllinux_1_2_riscv64.whl (795.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ riscv64

stringzilla-5.0.5-cp311-cp311-musllinux_1_2_ppc64le.whl (986.5 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ppc64le

stringzilla-5.0.5-cp311-cp311-musllinux_1_2_i686.whl (803.5 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

stringzilla-5.0.5-cp311-cp311-musllinux_1_2_armv7l.whl (795.1 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARMv7l

stringzilla-5.0.5-cp311-cp311-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

stringzilla-5.0.5-cp311-cp311-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl (820.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ riscv64manylinux: glibc 2.39+ riscv64

stringzilla-5.0.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.9 MB view details)

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

stringzilla-5.0.5-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (837.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

stringzilla-5.0.5-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (991.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

stringzilla-5.0.5-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl (990.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7lmanylinux: glibc 2.31+ ARMv7l

stringzilla-5.0.5-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

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

stringzilla-5.0.5-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (800.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

stringzilla-5.0.5-cp311-cp311-macosx_11_0_x86_64.whl (398.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ x86-64

stringzilla-5.0.5-cp311-cp311-macosx_11_0_arm64.whl (385.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

stringzilla-5.0.5-cp310-cp310-win_amd64.whl (460.4 kB view details)

Uploaded CPython 3.10Windows x86-64

stringzilla-5.0.5-cp310-cp310-win32.whl (286.3 kB view details)

Uploaded CPython 3.10Windows x86

stringzilla-5.0.5-cp310-cp310-musllinux_1_2_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

stringzilla-5.0.5-cp310-cp310-musllinux_1_2_s390x.whl (818.4 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ s390x

stringzilla-5.0.5-cp310-cp310-musllinux_1_2_riscv64.whl (789.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ riscv64

stringzilla-5.0.5-cp310-cp310-musllinux_1_2_ppc64le.whl (978.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ppc64le

stringzilla-5.0.5-cp310-cp310-musllinux_1_2_i686.whl (795.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

stringzilla-5.0.5-cp310-cp310-musllinux_1_2_armv7l.whl (787.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARMv7l

stringzilla-5.0.5-cp310-cp310-musllinux_1_2_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

stringzilla-5.0.5-cp310-cp310-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl (813.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ riscv64manylinux: glibc 2.39+ riscv64

stringzilla-5.0.5-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.9 MB view details)

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

stringzilla-5.0.5-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl (828.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ s390xmanylinux: glibc 2.28+ s390x

stringzilla-5.0.5-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl (984.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ppc64lemanylinux: glibc 2.28+ ppc64le

stringzilla-5.0.5-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl (981.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7lmanylinux: glibc 2.31+ ARMv7l

stringzilla-5.0.5-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

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

stringzilla-5.0.5-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (792.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

stringzilla-5.0.5-cp310-cp310-macosx_11_0_x86_64.whl (398.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ x86-64

stringzilla-5.0.5-cp310-cp310-macosx_11_0_arm64.whl (385.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file stringzilla-5.0.5.tar.gz.

File metadata

  • Download URL: stringzilla-5.0.5.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5.tar.gz
Algorithm Hash digest
SHA256 fd5994e3e7aa20c78574215b67489762b38c01e8e4878f292e48c22141c2a2ba
MD5 194c79cf2f0f36834862e02cfe5d05f9
BLAKE2b-256 3f06e1947f48853def688a14bce5a5c19531e48783f91f24e560be5b34c45308

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-win_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 82d122a61384d425cbba9127b8a3819aff54d0fc9e085744026684f950c59528
MD5 a7ee6912a0b3d3b321745b50c8a89a46
BLAKE2b-256 d7c576a7b13e633f572b31e2b275d239401144770e346c3044b7babdc4e0520c

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 b8c6811bc82683629723015378518fa65b0ef8c1a2c4ef02409dcd0ffd2b53a1
MD5 4edfdb87c6b44169dd187d0fa413abe4
BLAKE2b-256 012a6b5389b43a67eb2055b31aa0da326ffe94be976c9d9db1be2dc27ca657ec

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-win32.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 298.3 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 7e5c28e3ae1d086a8d2d9da7385588673362c5aa15f043fa1d39a8528b026d1d
MD5 9371aaf051a41bf070ed25dbbf174822
BLAKE2b-256 f48d8d69e4eb1c39733640b73ff5d197f0381e7af0afc334d80d260a28bc60c4

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 96c6030099aac0db68fe9f836b947bce181dffaac5857dea7b4da78eaf824e8e
MD5 29f6778ef35f217a043ebb166a7fbe4c
BLAKE2b-256 e89850c8ecb76870a3812aaf927b26e69916214b39732487d8f70bddd92df937

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7da6a9099122533abbec37c710c2a0cb782b554183d9c65abbf7320a0fd3d24e
MD5 bb04af624d4f176b9aabcb92d9e23901
BLAKE2b-256 1f74402baf21e3f1935cecfe705f02b60592f5c986d0d994f9efbbc1deda0a79

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bcc243afd78500fbb143dde1607205613aa0fdce2a4eebd21bd9770333a70172
MD5 c315ae81feab4af85e953e5429f936e1
BLAKE2b-256 b426b59eca934d068299e3a2f674a4000223408dfc6ed96dfc18aa77305d7e8f

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7ebda2bf4cd0653a75f0fd91bd91976de4bdb9c1f9af598eddec7d1447e71219
MD5 695d031125e44ac49f7ddf5b61444035
BLAKE2b-256 3a483fb31780e65dd29310b1b43549a919875694c890cebcbd5d33cde099aed2

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 bf1bfcdf0a84ee2cdb1173d88790a17b81a3e0061fe9a79be100386882e5ac50
MD5 ac7c111bb711cbd1c37e486b26161189
BLAKE2b-256 10147df809a7b9e3b7222780cbd8603682751eec74a0a8218997d7cbaca88a7e

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4a4c47b1d5e35127091c05061786503054eac849c82915a88293d82803cfa3b5
MD5 97a9c3efe462455b71caa95f44c9998c
BLAKE2b-256 6ba4bab535ac23812cbac3d46449f59c3a2956cfc772acb6e974e8b1ef8a8490

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-win_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 26d5a302df0fc7336e3a2662c1a2182ceb2b13d96ebc15d57f07adc650f6bf51
MD5 d15439f6ba2c42cb83fa55114b7546f8
BLAKE2b-256 263314e05febf905ffa070b3b1f05878f05a6a8603c88d189c4e1e571220f5cb

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 476.5 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 ac966ebc14b0f3696aacdc32c3710ae416e4fdc5b717b053b1cb434652cc570f
MD5 5c0d3738ae36df73c9af19028b4f5e74
BLAKE2b-256 311ddb7cebe7e50df3c451f5189b63205102dabdb7205e880c1885375111249c

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-win32.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp314-cp314-win32.whl
  • Upload date:
  • Size: 296.0 kB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 54f68d18b9370dada71dfbdbd8eb549eb66c59cd5b0cd1141793fea09524d86c
MD5 6d54f05401a14a008fc298a453007d35
BLAKE2b-256 190c393b7b3d741a60e4cac64b26f4906a10456fa1c9d4104792752990412d8f

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ed99b5fa28481cdffc9e1437557aae51a5fb8398bb26c2c6769ad3c6e6594de3
MD5 a10150d7f7f35944dfcc86d00e85cff9
BLAKE2b-256 1455982fbe177ec03341f1679ec4d62b56a8aff82e30b30f3d8f56131eb72b44

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 a6487929a0ebace1685339b40bc1c801a9140b5092be7903dc2a032760a2b213
MD5 87171c30e2870343a8533ce125e2c6ab
BLAKE2b-256 c4f946e0b169d3a45cd2c91eb5ec1df2e98cb0759f22d3313140fb16c0025401

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 f4a83b70be64aa53240c2458a5ee462cb626e96cc7cad2f31351faf8e1623bb8
MD5 6314ac0426e0beda16abc8f23d04fdf0
BLAKE2b-256 46a4250bed6515292066881e59c76d592b25b06f90cce7db81568ee67697a8d4

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 ef0f6355bf2631f6d8776c44231eaf0827bd109aaab816c34dab2ec3e449feea
MD5 c2d7af6c7a599a20a62ac7d3fe34d752
BLAKE2b-256 eaf718cdeb4d34d04f467743bc184f6d523369d5c8ada44e00e20d845b46fe4a

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 79d4d8c7840033b726e557333e867cf672416c4818a0aee9698be4a78456bd94
MD5 7af2e29d40b8f55d75134404462f3af1
BLAKE2b-256 f2b0ed2483c7f8c223d0d25a1c31a323bee9d77341bfc8fece8166bec5568c11

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 9dc50e505a6c260d736a910466d746150e622c424c150edf2557e6dd777124ed
MD5 f2145b3aa7def4215eaa43b6a71c3fe5
BLAKE2b-256 eea30a681503978cbd7bd5ef9795b4d0ddbcbe2712f7d42ec6297918afc00167

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6abea2b2c6ae9403c1bcd0eb4f44ff46f40a098374e61164b126520fa9494ce1
MD5 cd3902f3f4f18ee654e83876fc69497b
BLAKE2b-256 c5307356b94ef07b83a4d037b46e8e11b318199fad76881f4b7f84d542aab02f

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 15ef811cf363159e952a5deb71b12a05a67ba8e7717d4ed9f7ff6ed0e4cf009c
MD5 ed81dbe7f312b60a8b85c437d4dc80f0
BLAKE2b-256 e36a284b0375940630878c0e1f605c9608b73b808d999df2526ceb480fec293a

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 93541effd10a1bc82cb0657cb3262ec7b2809a59a569fd52cb170e1a67e08e5c
MD5 1a51622739b6155414f0091932b0d2ef
BLAKE2b-256 723ef47e1b6f4229c3fd39e4f03527ac15755ae46577913dd458c35d8defc211

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 3e86071b601c2803b355fb4900159efbe3674cdbb30add4c93caec95389c59da
MD5 e0cc4eecfda61d4eb5f3a2f5f08e1750
BLAKE2b-256 86e5c70491c673db693702447aff22e5be4994e9424824eabaadeb2a98e94042

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 f675fa609b809c5250974829707f7f79a9346cb68a81c1aa7cd2a05de3493039
MD5 7c8f9afe88accf0a29d5060dfb7df1b6
BLAKE2b-256 e0e17a4740a25e0e2e143586f51ecc73c74a9760e63e3faba26496d178ff717c

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Algorithm Hash digest
SHA256 773147f96534af883683e13c192ebfe1e05cf8b0d71bf43405fd338a83a29030
MD5 e6decce3e360b7cc9a30a9bab9e9cf5e
BLAKE2b-256 db28a062e8d1e1298c50603eb9686925edeeefb758941ab93672960880d763ba

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 62dff73b18b456b702e8424a77928ef08177d78d89d9f795fce901f09c7995e2
MD5 217a7c6521a62f9fc6f68818c5ebc786
BLAKE2b-256 6bd0d309b97d7a7a8c257270fefa1bf9e110a4cc3898aa514bc47dda9cb2f45b

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 5d6c79127694bf209731b29b881544a271535a2dc63c01cf14e6817008d9d9c8
MD5 e0ceeb57e861b2454d6a27182bfcb7ac
BLAKE2b-256 3934badbd5cb99e7597e53f4e0d8280524fed855298f28354dac01ce1c687386

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 335a2f263219387edbd8d8ffc80a91b04b26ba20079d956a7db524f320a8844a
MD5 f286d4ecd48c572522c994f594a0eb49
BLAKE2b-256 9edcb5344ed69e9daf0d043ed5459166f9c3638fcad804d90561b89c293dc83b

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 53b0b53365b4d45eebc5aa8d87234ea12bfc85d8d7121b4d5a94a9164df742bb
MD5 9b064555f4bd4009f3bfeec2170ff39f
BLAKE2b-256 9c7b2d935fc85fdf24c3fb5400be10e925000b3c10138848ece4c05fe970d4a5

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-win_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 85f58cee11cea7e801af995910fcdcd605fde1b4e435b7720cc1329be264c601
MD5 4241256f959a6a6ac2da96bbcf84e6d3
BLAKE2b-256 adeee616243b21af2ddfaea5b7a78a2b817afb67c090181a9d0fe07f7199c7bd

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 460.6 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d5f23fa37a81da500a7d26be18f9a4daa669b6bf763a1c424eb68c8c874c2398
MD5 78853dba8cbd4ee1e9c85f8560a90e14
BLAKE2b-256 c838351e581301692f33aa4b3ed1e44b7663f6b964d797fbea272a38435d0eb7

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-win32.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp313-cp313-win32.whl
  • Upload date:
  • Size: 286.8 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 79875e5f3e5c97f322045aa10602ddeeaf125baae78f552dcf81d4100c5622cb
MD5 76163118018639c3b26bb80466103260
BLAKE2b-256 69c0c1758ea2ddc3cf312907f81dbe40c3d9f013bb7f9ed0070c22978ee85397

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 50c9cafbc7ca67426eee82462593fc0dfe6ad96ade963253e34c1175368a4e54
MD5 3142fe5b5fa8a34c627c8fa9a7c0c262
BLAKE2b-256 039ab9928645bebaace08e90cb0c79c7bc9474cf075ba4627c8322a59aedd0c3

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 6e68d1bf0ffb20dada8042ce718d9ae8adc6d3a258a753dddb72001dc19e6a2c
MD5 6e4aaee78ef3bdc236c5f3bfb6f1681e
BLAKE2b-256 edb5a5d685d2dce1a51aaaea686e6ca51e3b6b605b58583e947b16747c554d88

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 6d21ce641db7d1aff830e8f55d16cb8d87453594a5bae1249d0e5281b3a5c92f
MD5 30870621a3157399a9af84d4eade5023
BLAKE2b-256 1bae5df2aaaf75a69d84d7b7d1f2ec36e0fa5bc994958b18b39fd8548de394cb

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 c81cd53d82dbb07da9cb0b78b63f3bff8d635d50cc9cef8dccb5ad3b79a5c050
MD5 cd335f9ff66cc585fea430352af015a9
BLAKE2b-256 9496c6d49dd9ea0ad303efead664e84830a3af41b1142a78e7f712a0217d0063

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 39b3dd6839afe7b1178b6711f87722649615f86bf86d7a94f32af61fbc2a42d7
MD5 0cd381998aff93e56b5b3140ab74e5b8
BLAKE2b-256 02a29cc55897b0787c24fb0bd056584f7c309570d5599483c673058602c20f60

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 bb6a843e1b2deb43e42fc678df85b4a00e82610f6ff89c2894c0d8e3774ba068
MD5 337fee2cb34fc08432d6cfecc56c4043
BLAKE2b-256 e87469235fa1ebbf71d127a1e1687a42c4a14458cf824ee08b77970df627e1e4

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5e275696c2cf61d2384aef241b498dbc0e6c0cac89ea28a36399cfa45810d78a
MD5 8567d2f22a5deb562741843e050a39f0
BLAKE2b-256 826e19e8df5b124942c3274c57d47e7de19b50c3d07a7559c8f2b52f508a5bb9

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 5d0d1a23a1e4010f38306d2c26f5aca8541a09788cf71e735375fdb9b78d4920
MD5 7e751bbd402234e2385d1a04a5224d63
BLAKE2b-256 81554ab271682ed4b5d137cd842ca91d04a614bc7a9d8dc086ba3e19a93ad171

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0afdd420c7e7bc5d1b47e60380b2436f1e3d56d850dd49b0bfb4bd5931cd4a15
MD5 2c71620cc2417ecb2468032182f97142
BLAKE2b-256 5188930a1ae5eecd7bd8a46482f8427476d5fd257b0528051261e0530e132a43

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 b61fbb25607ff30b7e0291a9309adca1f83c170ada5143f46509cfd563486cd7
MD5 c1aa38906afc7a9ae1280a09bd801b33
BLAKE2b-256 b03df484c29121e519b0af16a162e3631b52aad7723b591c7be4aaecccccd629

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 55eac04f00aac0ef9e88e5e31a124ec117aa208be1a962ef32f68df85ba50cf8
MD5 19a03664568820afae2b73b9db42f95e
BLAKE2b-256 91f3e88de8e15b60a1e9ba9c47ff23c6cf798af719fa63c8884c9f53034522a3

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Algorithm Hash digest
SHA256 3c4e40d6bd47757afc0ae66dabb07aee62f8a36b2cdebaa27b825834e075d20e
MD5 b652243795276599fe137de35ae577fe
BLAKE2b-256 a014bf15ea006f3c1bed285403fe6c536bd35f136ef019a48aba16547c916570

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f31f4a4dc553fadaa52c0eef2dfa32f1c4dfc0e6f5d8120744252c523e4be063
MD5 d296e15ab0954ce6c6fb7224d88b6183
BLAKE2b-256 9130c51626e1e852d44cf7b159cf93b87c6141bfc0c28876aeac220b842d2d29

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 68f950d63223f928af4a50b8ae3ee0e6901fd100e54635f886010b0f1de2b94e
MD5 608aae95da099b1332d0921c12f920d8
BLAKE2b-256 b40d0c1e7586c7b66b6399d4a4701751dfd82b6b9400038d164ab1c010a44410

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 d023d1bad72e476838ba8b4610db2b7176aa5cf075566632bf2c94c27a16fc29
MD5 1347a95b13483fe6f4b595ef158a6c5a
BLAKE2b-256 b2145eea472322bd5d1d4b7328121d90cfb816474307193393344f9037a67d3a

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 06e52a1e36e83101631c5ab2249cda12c5168c99fd7f0ca9213625f1a4b0c2ee
MD5 6bf308f9d05961e251f0e1e33f90ec93
BLAKE2b-256 8d1ea1ca8b55c3230fa46f750b77aaa0da5116baef9f49bc8d8800eafc0403b3

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-win_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 40315ee0be9d8f353bafbafdae274a73c1227fd6b7fea893e24ea332a3044a7d
MD5 f4f784a311bffb89336338cb1632f4bb
BLAKE2b-256 71a46b0d7b311eebfcc1cf5bce1253b73702155c67eae123ea3ac02017f75e26

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 460.6 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e59cbf517ca9d5b2d3dc32c4c45997e3a1ec777cc29307314001d049169d279b
MD5 13e29affa007b6ad2bacf1189b3f9b5b
BLAKE2b-256 5ba7832c394630b01a9b8b091da9068f3919d3b0a21a28e9ffb8a3431842f262

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-win32.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp312-cp312-win32.whl
  • Upload date:
  • Size: 286.8 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 44d8d561de60d42642830dc0c582905e0e2c20178c311056eb803bb8311a6f1f
MD5 c67bbdb7f4433c6d6ce5447877cc42af
BLAKE2b-256 ca30c461c7e9fecd00d1822250dbee2166e1e17e6bb71ba9e19e863d6cae6ca9

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bcc14333fbc038437f0726f8c107954291b9e9e581c12a923c180f8270060b9e
MD5 4a217ba8d34f32ac809a8d4f0ce4b747
BLAKE2b-256 b1b74943a37d82a1a0c9517db65f3000c7f9dcd444eb3db1f2857b47fad5bd97

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 808cac85bee6528d0198cf5c19b3a5f0701da302cc1925f809b648c3955fa5d9
MD5 5e4dd9f1a7fba71311b4dc042bc3bb13
BLAKE2b-256 b30f2f27e5045a7b7e53ea3788714e7a5f543a588310ae3f3adb94c068a04f41

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 290a5527deadc58ccb29bef085553994c0eb75921c2d4724b2f71560a85e301d
MD5 36e35d5d98f77eaded82582e4bbfe0b9
BLAKE2b-256 c3a4b2a9b3b24967391a1a3165dce065109246395608d89027dc8577e209613c

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 ee775deafb9f5e4de18060ed4cd696c853061aeee72b5cfcdf4294e767816526
MD5 cefdf73e216d299c480d8cf3dcf0e832
BLAKE2b-256 ef2b6b58fb619b8314ba2c19e1044534aebedb7998f1ed935a909b83a9f52b4d

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 9f57e73e4c7587e2e279ebcd1400e030c4328fb39462af885c3434a8b16a1155
MD5 2c8a344f82e9ee6da2662df657742ee9
BLAKE2b-256 b6ab8de3690ee54ca55ad2872bf63d057f233f8d7e7de819a1c66f3f9d6837d6

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 da3dd1aede9657300237dc21c58430261406aa5ac72903ba81e458ee902cbe4b
MD5 425099209c360a7d5941b7c985d17bdd
BLAKE2b-256 f5785d23340817e83c25f93b234173ee1d1fba5ad31c381df06c35fc1af3059a

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 59cdf2388f986ec8c2e3e3b320b5eeb55015b4c607c3ccba3d4ca95ee0370b00
MD5 92d10dfee037bfa0e5321db63b8343ed
BLAKE2b-256 1513c2a6b247a57244965043cb4d8d87687e5fecb08bc57fcc671958f2f22113

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 67be7a12ac9ac7a4e2e7dd71c7eba8e6dfea79ec68ab17923bc7823b1e35af0e
MD5 bd21a514179e7233dcb7b29af81b204a
BLAKE2b-256 a7a19baa4531fbbdd8baade0cb361add69630345f146fc121882ce9b2b0598ed

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a80c66adf0bcf668be2e7b201730a7c7ad5ad1180f6d692f53626b0efcb27318
MD5 1b18d9370629992358e103ae1015f074
BLAKE2b-256 0f015ee1c0367db907874d4304b8180a7b5cc700910a05e27aa563a82c931d66

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 b494fa7b5e7d9ae12e0c54c198009ffbacdb5bc21383d5e3eb273bf674146fc7
MD5 e861a6bf481376285ad7d63c4cec63fc
BLAKE2b-256 1dffe136b86f01b2362e519e33ed8f7cd6004aae429cc8953999068b8d480c68

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 5d0e87a1f7cdec1e542eaef1d8038fce4c8112b6678aec2dea5e5c3eadde8a81
MD5 bb3486f76448ffd791a008c1020982ca
BLAKE2b-256 9e4e0ff66ae1a275b214c18eae9ab03543f49a61c13b795bf834df7ea8728270

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Algorithm Hash digest
SHA256 67d6bbbfcbba3059f07957de933b9de49922d4c08731e9b8f09d4c9ce4938795
MD5 74d6b4f12b75a1986921fa3d3c401afe
BLAKE2b-256 26ca9c61f6405203172df592899a90a091312bfca71da5ca6d3aa897077cef71

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a79957c8f411bd5c8dd180dc1508ad678f9ebded4d15241d5282ad75c47d3c86
MD5 28b1d70d68f67274db25e9f0982bdf33
BLAKE2b-256 6f5d7e2a3347252666806a71b2a2fbd372bca9649740d18ed437fd7ddfa7cd6e

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 cb3088ca55fdd69ea86211f2bfd368b6794eaddcd204c2d74061d2d94ba2b19b
MD5 9f7c1e798685866fc5984a81a57d60b0
BLAKE2b-256 49105e02795b0d213acbb9cd61bc61a6ef2077315efae63abbfa227b746ca04d

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 47fb0fadb39fed25ff031fcafc4871def3ef5d711ee84f43f12c7f62162c060d
MD5 51584d05e72f36fe3b225ed08fdc0da7
BLAKE2b-256 8f1298b4add2901885e3ddde3ca26bbe46f60e928545dbea2cbaeaed3f609c7a

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cad76baf63c52496fe94d83931a13b2979dd0af3c2e8405b5e3d2c640fa2e159
MD5 328b0bd40178cfb8d39529e96280171a
BLAKE2b-256 92a1371947f7db904d0076fa2470c332a0efcfe9f2b588d24e5cf3e25a381959

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-win_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 3b72a5a378a4fb402323930c967457b01c57ae8ec4d17c9666201deedf9ad1cb
MD5 dfb61fff9dc94b5d6f3f594cc14f6632
BLAKE2b-256 bc33b374f8f8de4ad9f8f18defa061403d77a9ef533731d4e0e4ea1ed75f8c0f

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 460.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 83ef1800a58b539c94446934a68bcb406606a8de3842eab8dc89528a2eea605a
MD5 f57a4e4e94ba383585f1fb620c53d255
BLAKE2b-256 3c9c9c19b5a30b773a08b64e9c3e6fc02b6e2d94109ac64c4d5b4ed89cb76660

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-win32.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp311-cp311-win32.whl
  • Upload date:
  • Size: 286.3 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 31aeddb313846782cbf7cfd6d6e7bf612778b75581a611631c2ff0051528f145
MD5 f2c0ac4a2a98c4f560e88e16e57b5f70
BLAKE2b-256 c3b94f855ec2e8e5000c224943e8dfa1774ed2d85791255ea31a8ccdae2390e0

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8798028d53ef96286794e2f6af3a8220e03b28bf53e1dfef55936d201dc34353
MD5 2525329bc48c28f6db27e11a96b88815
BLAKE2b-256 927351f8fc2e5ae08478aa88387fccd4ab2c67034bd3f5f9e5eaa6d6876c6b65

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 b1e58aa73dc40a9fb198010c24e1c4793cc798d926ced562baf8716f5bdf819f
MD5 b9045da6a0b6c4e85d31804bc935c8c9
BLAKE2b-256 bf2392b4ab0aeb9564d6ea5f2d99a59a2723cec69ba4040d3df327dd25822ec9

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 5d5c7e4117e00b3938f86fdc1b57031f0e62fd09ce8679cf0661ddde922102e5
MD5 3b5f5e7a1c6c38bc979b7a6ae8400bd4
BLAKE2b-256 b4e0bee89e1d03cb277ab83c7276df5f9b426bb924eeffc003daf0da86069b4d

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 886f423969a19a993a3720a1d97a9722ce7baa9750de089ab1cf37839e04baf1
MD5 52ab5bf545f69ccb4324e33a83b5cf2e
BLAKE2b-256 91f712611732b4075fce9b9f875c56dd0075c25ccbc8d29238580c55ea5928a7

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 56bade1369a8869ab7eb2df83dfd2c3a7d39dd0775017d54f1896f22e6369ab5
MD5 b224990d4362b6c4dc190d9959e6dbcd
BLAKE2b-256 ea80aeaa29e60d747eeca0fa980d47303b43274214a307d012e6df03a56eaeb6

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 37598799ebe5c195384a3f9e6484b8ea01f008ba05d72669f574a79a891a7fd3
MD5 d4370af2b534cfa147da70d7e4a05025
BLAKE2b-256 e7b22eb82675506ca1469a954427a873ab0a6784314d3ff51608b3a7fef84891

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 9ad219b446ba11f19cd76bae1d5852a202c4a93f28f2b155860f3f5da14830a2
MD5 9cede0de016e8a9a0d84d5474962d793
BLAKE2b-256 ac64ce315e9069958dca41af7b9b75b8d879e3cb413b96f71855a2d1ba731d32

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 b2cb25b6704587bcddd81108418f6f7b40e80a770bd0900e65773259a0509def
MD5 882d37a6fea4ea9d889c7f81e593a2c9
BLAKE2b-256 4770614ec1af079dcd0ef859cc426095e36644afbf3646a494e4d2d8bd385d5e

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8d88598fdc7074d3402494bdbaaa5235587ac24f603b0efe2023322abf1654b1
MD5 f3b4cda31d0e1c6fd87710fef7ef57ef
BLAKE2b-256 3e531cf124624e889071269cf8914093842d17a51d91dc270d204b24418cf564

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 07b5cfdc250f65bd3c47fa9c797c02e03f52b614eea84ac1c0b2c6ee28ade86a
MD5 74742a152edb894f4de76e69e778f516
BLAKE2b-256 dcb49175d9467f3c7c161445c02d63b4c07b691124472b46ff57f05338f9e3ef

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 4b722215fe337411629d3d0c77c3b4d4c4245ece7f6aa0729cb5442277379f01
MD5 6ca6f5e21bab5c4a550cf4c27928e271
BLAKE2b-256 855a8a7308b7a729a025abd1ef9d686adb0d4f3c086285d1345b80789782cfc9

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Algorithm Hash digest
SHA256 d9de4dca9a1fc39d94f3a75cacece85a0dcb83f601a5f449ec970583f915afa1
MD5 f4d9f21979eea4ce37b5153887428829
BLAKE2b-256 ffdb40bb4175e2b136e2ba025b0b975c735688c96393701e67ff2b0b1e8b1d37

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 39f5ef747d49bff2f34604cd91a49d82905a64f67897bd0adc8e87a66cd016b7
MD5 56712ada6f37b3e81350d6e45d330a97
BLAKE2b-256 991137097487b052d2d926a775aad4fcf3635f12ac180f2c3e043ebf8da0541f

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 58a79f8e818d7b777fa44211d6018164e2f6f4f459a8c3d98956614e8b216215
MD5 5d4bc8f7c6d688fe2deaebfadb30c5d5
BLAKE2b-256 b824c47af0a12d3f57cad594333670d1bdd94e8ed88fd4490c114057f13179c8

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 38a9bbf40584998b524ff9440e989d8fef4faf9c6f794c53ee9e704dd0432849
MD5 be30d56d79377f40c35a355851d2a366
BLAKE2b-256 6d8103a072550c7414a64c3d9520f0a017a5d5155c7449245e1b3ccf30eca04c

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e142c842aca1a2f436becf4b454bb55cefa16a8b2a12789956a18f0da1730d8e
MD5 2d37633edb8c9752bb2d102e91d0111f
BLAKE2b-256 e0c6b1166d320e7c889dd984aa9db9c23ada415df707870f45d7313ab83231d9

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 460.4 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 be78f50b142364ff87e324a272af50f0244560c18b1fdf0a15d2c571aac9abd1
MD5 f93f82357c3d72b63581f566f12a449e
BLAKE2b-256 819cde2e67dff8ace93e916afbffc400d5151d7c74a25c50581a78af7df54cee

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-win32.whl.

File metadata

  • Download URL: stringzilla-5.0.5-cp310-cp310-win32.whl
  • Upload date:
  • Size: 286.3 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 a780f397b118a393376a2cdaac3a5a6f9f683c16fd75d1fb884a4322bda74231
MD5 b52294b34a8abbe49e1b33bed8fa2ad7
BLAKE2b-256 6929e076d36ec6e88501b5b9d887f93c86039e83f2d1dbd18f4684f42136f617

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d8293857dd2896666fad5c17d8ab004945c3b0734bdecf41e85cc13366299cff
MD5 6843b3e6933ea2cbfe43739c1061132b
BLAKE2b-256 b24a25fde110bdca2d0b482b48c6134446ff07a31f8b7199e18d5a1725513b43

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-musllinux_1_2_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-musllinux_1_2_s390x.whl
Algorithm Hash digest
SHA256 9eba7a933c6121b939688624c32e5ee55b08cb35be717dbba09bd181ce06db6b
MD5 1557780d999f4716aebb150ea5a0e40c
BLAKE2b-256 7303b65c30c7b95d1fdbcaa5fed0215b00cd7130ef0ca9319d0f4e67c1af0dfe

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-musllinux_1_2_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-musllinux_1_2_riscv64.whl
Algorithm Hash digest
SHA256 45dddcca19d6160816d70ba528493959394ada29c063dae2cee27c41804b7f6a
MD5 3b72d5ce530cb9a6412bbc90efa985ae
BLAKE2b-256 c010de2fd6fa7a26eef6142386cf10894dcf6fdcba8cfa6114207272a49d9158

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-musllinux_1_2_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-musllinux_1_2_ppc64le.whl
Algorithm Hash digest
SHA256 fd68a4f48c3d4742feed76650776d99f0d1de1a57fd121ce03924938ae53f0c8
MD5 508b3f5a0f9e54ba31fd0aa61b5225fd
BLAKE2b-256 693d06c0abb3d7c97de3828eef9eec06596f3e5af3722bd8ff1c185d24652fe9

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 898ea374263b9df63262520d8c617bd7e1a12b18006673a7893147a552026838
MD5 9697c05233fdf27b61455c74decb0cb7
BLAKE2b-256 cb2a3f9174748f5caf9c834d3d27e9fe3dcba14fdfbf1126d929c6097c7314f5

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 9dc6a32caa7e932007d434ffca75aa07ebb6c5ded112200b2f309c39c82ec24f
MD5 2a48b66df4ee54fb49138f186351b1d0
BLAKE2b-256 74f4a640df60c69e7be20fede8d5c8f5ebb1f359706fd66219b1a01bdb4124c2

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5f7b0b28590cb8e51d68fa984cc3b6daf9f72085e5fe57a8e30515ecda174eed
MD5 68b36f030e98b38c390d3971a3909e42
BLAKE2b-256 36c1c95e278a1541f9735b405517a8a7f37fbb5e550b985cd8b4561a83562af5

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Algorithm Hash digest
SHA256 04a8121dd20371971b212a5fc1888080ede29d0d52ca41d63af921776011b9c3
MD5 9b6e4bfce13f9b3e2173b00f074caf66
BLAKE2b-256 e66b08186d37b81060ef58ef73373934cedbabf8681d32f24c2f51cc1b35b6d9

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0bef80f8804d22363eca96876aaeed13733b1320eac7ecdfecfa0259389b0c79
MD5 d3ab8c45126520e2e680cc4369f3788d
BLAKE2b-256 08b546c3c04590f6af2b5494b2a0f85b4026779ee7249a8e3da07e030f83e0b9

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Algorithm Hash digest
SHA256 cf0694db8551aae970510ae9b9af841372f74abe4ab5e8d0a1b9a081c65d8650
MD5 c9115aa77dcbd7583753803042e93804
BLAKE2b-256 2aa2f1d5c7614a783c98306c8d0dbad6882037d27f29cb766dac1649575496a8

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Algorithm Hash digest
SHA256 17268b963df055d73274d5f8439b87e0af3afcf8f9315f4786acb6e08120b79c
MD5 522a22dfc26f5d77b4eb8dfc793896b8
BLAKE2b-256 e28664a3c3ba75b362be7167054e69b3d6e4182a872bb965149df677f9bb94e1

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Algorithm Hash digest
SHA256 614f720506585ea7d79eb2a211859630040aceefe6cf165557e3474939fb559b
MD5 cae45bf387029022263497f0ed80b81d
BLAKE2b-256 1b3baf485da60e03a6de8b67ad2f22e20fcf62df75e293868bd46f2eee76d243

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 072989b1a5e3152e70d233023d290a7f2f92e435dc21be347a4df1c64ddff6cf
MD5 5dc89673ff7ae2b43e09fe4267d09a63
BLAKE2b-256 bc502d7170edcfa661995e72c81c84413770254ca04786966689f7f2bebd3cab

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 4646938c5f0a34af056cc3023d2aee514c5f49fe35b77846252be8cfa03bfc0b
MD5 7ee768812bf12a7d7966b72f983b10c3
BLAKE2b-256 c4912aef19936d40f448e5249143de25c622c1d516379bb417b8b39c3e5ffc57

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 a8ddd32d640cf2209fbfbf8492eb4c822e92ddbcae70295c755505ef4ef97338
MD5 b2a8c58732e61325cb23b9e2deef23bb
BLAKE2b-256 7b392f521e84a08b7c25d4c985fa257d75de5be4e5a4ff3a91c1db12855384ac

See more details on using hashes here.

File details

Details for the file stringzilla-5.0.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for stringzilla-5.0.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0af4f02347643211be49d085c6a17d5577518d8a16070cb68af841ad4d358201
MD5 a287c1879773d8fdb14604f7e15183df
BLAKE2b-256 613242b6a14ad029fa2872b0b3242e8622de0c09c6a6f184c66b1fe44854c7ea

See more details on using hashes here.

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