Skip to main content

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, or find_package(stringzilla) an installed build · 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 🔜

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.

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.

Digesting one message is a serial dependency chain — 32 dependent SHA256RNDS2 at 4 cycles each — so no wider instruction set can accelerate it, and the SHA-NI path already sits within 15% of that hardware floor. That is also why there is no Ice Lake tier for it: SHA-NI has no VEX or EVEX encoding, so goldmont is the widest single-message kernel there will ever be.

Independent messages are a different story: they compress in parallel lanes, sixteen at a time on AVX-512 and eight on AVX2, which is what sz_sha256_multistate_update exposes. That lane-parallel form nearly triples the hash rate of dedicated SHA-NI silicon on token-sized inputs, and still leads by half again on line-sized ones. Lanes retire independently, so a batch of mixed lengths stays vectorized to each lane's own last block rather than dropping to scalar when one lane runs short. A group still costs as much as its longest member, so feeding inputs in length order is the caller's lever — sz_sequence_argsort produces that ordering, and per-backend numbers are in include/stringzilla/hash/README.md.

AES-256 Encryption

Most cipher libraries are built for a socket: a stream arrives in order, gets authenticated, and is consumed once. Columnar and block-storage formats are not sockets. They seek — a reader wants row group four hundred out of a million-row file and has no interest in the preceding gigabyte, so a cipher that can only start from byte zero forces the whole file through the AES units to answer a question about the middle of it.

StringZilla implements AES-256 in two modes, following FIPS 197 for the cipher and NIST SP 800-38D for authentication, and treats seeking as the first-class case. Counter mode is seekable: sz_aes256_ctr_xor takes an absolute byte_offset, so decryption starts wherever the reader is, at the cost of authentication. Galois/counter mode adds a tag over the ciphertext and any associated data, and gives up seeking to get it. Which trade a format wants is the format's decision, so both are exposed rather than one being wrapped in the other.

The two share a key schedule but not a key struct. sz_aes256_key_t is the bare round-key schedule that counter mode needs, while sz_aes256_gcm_key_t adds the hash subkey powers H^1 through H^8, so bulk encryption never carries a hundred and twenty-eight bytes it will not read. Both one-shot and streaming forms exist, and the streaming state carries two sixteen-byte rhythms across chunk boundaries — one for the keystream block and one for the hash block — so a five-byte chunk followed by an eleven-byte chunk produces the same bytes and the same tag as one sixteen-byte chunk.

Streaming splits by type rather than by a flag: sz_aes256_gcm_encryptor_t seals and sz_aes256_gcm_decryptor_t opens. The Galois hash absorbs ciphertext in both directions, so a shared state that could be pointed the wrong way would make that a runtime question; separate types make it a compile error instead.

Authenticated decryption returns sz_authentication_failed_k on a forged tag and zero-fills its output, so a caller who ignores the status finds nothing usable rather than forged plaintext. The streaming decrypt is called sz_aes256_gcm_decryptor_update_unverified because it structurally emits bytes before anything is authenticated, and the name is the warning.

Backends cover AES-NI and PCLMUL, VAES and VPCLMULQDQ, Arm crypto extensions and SVE2-AES, RISC-V Zvkned with Zvkg, Power vcipher with vpmsumd, and a WebAssembly path that has no cipher instructions at all and emulates the round function through a constant-time tower-field substitution — where the 256-byte lookup table a serial implementation reaches for is itself the side channel.

On realistic record sizes the authenticated path outruns both Ring and OpenSSL, in either direction, and unauthenticated counter mode is faster still. Counter mode's margin is an artifact of coverage rather than of arithmetic: OpenSSL ships hand-written AVX-512 assembly for Galois/counter mode and the cipher-block chaining variants, but not for counter mode, so that comparison is a vectorized kernel against a sixteen-byte one. Key setup runs the other way, since an AES-256 schedule is real work where adopting a stream-cipher key is a copy, so workloads that churn through short-lived keys favour the ChaCha implementations. Per-backend numbers are in include/stringzilla/cipher/README.md.

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.

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
ffi 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.

Metadata

Release files for stringzilla 5.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stringzilla 5.3.1
File Size Uploaded Provenance
stringzilla-5.3.1.tar.gz 2.0 MB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for stringzilla 5.3.1
File
stringzilla-5.3.1-cp314-cp314t-win_arm64.whl CPython 3.14 CPython 3.14 free-threading Windows ARM64 Details
stringzilla-5.3.1-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
stringzilla-5.3.1-cp314-cp314t-win32.whl CPython 3.14 CPython 3.14 free-threading Windows x86-32 Details
stringzilla-5.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details
stringzilla-5.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64 Details
stringzilla-5.3.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
stringzilla-5.3.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
stringzilla-5.3.1-cp314-cp314t-macosx_11_0_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ x86-64 Details
stringzilla-5.3.1-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
stringzilla-5.3.1-cp314-cp314-win_arm64.whl CPython 3.14 CPython 3.14 Windows ARM64 Details
stringzilla-5.3.1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
stringzilla-5.3.1-cp314-cp314-win32.whl CPython 3.14 CPython 3.14 Windows x86-32 Details
stringzilla-5.3.1-cp314-cp314-pyemscripten_2026_0_wasm32.whl CPython 3.14 CPython 3.14 PyEmscripten 2026.0+ WebAssembly Details
stringzilla-5.3.1-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
stringzilla-5.3.1-cp314-cp314-musllinux_1_2_s390x.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ IBM System/390x Details
stringzilla-5.3.1-cp314-cp314-musllinux_1_2_riscv64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ RISC-V 64 Details
stringzilla-5.3.1-cp314-cp314-musllinux_1_2_ppc64le.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ PowerPC 64-le Details
stringzilla-5.3.1-cp314-cp314-musllinux_1_2_i686.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-32 Details
stringzilla-5.3.1-cp314-cp314-musllinux_1_2_armv7l.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ ARMv7l Details
stringzilla-5.3.1-cp314-cp314-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ ARM64 Details
stringzilla-5.3.1-cp314-cp314-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl CPython 3.14 CPython 3.14 Linux glibc 2.34+ RISC-V 64, Linux glibc 2.39+ RISC-V 64 Details
stringzilla-5.3.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
stringzilla-5.3.1-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ IBM System/390x, Linux glibc 2.28+ IBM System/390x Details
stringzilla-5.3.1-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ PowerPC 64-le, Linux glibc 2.17+ PowerPC 64-le Details
stringzilla-5.3.1-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARMv7l, Linux glibc 2.31+ ARMv7l Details
stringzilla-5.3.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
stringzilla-5.3.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl CPython 3.14 CPython 3.14 Linux glibc 2.5+ x86-32, Linux glibc 2.28+ x86-32 Details
stringzilla-5.3.1-cp314-cp314-macosx_11_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 11.0+ x86-64 Details
stringzilla-5.3.1-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
stringzilla-5.3.1-cp313-cp313-win_arm64.whl CPython 3.13 CPython 3.13 Windows ARM64 Details
stringzilla-5.3.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
stringzilla-5.3.1-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details
stringzilla-5.3.1-cp313-cp313-pyemscripten_2025_0_wasm32.whl CPython 3.13 CPython 3.13 PyEmscripten 2025.0+ WebAssembly Details
stringzilla-5.3.1-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
stringzilla-5.3.1-cp313-cp313-musllinux_1_2_s390x.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ IBM System/390x Details
stringzilla-5.3.1-cp313-cp313-musllinux_1_2_riscv64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ RISC-V 64 Details
stringzilla-5.3.1-cp313-cp313-musllinux_1_2_ppc64le.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ PowerPC 64-le Details
stringzilla-5.3.1-cp313-cp313-musllinux_1_2_i686.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-32 Details
stringzilla-5.3.1-cp313-cp313-musllinux_1_2_armv7l.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ ARMv7l Details
stringzilla-5.3.1-cp313-cp313-musllinux_1_2_aarch64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ ARM64 Details
stringzilla-5.3.1-cp313-cp313-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl CPython 3.13 CPython 3.13 Linux glibc 2.34+ RISC-V 64, Linux glibc 2.39+ RISC-V 64 Details
stringzilla-5.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
stringzilla-5.3.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ IBM System/390x, Linux glibc 2.28+ IBM System/390x Details
stringzilla-5.3.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ PowerPC 64-le, Linux glibc 2.17+ PowerPC 64-le Details
stringzilla-5.3.1-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARMv7l, Linux glibc 2.31+ ARMv7l Details
stringzilla-5.3.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
stringzilla-5.3.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl CPython 3.13 CPython 3.13 Linux glibc 2.5+ x86-32, Linux glibc 2.28+ x86-32 Details
stringzilla-5.3.1-cp313-cp313-macosx_11_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 11.0+ x86-64 Details
stringzilla-5.3.1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
stringzilla-5.3.1-cp312-cp312-win_arm64.whl CPython 3.12 CPython 3.12 Windows ARM64 Details
stringzilla-5.3.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
stringzilla-5.3.1-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details
stringzilla-5.3.1-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
stringzilla-5.3.1-cp312-cp312-musllinux_1_2_s390x.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ IBM System/390x Details
stringzilla-5.3.1-cp312-cp312-musllinux_1_2_riscv64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ RISC-V 64 Details
stringzilla-5.3.1-cp312-cp312-musllinux_1_2_ppc64le.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ PowerPC 64-le Details
stringzilla-5.3.1-cp312-cp312-musllinux_1_2_i686.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-32 Details
stringzilla-5.3.1-cp312-cp312-musllinux_1_2_armv7l.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARMv7l Details
stringzilla-5.3.1-cp312-cp312-musllinux_1_2_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARM64 Details
stringzilla-5.3.1-cp312-cp312-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ RISC-V 64, Linux glibc 2.34+ RISC-V 64 Details
stringzilla-5.3.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
stringzilla-5.3.1-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ IBM System/390x, Linux glibc 2.28+ IBM System/390x Details
stringzilla-5.3.1-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ PowerPC 64-le, Linux glibc 2.17+ PowerPC 64-le Details
stringzilla-5.3.1-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl CPython 3.12 CPython 3.12 Linux glibc 2.31+ ARMv7l, Linux glibc 2.17+ ARMv7l Details
stringzilla-5.3.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
stringzilla-5.3.1-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl CPython 3.12 CPython 3.12 Linux glibc 2.5+ x86-32, Linux glibc 2.28+ x86-32 Details
stringzilla-5.3.1-cp312-cp312-macosx_11_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 11.0+ x86-64 Details
stringzilla-5.3.1-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
stringzilla-5.3.1-cp311-cp311-win_arm64.whl CPython 3.11 CPython 3.11 Windows ARM64 Details
stringzilla-5.3.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
stringzilla-5.3.1-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
stringzilla-5.3.1-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
stringzilla-5.3.1-cp311-cp311-musllinux_1_2_s390x.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ IBM System/390x Details
stringzilla-5.3.1-cp311-cp311-musllinux_1_2_riscv64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ RISC-V 64 Details
stringzilla-5.3.1-cp311-cp311-musllinux_1_2_ppc64le.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ PowerPC 64-le Details
stringzilla-5.3.1-cp311-cp311-musllinux_1_2_i686.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-32 Details
stringzilla-5.3.1-cp311-cp311-musllinux_1_2_armv7l.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ ARMv7l Details
stringzilla-5.3.1-cp311-cp311-musllinux_1_2_aarch64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ ARM64 Details
stringzilla-5.3.1-cp311-cp311-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ RISC-V 64, Linux glibc 2.39+ RISC-V 64 Details
stringzilla-5.3.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
stringzilla-5.3.1-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ IBM System/390x, Linux glibc 2.28+ IBM System/390x Details
stringzilla-5.3.1-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ PowerPC 64-le, Linux glibc 2.17+ PowerPC 64-le Details
stringzilla-5.3.1-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARMv7l, Linux glibc 2.31+ ARMv7l Details
stringzilla-5.3.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
stringzilla-5.3.1-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl CPython 3.11 CPython 3.11 Linux glibc 2.5+ x86-32, Linux glibc 2.28+ x86-32 Details
stringzilla-5.3.1-cp311-cp311-macosx_11_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 11.0+ x86-64 Details
stringzilla-5.3.1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
stringzilla-5.3.1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
stringzilla-5.3.1-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details
stringzilla-5.3.1-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
stringzilla-5.3.1-cp310-cp310-musllinux_1_2_s390x.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ IBM System/390x Details
stringzilla-5.3.1-cp310-cp310-musllinux_1_2_riscv64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ RISC-V 64 Details
stringzilla-5.3.1-cp310-cp310-musllinux_1_2_ppc64le.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ PowerPC 64-le Details
stringzilla-5.3.1-cp310-cp310-musllinux_1_2_i686.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-32 Details
stringzilla-5.3.1-cp310-cp310-musllinux_1_2_armv7l.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ ARMv7l Details
stringzilla-5.3.1-cp310-cp310-musllinux_1_2_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ ARM64 Details
stringzilla-5.3.1-cp310-cp310-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ RISC-V 64, Linux glibc 2.39+ RISC-V 64 Details
stringzilla-5.3.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
stringzilla-5.3.1-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ IBM System/390x, Linux glibc 2.28+ IBM System/390x Details
stringzilla-5.3.1-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ PowerPC 64-le, Linux glibc 2.17+ PowerPC 64-le Details
stringzilla-5.3.1-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl CPython 3.10 CPython 3.10 Linux glibc 2.31+ ARMv7l, Linux glibc 2.17+ ARMv7l Details
stringzilla-5.3.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
stringzilla-5.3.1-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-32, Linux glibc 2.5+ x86-32 Details
stringzilla-5.3.1-cp310-cp310-macosx_11_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 11.0+ x86-64 Details
stringzilla-5.3.1-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 216.0 MB

Release files / stringzilla-5.3.1.tar.gz

Download URL stringzilla-5.3.1.tar.gz
Size 2.0 MB
Tags Source
SHA-256 checksum
How to use checksums
845dc4c2889e73d4f0ff650cb80469a02af554a7a0c20c090a4226605d87f018
BLAKE2b-256 checksum
How to use checksums
b892477d21501bc9aa20f8fdad3bcf48fad9dee9162457677f41a8d01a85e3bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-win_arm64.whl

Download URL stringzilla-5.3.1-cp314-cp314t-win_arm64.whl
Size 607.3 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows ARM64
SHA-256 checksum
How to use checksums
40c333313a9deb6bfa5f19a66ea0a48aae94b482c5f27a5401e6ed6f5d73e812
BLAKE2b-256 checksum
How to use checksums
e5871228236eb938c219f041b44907f2ea9ccebb81202e57770e7e0e12d59844
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-win_amd64.whl

Download URL stringzilla-5.3.1-cp314-cp314t-win_amd64.whl
Size 769.6 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
57454a8d39e190de573c3d43edcce54ec05058f3a7209ad543c79d0a861953e4
BLAKE2b-256 checksum
How to use checksums
b07961391f1bc8fe9ae2ae4f4be6aa8ca94d72a24a021687eb2a5141afd5d076
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-win32.whl

Download URL stringzilla-5.3.1-cp314-cp314t-win32.whl
Size 195.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-32
SHA-256 checksum
How to use checksums
5828fa7fb2d5c7cca554a049b2713f2b4f63f764c6e1ad22fd08cf08c823f89d
BLAKE2b-256 checksum
How to use checksums
42c1402baf1757db3b1183e7506ae8d24186467461aed202ede6625fe9201690
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL stringzilla-5.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 4.2 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
c5b06006a1b2213c346da86ffd0e9ff02a30c4474ccc5f6ebab9ef25b71db56b
BLAKE2b-256 checksum
How to use checksums
d1e38a2eeea53514cd998e6245b35281eefc97ecdb3614fe234bde2fa6f5c12b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl

Download URL stringzilla-5.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl
Size 3.4 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
ca41e4302b31077e2c210aa1f9271e81de26c2921fa83e026b79bcc4a93fbf78
BLAKE2b-256 checksum
How to use checksums
5873a50e3989b3dec94d8c3c4ffdbfbbcf484e18d61ff2193431d80430b65d0b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL stringzilla-5.3.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.3 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d7389c3ec71c7baee4ede4212ec19e56086224a12324f0fd5a9e09defcf5f7ba
BLAKE2b-256 checksum
How to use checksums
54e94490f5bb2f876e05d90965035fe6965e81b8104cd41fd961f816c9295f71
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL stringzilla-5.3.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
9aac36e01d24592c6ae94d0f4b39a2b185c6b7e4c8f9b8f91f35b3f0fa1f2169
BLAKE2b-256 checksum
How to use checksums
bb8f6032e8ccad078538d36a43733d0756364ba6f9f4ef2e9ae0fc7f378db1eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-macosx_11_0_x86_64.whl

Download URL stringzilla-5.3.1-cp314-cp314t-macosx_11_0_x86_64.whl
Size 324.8 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
e5e2bd93b857dccface2ba9d7359042710428696a33ebe0e11f8f07692d3d294
BLAKE2b-256 checksum
How to use checksums
ab2968ad9fc061bf60c7416b5827cbc26f2b114e90223ce4d1bba4e39c2c85da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314t-macosx_11_0_arm64.whl

Download URL stringzilla-5.3.1-cp314-cp314t-macosx_11_0_arm64.whl
Size 297.1 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
41e0dcfed5da9fcdf0dac83a25f7a255a9540d7bc3a4691dd8304850014da56f
BLAKE2b-256 checksum
How to use checksums
de6228089ce6c4297306addaa6850951eb684d0cd55acc9a5bcc77f5e48da28f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-win_arm64.whl

Download URL stringzilla-5.3.1-cp314-cp314-win_arm64.whl
Size 605.7 kB
Tags CPython 3.14 Windows ARM64
SHA-256 checksum
How to use checksums
3248266243328adcf57e99f12059180674a62ed1601901b004cf520fc4897c2b
BLAKE2b-256 checksum
How to use checksums
a160cacd6a9b3378f1e53ab9c912ff95ad79c79e64ded8f99acded1bd2dd13dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-win_amd64.whl

Download URL stringzilla-5.3.1-cp314-cp314-win_amd64.whl
Size 768.2 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
f5b1ef6b11d72b0e51188e7e79f3fc94503d058f1e4205d984bdc069928316b9
BLAKE2b-256 checksum
How to use checksums
db5f2659ed04da67a0767a33cf79064d8da8ce95ae5049eb3f5ccc800e2736a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-win32.whl

Download URL stringzilla-5.3.1-cp314-cp314-win32.whl
Size 194.1 kB
Tags CPython 3.14 Windows x86-32
SHA-256 checksum
How to use checksums
f4e4d7680714d0e64d6b5fe18c3e299c39e0e2abd261c2ae765491d882639754
BLAKE2b-256 checksum
How to use checksums
ed44ab5276575a6bc53f3f138d71182ecbb3f764f99d333eb5d2428448ad5172
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-pyemscripten_2026_0_wasm32.whl

Download URL stringzilla-5.3.1-cp314-cp314-pyemscripten_2026_0_wasm32.whl
Size 160.1 kB
Tags CPython 3.14 PyEmscripten 2026.0+ WebAssembly
SHA-256 checksum
How to use checksums
b4da835a968b13e3cfc23c40026d348506d5ea45fdbfdae5a0c87b4f8b43093c
BLAKE2b-256 checksum
How to use checksums
f86164e3f3d5421fe21347af9eae153851fc41b124f7f8d4da600dd3c2241de6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL stringzilla-5.3.1-cp314-cp314-musllinux_1_2_x86_64.whl
Size 4.2 MB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
e4dd4f7c1d7165b83837f7028db35521784016e2e6f4a5a8f2965fce95b31003
BLAKE2b-256 checksum
How to use checksums
1c663750a60338f6505feabeaec1b554c1e76dfded538b45c689a2b21e0b4e3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-musllinux_1_2_s390x.whl

Download URL stringzilla-5.3.1-cp314-cp314-musllinux_1_2_s390x.whl
Size 2.4 MB
Tags CPython 3.14 Linux musl 1.2+ IBM System/390x
SHA-256 checksum
How to use checksums
b9c26ace775692716c71f6d1360baedf6d3446634832fe3123d118fae99af3cc
BLAKE2b-256 checksum
How to use checksums
1cb921042c0b7977bb1db16502e84612979e84e625574cbce5d036ae350b6cbb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-musllinux_1_2_riscv64.whl

Download URL stringzilla-5.3.1-cp314-cp314-musllinux_1_2_riscv64.whl
Size 2.3 MB
Tags CPython 3.14 Linux musl 1.2+ RISC-V 64
SHA-256 checksum
How to use checksums
dc8df69993a6f226524ab4e734a6bad4655d9dbc4b53f6306706d905c59a1dee
BLAKE2b-256 checksum
How to use checksums
363cf5328bdfe822f11f2b6c481ec0c766247e76a54e103d75b2f0ed632f13cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-musllinux_1_2_ppc64le.whl

Download URL stringzilla-5.3.1-cp314-cp314-musllinux_1_2_ppc64le.whl
Size 2.6 MB
Tags CPython 3.14 Linux musl 1.2+ PowerPC 64-le
SHA-256 checksum
How to use checksums
1896d8b9e5608226eca4977d8f5f23a28314c9b85373dbf1e4b60af195027219
BLAKE2b-256 checksum
How to use checksums
dbcf74e8208be103783996824405e5475b9bb7b3d36e2beaf0c59b22f85230cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-musllinux_1_2_i686.whl

Download URL stringzilla-5.3.1-cp314-cp314-musllinux_1_2_i686.whl
Size 2.3 MB
Tags CPython 3.14 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
8e5533f84db973a0487ceb587fca4553c16e4a07dc0df3309fd8f056c952a670
BLAKE2b-256 checksum
How to use checksums
9b84ed2432fbc03e167c0eecbade073099d1310c290bbb12d5b323cc43d2e855
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-musllinux_1_2_armv7l.whl

Download URL stringzilla-5.3.1-cp314-cp314-musllinux_1_2_armv7l.whl
Size 2.3 MB
Tags CPython 3.14 Linux musl 1.2+ ARMv7l
SHA-256 checksum
How to use checksums
086bad2dc829f30e80f239f530c5e04c1745b81d581a9d0034cfe5f20931e0a4
BLAKE2b-256 checksum
How to use checksums
474d0da349804447579475686fad54fce99be153606decc4401c121f3fbefe4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-musllinux_1_2_aarch64.whl

Download URL stringzilla-5.3.1-cp314-cp314-musllinux_1_2_aarch64.whl
Size 3.4 MB
Tags CPython 3.14 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
96e8be974c28c5119b84a3f51ecd133c70c92454af39c4b7a8a843d02a32c0a2
BLAKE2b-256 checksum
How to use checksums
0ac8ef9df1bbd4c7d54095ae790f6a67901bb652a19f9391688e4d5be254529c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl

Download URL stringzilla-5.3.1-cp314-cp314-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Size 666.2 kB
Tags CPython 3.14 Linux glibc 2.34+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
6378ab0f50a15271966418a1990ce162ba5867d559c174dbc7370c4a792702d7
BLAKE2b-256 checksum
How to use checksums
caa3f772b742a44728b59905ad4186ccb4e8a5910c33965be71b014981493b33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL stringzilla-5.3.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.2 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
582039598f7a900c876a047853b0cf805609f73a414399ca389d1491b728baeb
BLAKE2b-256 checksum
How to use checksums
fadef9949a0be71d239aa21a74a6e1d298a267521bb541a7d2cdb73da9304808
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl

Download URL stringzilla-5.3.1-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Size 2.4 MB
Tags CPython 3.14 Linux glibc 2.17+ IBM System/390x Linux glibc 2.28+ IBM System/390x
SHA-256 checksum
How to use checksums
9542c80c0b532c3f0b1ccd29bd8391d97bfe882fe69d71ad9ef9bbab3b03b1a5
BLAKE2b-256 checksum
How to use checksums
81666593e19b552824c234567d90300dec96035f4868a462c99d3905fb5580cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl

Download URL stringzilla-5.3.1-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Size 2.6 MB
Tags CPython 3.14 Linux glibc 2.17+ PowerPC 64-le Linux glibc 2.28+ PowerPC 64-le
SHA-256 checksum
How to use checksums
ff54df974771776b112eec18be3c24c6a3fdf1b28a2f6a7181cf03a60c9a2edd
BLAKE2b-256 checksum
How to use checksums
9f58c592c4ff6056da574c86543a8e58c8783c0294a1d495e4af8424fe97a683
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl

Download URL stringzilla-5.3.1-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Size 2.4 MB
Tags CPython 3.14 Linux glibc 2.17+ ARMv7l Linux glibc 2.31+ ARMv7l
SHA-256 checksum
How to use checksums
692bb703411b3b6aa18fed175eb07c135f0b12039ac90b471291b2b31f2109f7
BLAKE2b-256 checksum
How to use checksums
121b45f2ec68a843e1994ca26f2ba605fd3448cd04af196db06ac3944e79bc0b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL stringzilla-5.3.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
22ce3766d8c9a9a3f727a76968a382d272701ea2b22998dbd43eb733332ef076
BLAKE2b-256 checksum
How to use checksums
e324caa517993a3e67ceb6816058bc673a27ae4ee3701e1156523115ffdd9043
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl

Download URL stringzilla-5.3.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Size 2.3 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
8b1691849173cbcd94e3b0d5b945926d0b83e3953616d2b7e370ec0e0d48b365
BLAKE2b-256 checksum
How to use checksums
159680dacf21aa441a71f6c195fab125fc65a24a2f68c9e9074e7d7a2da01591
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-macosx_11_0_x86_64.whl

Download URL stringzilla-5.3.1-cp314-cp314-macosx_11_0_x86_64.whl
Size 321.9 kB
Tags CPython 3.14 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
d9bd9fc57322b97fbe8097ddadf87d96d5342d5eaed1b9a695a17eb89c3f30ea
BLAKE2b-256 checksum
How to use checksums
7461e800a752ce54346117833510bee48aa9f4ff07fc83a803880cea4117e4cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp314-cp314-macosx_11_0_arm64.whl

Download URL stringzilla-5.3.1-cp314-cp314-macosx_11_0_arm64.whl
Size 294.3 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
abbcc3e18fdc2a9b8c4f3a886b629979d38bfa08502197fcdab716bee1b651a9
BLAKE2b-256 checksum
How to use checksums
43b5dbf0b34f382b884cb8b731ed5c9d51dab5e225b80c89785ea47c191abeca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-win_arm64.whl

Download URL stringzilla-5.3.1-cp313-cp313-win_arm64.whl
Size 588.6 kB
Tags CPython 3.13 Windows ARM64
SHA-256 checksum
How to use checksums
1774c2c7b9f3b22b17d3f1f1f6aa1c8d898438901bdd8e9c49836433ade4bfe0
BLAKE2b-256 checksum
How to use checksums
909cc1f537f74f981546791b24b6036beb2dcec9e8d188b505b12a4f518b5a11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-win_amd64.whl

Download URL stringzilla-5.3.1-cp313-cp313-win_amd64.whl
Size 751.1 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e474451511fe209b23dd9171275ba7a91c16a70315c10f2cfaf8f14a04c4f560
BLAKE2b-256 checksum
How to use checksums
8c31a257410736bee95ca12266db5749c56ffc1c760b568035794c6cf478f409
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-win32.whl

Download URL stringzilla-5.3.1-cp313-cp313-win32.whl
Size 183.9 kB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
3ebb25b414308f1270331e2b2d5dfb2c53b2b2a649481d8a0ace35a44cfa6d3e
BLAKE2b-256 checksum
How to use checksums
0368cce2d0d9424ce84f85df1fcd0e323484f5243c796684c6a632939a18089a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-pyemscripten_2025_0_wasm32.whl

Download URL stringzilla-5.3.1-cp313-cp313-pyemscripten_2025_0_wasm32.whl
Size 160.2 kB
Tags CPython 3.13 PyEmscripten 2025.0+ WebAssembly
SHA-256 checksum
How to use checksums
c1f03d6f43c1deb21dce73f9b85f40528949c319c20e984ddbc264bff4b7fc56
BLAKE2b-256 checksum
How to use checksums
df16e8d1eb15282779896afad9a8a7c7eee16ee4a937f8df630627d9b1ad33e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL stringzilla-5.3.1-cp313-cp313-musllinux_1_2_x86_64.whl
Size 4.2 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
c878ec25ede2cac2146f04d5918bac151302be4d2e0197647b76c501b029c53e
BLAKE2b-256 checksum
How to use checksums
274721abf180162ca5476c0af9bc14fab270359e0d1ff7d51ad047fd27c6086d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-musllinux_1_2_s390x.whl

Download URL stringzilla-5.3.1-cp313-cp313-musllinux_1_2_s390x.whl
Size 2.4 MB
Tags CPython 3.13 Linux musl 1.2+ IBM System/390x
SHA-256 checksum
How to use checksums
6b938af3d1e4d9770742fb8278016655481e339d05368827fe26031cbf8daa89
BLAKE2b-256 checksum
How to use checksums
f1da4ab3a1f1183e5caf020cd871901c5321d6aa049ccb1583311fa510f3d40a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-musllinux_1_2_riscv64.whl

Download URL stringzilla-5.3.1-cp313-cp313-musllinux_1_2_riscv64.whl
Size 2.2 MB
Tags CPython 3.13 Linux musl 1.2+ RISC-V 64
SHA-256 checksum
How to use checksums
2f9b9335cc7136e017db6913336e9fede2c03b10988cd0be25ce5d9eac29a774
BLAKE2b-256 checksum
How to use checksums
276fc93b32e038946d57ca4f896acfe614c07a05b991b632139addfc82597cf0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-musllinux_1_2_ppc64le.whl

Download URL stringzilla-5.3.1-cp313-cp313-musllinux_1_2_ppc64le.whl
Size 2.6 MB
Tags CPython 3.13 Linux musl 1.2+ PowerPC 64-le
SHA-256 checksum
How to use checksums
0c2498b7d4b86ec2ce2bfa15a22c6b6beeb1ee683e84720eb93378087139a8b4
BLAKE2b-256 checksum
How to use checksums
d00f0bc5d9ee57bd3345545b35bd15ff0eea7e391b278e7b360e3839511f136a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-musllinux_1_2_i686.whl

Download URL stringzilla-5.3.1-cp313-cp313-musllinux_1_2_i686.whl
Size 2.3 MB
Tags CPython 3.13 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
5f5c22bd5d4cb28f6eede5931d573c7a9103f2d2191e02e695b2ebba0caecf4c
BLAKE2b-256 checksum
How to use checksums
eb8f4acfdc6da3fd3daa44dafe7280f1454ef09e64cbf520a1bbfe9697799a7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-musllinux_1_2_armv7l.whl

Download URL stringzilla-5.3.1-cp313-cp313-musllinux_1_2_armv7l.whl
Size 2.3 MB
Tags CPython 3.13 Linux musl 1.2+ ARMv7l
SHA-256 checksum
How to use checksums
ccf1862bd23b56d20d97631c4e12f0ecbe910be748c626399f14172640cd40c1
BLAKE2b-256 checksum
How to use checksums
f51f39fa81764b9a3eb95fda0d964ea71d791eac772fe118b746083f93cf5454
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-musllinux_1_2_aarch64.whl

Download URL stringzilla-5.3.1-cp313-cp313-musllinux_1_2_aarch64.whl
Size 3.4 MB
Tags CPython 3.13 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
b26656f0ebd2b85529a596d411a9e6ae0c0167a1dbc3bfa56241c8284a5b6d9b
BLAKE2b-256 checksum
How to use checksums
447663598814a64190c8787e1228e2e3f972ef38f09dd83c9359e13bd3aa2476
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl

Download URL stringzilla-5.3.1-cp313-cp313-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Size 666.5 kB
Tags CPython 3.13 Linux glibc 2.34+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
e6ae7557b81b54a61df297cd32dd488be5693587249f27a8e55c8c9bb9983e18
BLAKE2b-256 checksum
How to use checksums
4b254613a57ff0b39cc55a8ff17a59b15f0b5b5a5906731beb54bbdd0504b6d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL stringzilla-5.3.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.2 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
45bdae8c1acc43b355072e2d89a38eb2ed8e1035c1d59e7219f4f14abc067c4f
BLAKE2b-256 checksum
How to use checksums
32daca188cf8c4fa6e9d6269ec7eca57e797b2f0b81bc3a52183a6101a3d693a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl

Download URL stringzilla-5.3.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Size 2.4 MB
Tags CPython 3.13 Linux glibc 2.17+ IBM System/390x Linux glibc 2.28+ IBM System/390x
SHA-256 checksum
How to use checksums
983fbea988ec7854fceaf9e52d20ed79c849227883e24e60c87534bb07bd9203
BLAKE2b-256 checksum
How to use checksums
c53e416595edec0d2d9290da38245596c94d1f3dabd3d79846945398464e2c5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl

Download URL stringzilla-5.3.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Size 2.6 MB
Tags CPython 3.13 Linux glibc 2.17+ PowerPC 64-le Linux glibc 2.28+ PowerPC 64-le
SHA-256 checksum
How to use checksums
ee0453b34a0fa26da5c857fb5282bc7c78d265c0c96332db7f82147ecd48b9a2
BLAKE2b-256 checksum
How to use checksums
eba81817612ac02b703753d85e275256707a0e96ca3c5ff0c3c9bc3dbc707b7b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl

Download URL stringzilla-5.3.1-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Size 2.4 MB
Tags CPython 3.13 Linux glibc 2.17+ ARMv7l Linux glibc 2.31+ ARMv7l
SHA-256 checksum
How to use checksums
d6996f1604fc9fea05f1e16ca7939c0f515c6e77fba9502d768fdb56fa21e79f
BLAKE2b-256 checksum
How to use checksums
5ebdd2c2347301ee5fc637965fe43050fa426b93d68d7610e2022f3a657b9a5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL stringzilla-5.3.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
862b0479c9849ee94a100f1b1f29a9da49de3d91cd0e22298689b14e35cebc91
BLAKE2b-256 checksum
How to use checksums
4d68c9def9e2751eaeeea49ab8c29d39fcccad0a634387dd41f2cdd63a8b8355
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl

Download URL stringzilla-5.3.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Size 2.3 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
38f473998592f4e9723a949a54a007ad26690fbefc0a4ee930726c1a81fe44b1
BLAKE2b-256 checksum
How to use checksums
2570725e4497a71ed0034988126ecd2b359e807bff6d9609addb44d4ad680093
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-macosx_11_0_x86_64.whl

Download URL stringzilla-5.3.1-cp313-cp313-macosx_11_0_x86_64.whl
Size 321.8 kB
Tags CPython 3.13 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
9919df8766d5daf57460e071375b449e143572e24a2f27a1c3d0cb21a87d4f7f
BLAKE2b-256 checksum
How to use checksums
bc7e5affa0e5c7aa90b773e20ed37038852a4d0cfd1753f57040c807521bc354
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp313-cp313-macosx_11_0_arm64.whl

Download URL stringzilla-5.3.1-cp313-cp313-macosx_11_0_arm64.whl
Size 294.3 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9f3602c1674a0e2eeac4da61446c66bee32246398897d0cf914373cb89b4fe91
BLAKE2b-256 checksum
How to use checksums
c33c66b2c74454b80c1d2b3646db8e63c2d3f9f9706155c6d964566c0752b965
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-win_arm64.whl

Download URL stringzilla-5.3.1-cp312-cp312-win_arm64.whl
Size 588.6 kB
Tags CPython 3.12 Windows ARM64
SHA-256 checksum
How to use checksums
04267a87193d3359f9c4b575d5d48666b2a380fca7b2ea24dac697a2080fb603
BLAKE2b-256 checksum
How to use checksums
4ca849e0fc1da3d5a8ca051aabbe3662129f1cb9f639d322270958aeb87b1997
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-win_amd64.whl

Download URL stringzilla-5.3.1-cp312-cp312-win_amd64.whl
Size 751.4 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
88b8fe8f913b1a7627d566f36e2881d3aeaa6a05216f74b3eaa69da015ad66ef
BLAKE2b-256 checksum
How to use checksums
019acd10f0fccbd2b76db56ba0f5105f13dca26bf791bf0c165e6d84bc1879ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-win32.whl

Download URL stringzilla-5.3.1-cp312-cp312-win32.whl
Size 183.9 kB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
72f477b80774cef107d5d46854102d0f2ca239eb692368440616fdd21c5f9952
BLAKE2b-256 checksum
How to use checksums
37d8057464d45b5af62b4dccb93592054ce0376a41c3b4ea9256c5f3a4ef5b48
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL stringzilla-5.3.1-cp312-cp312-musllinux_1_2_x86_64.whl
Size 4.2 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
5227d88f00c150db13c035109f3b6cf09fe6f13222f6481300f214fdfdb53c1f
BLAKE2b-256 checksum
How to use checksums
112b378bae6871991a3a0068bdd888303596400193a2aa5aa8d88d83f2bc08e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-musllinux_1_2_s390x.whl

Download URL stringzilla-5.3.1-cp312-cp312-musllinux_1_2_s390x.whl
Size 2.4 MB
Tags CPython 3.12 Linux musl 1.2+ IBM System/390x
SHA-256 checksum
How to use checksums
de66e9fa3cb87e2696a4441b4701af526c2f569464dbcbc432542f58fdce6430
BLAKE2b-256 checksum
How to use checksums
e4bf9a0107dd6921b97e834aa4d70298ef46c6834f696a5718eac24da4e2a841
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-musllinux_1_2_riscv64.whl

Download URL stringzilla-5.3.1-cp312-cp312-musllinux_1_2_riscv64.whl
Size 2.2 MB
Tags CPython 3.12 Linux musl 1.2+ RISC-V 64
SHA-256 checksum
How to use checksums
f59b7b88d0c6a6d368fac95a28e52b1c987aa45b4ad76f2211606367cbed36bd
BLAKE2b-256 checksum
How to use checksums
0192b3834f983d0abaa026179d440f578a2ab56004d8e08b31d39542de40d49b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-musllinux_1_2_ppc64le.whl

Download URL stringzilla-5.3.1-cp312-cp312-musllinux_1_2_ppc64le.whl
Size 2.6 MB
Tags CPython 3.12 Linux musl 1.2+ PowerPC 64-le
SHA-256 checksum
How to use checksums
d039f771b15a15c0e0f518622bd12ad6f4aa23d63c680fd4e724988fcde20929
BLAKE2b-256 checksum
How to use checksums
f96b31525e7a2cc12a793e0edcf2687178b384ed34462a770898ed1c07520cb2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-musllinux_1_2_i686.whl

Download URL stringzilla-5.3.1-cp312-cp312-musllinux_1_2_i686.whl
Size 2.3 MB
Tags CPython 3.12 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
433288f169edc364c2c956180232d37d896e253801be6ef867be2c572af5bcd2
BLAKE2b-256 checksum
How to use checksums
be43bfd588cc6382c0ceceb7d04658e515a1c76984c2843cee39e03da6122866
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-musllinux_1_2_armv7l.whl

Download URL stringzilla-5.3.1-cp312-cp312-musllinux_1_2_armv7l.whl
Size 2.3 MB
Tags CPython 3.12 Linux musl 1.2+ ARMv7l
SHA-256 checksum
How to use checksums
e61c8c70f57424438767372ab069bcdc0c61da2d12fb52eb45f57b69d110b405
BLAKE2b-256 checksum
How to use checksums
f2270e0afb6f27a47d003479878ef580f698e449db78f9f3f557d59c8259670e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-musllinux_1_2_aarch64.whl

Download URL stringzilla-5.3.1-cp312-cp312-musllinux_1_2_aarch64.whl
Size 3.4 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
a6f7212212f6396c9970f5e4f6c50f405f45122305330008154530d4077368b0
BLAKE2b-256 checksum
How to use checksums
43ae4ad3c9234fd6bc56577fce35b4487ebe001f2f6250b778f9e3733f321687
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl

Download URL stringzilla-5.3.1-cp312-cp312-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Size 666.0 kB
Tags CPython 3.12 Linux glibc 2.34+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
ba3b00907988bd0730e0dd04700675e1b69e4940afc4b7a866f3f8ff1f4a848e
BLAKE2b-256 checksum
How to use checksums
22f0c7c54a1f36719d21dd47a48205b9e95500d442b87f1ddb91c92569a2311b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL stringzilla-5.3.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.2 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f72b2c277b8a403c0427ed90cff845b3d5129e885e77aa322b0f2cdc19aafcd0
BLAKE2b-256 checksum
How to use checksums
c38e38753eb857255afcf0616c0d1ce5d732e47dbd4dec49b81d26b306b17b95
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl

Download URL stringzilla-5.3.1-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Size 2.4 MB
Tags CPython 3.12 Linux glibc 2.17+ IBM System/390x Linux glibc 2.28+ IBM System/390x
SHA-256 checksum
How to use checksums
375b55f4ba682c9db94918dc6ea737b6c1277465d6975d0c735496a99e54f6bb
BLAKE2b-256 checksum
How to use checksums
7276a8d1c1c017a091e17be8ec153d471cd12b67fbf56173bddb42173b470355
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl

Download URL stringzilla-5.3.1-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Size 2.6 MB
Tags CPython 3.12 Linux glibc 2.17+ PowerPC 64-le Linux glibc 2.28+ PowerPC 64-le
SHA-256 checksum
How to use checksums
eb31a309985e0f5d0f2cdf627ebcef7bc4859d8bddd6ada21e3b27f18ef4817a
BLAKE2b-256 checksum
How to use checksums
cce71b13b781bd82b6d91ea2a8ad84d94939fd8feae01e2c1c55c09d7328c21b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl

Download URL stringzilla-5.3.1-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Size 2.4 MB
Tags CPython 3.12 Linux glibc 2.17+ ARMv7l Linux glibc 2.31+ ARMv7l
SHA-256 checksum
How to use checksums
e65a422f953a2f3a18fabd7a3327e0bf0e2775add526a7a12ba5db95ce03d58a
BLAKE2b-256 checksum
How to use checksums
4b93401d5dddc89e0439f3ea08fb8b23979f906f694d67ee72278fb9c46cdcaa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL stringzilla-5.3.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
38c7ce80682ce5dfb3f58ea97ac2d91fb96d3797058a951c37b2a29b65c12d87
BLAKE2b-256 checksum
How to use checksums
4f4eae40c6f86a7b39230ef915cd2ce88f0882233f4f9e748b7071fdc51549bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl

Download URL stringzilla-5.3.1-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Size 2.3 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
ed985829990e9893050f6ec5c9965ddf6cfee54b9fbd7a9d88b3f2ba7b864d31
BLAKE2b-256 checksum
How to use checksums
b9f046fd90d197b644c852aa6c7ef1ac162507a9caeddcc5c2bc1ea7e3ce7d36
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-macosx_11_0_x86_64.whl

Download URL stringzilla-5.3.1-cp312-cp312-macosx_11_0_x86_64.whl
Size 321.8 kB
Tags CPython 3.12 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
94e84fe17cccf8fdecaab557e549bceaa1e368b2083376e59cd82386c34541d2
BLAKE2b-256 checksum
How to use checksums
dabccf3c9fa85f65acfb556af2ba4fa056deb78480b72c77029ce991151ed7d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp312-cp312-macosx_11_0_arm64.whl

Download URL stringzilla-5.3.1-cp312-cp312-macosx_11_0_arm64.whl
Size 294.3 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
23a7ab0da6717ec83562dba1512c5f75efbe4f24750e091cc9f474ee39af2594
BLAKE2b-256 checksum
How to use checksums
c4da8cb17d2e6f611ea9bdd35be5146647f032cbc8c3a0374d33179dc424d688
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-win_arm64.whl

Download URL stringzilla-5.3.1-cp311-cp311-win_arm64.whl
Size 588.3 kB
Tags CPython 3.11 Windows ARM64
SHA-256 checksum
How to use checksums
45b0e636e0e41a3160d36d50f1ffbdb92012633da6fe6d5b6e96993acf1331d2
BLAKE2b-256 checksum
How to use checksums
77e24d00130beb5c09aa18a6048234cd4bc0869a8380c9fbd68ebd2c8f6eaa56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-win_amd64.whl

Download URL stringzilla-5.3.1-cp311-cp311-win_amd64.whl
Size 750.8 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
dea36329e768d8e08f6e0d075019e97523e5b004498d558829762a95dd1e39d0
BLAKE2b-256 checksum
How to use checksums
54aa764e31086b977ca204bd1a7b2adbd9d76ca5284c91892fcd1cca2d11dcbe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-win32.whl

Download URL stringzilla-5.3.1-cp311-cp311-win32.whl
Size 183.5 kB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
c4497ad455ada57d2f1fa2a9ee1dab72496d3449ae5345e92975b045e139c0ff
BLAKE2b-256 checksum
How to use checksums
c23cb898dc4b31afb1396ee19c0ff24758cd7b312cea81590b85af0387faf9c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL stringzilla-5.3.1-cp311-cp311-musllinux_1_2_x86_64.whl
Size 4.2 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
a3113305722be0782ed62823042ed5065a6e3eabd1447fe024a8a630b4904a44
BLAKE2b-256 checksum
How to use checksums
125a80081e87a6fd5199bb57944fe2c0fb415b08fb7f6598a38be9a32b42a7a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-musllinux_1_2_s390x.whl

Download URL stringzilla-5.3.1-cp311-cp311-musllinux_1_2_s390x.whl
Size 2.4 MB
Tags CPython 3.11 Linux musl 1.2+ IBM System/390x
SHA-256 checksum
How to use checksums
888154c5d3106f3b2b46ebffb316be51cf7a9e8662b3a8f94823766ec5e494d5
BLAKE2b-256 checksum
How to use checksums
c895b4249d18d97e5e88fa2a533d60bc6a7aaa2605f15147db4fc7f2cdd5f715
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-musllinux_1_2_riscv64.whl

Download URL stringzilla-5.3.1-cp311-cp311-musllinux_1_2_riscv64.whl
Size 2.2 MB
Tags CPython 3.11 Linux musl 1.2+ RISC-V 64
SHA-256 checksum
How to use checksums
1556e68a03723a968572ce1995e9b72220595695a3c791d7791394b813214fe2
BLAKE2b-256 checksum
How to use checksums
e911529cbce6a82690d4d61c1f9d1258338f043a22f737d66b2582ae9d5c09e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-musllinux_1_2_ppc64le.whl

Download URL stringzilla-5.3.1-cp311-cp311-musllinux_1_2_ppc64le.whl
Size 2.6 MB
Tags CPython 3.11 Linux musl 1.2+ PowerPC 64-le
SHA-256 checksum
How to use checksums
c7e88b1e5442edbe1115bb83b8146bb12ded365ec14c0d9ce5858d6f733c55d2
BLAKE2b-256 checksum
How to use checksums
5d354ea76fd81742cf6d0ff3918b218b413d2f7b56004fbf704e1cb6e53c279c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-musllinux_1_2_i686.whl

Download URL stringzilla-5.3.1-cp311-cp311-musllinux_1_2_i686.whl
Size 2.3 MB
Tags CPython 3.11 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
9dbffbd9e3778591b3dc135b8e4a3093ff62115f6af83ff2becf7b9caf751de2
BLAKE2b-256 checksum
How to use checksums
ab4528c1f62e3cf90a4fed118cdb6b10925d121c152fc8e8b35957c4e07aea76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-musllinux_1_2_armv7l.whl

Download URL stringzilla-5.3.1-cp311-cp311-musllinux_1_2_armv7l.whl
Size 2.2 MB
Tags CPython 3.11 Linux musl 1.2+ ARMv7l
SHA-256 checksum
How to use checksums
e15d34157e9979c3f12ced60ecef10a1a446fe3688674ecb0a033265e6791a04
BLAKE2b-256 checksum
How to use checksums
3dde3297d451d0b328d723e0fac2da5414949bbd696a1e29c7144616ba2e3176
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-musllinux_1_2_aarch64.whl

Download URL stringzilla-5.3.1-cp311-cp311-musllinux_1_2_aarch64.whl
Size 3.3 MB
Tags CPython 3.11 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
367b5710be75a4bee9e91619dc7e133a03a3093d078915a16ce9788d7e9227cb
BLAKE2b-256 checksum
How to use checksums
2dbd02c5f9cec84109f6dec87b27338575859e689760d0e100115e2327495019
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl

Download URL stringzilla-5.3.1-cp311-cp311-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Size 662.5 kB
Tags CPython 3.11 Linux glibc 2.34+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
100c5dacea44f0ddb850e89b1c309d16f8c58fb82f2ba437a5264bde04c426d8
BLAKE2b-256 checksum
How to use checksums
7a6081810e77774452f651bd8c9007a8353ba6f44c6e751ca3b2dfb7a79daa25
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL stringzilla-5.3.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.2 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
cb3b155a96485dfacd9d687a006eb5501d2fb401579a527708ff342ff2d6c847
BLAKE2b-256 checksum
How to use checksums
c47991604a4e4d137cbfa5ac5044758dd92a0f06f3477009d3000c624e481471
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl

Download URL stringzilla-5.3.1-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Size 2.4 MB
Tags CPython 3.11 Linux glibc 2.17+ IBM System/390x Linux glibc 2.28+ IBM System/390x
SHA-256 checksum
How to use checksums
64c55601bb337374c453d4fee097504ad76b98c97245d267a19d28bc821d162a
BLAKE2b-256 checksum
How to use checksums
0ff5b936753f4ced3a69c5e4f4f0366e52054e819d243845f415909fe34d757e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl

Download URL stringzilla-5.3.1-cp311-cp311-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Size 2.6 MB
Tags CPython 3.11 Linux glibc 2.17+ PowerPC 64-le Linux glibc 2.28+ PowerPC 64-le
SHA-256 checksum
How to use checksums
d61670cdfc3497156ee6ce8a16dc1a52b5b7a8262a24289e0b7f26ef1caa840e
BLAKE2b-256 checksum
How to use checksums
60900dcab90fd51563a2fdc17d2a0784fdcbf104a33e09b2c798f9312cd7171f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl

Download URL stringzilla-5.3.1-cp311-cp311-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Size 2.4 MB
Tags CPython 3.11 Linux glibc 2.17+ ARMv7l Linux glibc 2.31+ ARMv7l
SHA-256 checksum
How to use checksums
9a48fdd445b405e5d4c420300ed2e02fef56f01d4eca0195bcb356c83d281612
BLAKE2b-256 checksum
How to use checksums
8364d67ca4c4c450854c9ad8293075a7857b892c134d00ab8230da5097794b02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL stringzilla-5.3.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
9ae0a7c2b1ca21b9495fdf60369bbce9ec17f31eaa20dc3aea2abc464c9778e7
BLAKE2b-256 checksum
How to use checksums
8d3838532f566183e55463d05f190cbdf226c04473eeead6cefeea8e68193221
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl

Download URL stringzilla-5.3.1-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Size 2.3 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
018e3e435e85b746b8fa9f254c991a48659396900ba215c263f3b5541f88f983
BLAKE2b-256 checksum
How to use checksums
0bd411709b7b341fdc37278b70b3d8e6e11558c8cb5d2235c105957cef5dd6d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-macosx_11_0_x86_64.whl

Download URL stringzilla-5.3.1-cp311-cp311-macosx_11_0_x86_64.whl
Size 320.6 kB
Tags CPython 3.11 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
d425f6e70ff0cdc4535a401d188ab229cae637b1e20daa9ab2834c401f754615
BLAKE2b-256 checksum
How to use checksums
14ef81ae23e4ed5bd925104fda70e5e6dc6c738135099a4227bf89b778437b37
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp311-cp311-macosx_11_0_arm64.whl

Download URL stringzilla-5.3.1-cp311-cp311-macosx_11_0_arm64.whl
Size 293.8 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4858e210426d195510031da1993787a39fda054025bdce58a1096bb6b3190f67
BLAKE2b-256 checksum
How to use checksums
9b1df93581377ea906a9f43425263dc82a79c1bde92f2798cd27524e788d5fd5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-win_amd64.whl

Download URL stringzilla-5.3.1-cp310-cp310-win_amd64.whl
Size 750.9 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
62d78a76622cc4aea7ab9d08cb07b3f194e038bc4b64b7d1e09ac9a86bdec623
BLAKE2b-256 checksum
How to use checksums
5b2748bc96e908be172e129cacb62af809092beaa02c1faa7fc99ea05c5d7cb6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-win32.whl

Download URL stringzilla-5.3.1-cp310-cp310-win32.whl
Size 183.5 kB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
98eb01bcf7b50cf215946517c565d4c0bea978afc5f55d07c35720c09d8282ae
BLAKE2b-256 checksum
How to use checksums
db47dcbaab2347e635b74021b01d39fb41152f458c3a183a72d68481364c68c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL stringzilla-5.3.1-cp310-cp310-musllinux_1_2_x86_64.whl
Size 4.2 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
67569e07fb51298a3a2408e3e97f4c7c8016d29474403ae2b7d6ab609c60dcce
BLAKE2b-256 checksum
How to use checksums
6d2208c56d783e1defc018a84f78fae01b8be44201075b2aff0cb7171635bd19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-musllinux_1_2_s390x.whl

Download URL stringzilla-5.3.1-cp310-cp310-musllinux_1_2_s390x.whl
Size 2.4 MB
Tags CPython 3.10 Linux musl 1.2+ IBM System/390x
SHA-256 checksum
How to use checksums
533394cf98fe25a0a1e879a405352489ab22a3e76056dee54726c87e8c9727c7
BLAKE2b-256 checksum
How to use checksums
cef12d24cf328a6090511cf4a3e22779d16646e5c6790ac6d96dc00dcb399d00
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-musllinux_1_2_riscv64.whl

Download URL stringzilla-5.3.1-cp310-cp310-musllinux_1_2_riscv64.whl
Size 2.2 MB
Tags CPython 3.10 Linux musl 1.2+ RISC-V 64
SHA-256 checksum
How to use checksums
68f8ad8631b4745b10dfefb57476e731552e050e8cf4e27a80b1346067c65144
BLAKE2b-256 checksum
How to use checksums
f48a51d19ca1be623c997723888875651ac02805ef37e1f9d87bd76717a497e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-musllinux_1_2_ppc64le.whl

Download URL stringzilla-5.3.1-cp310-cp310-musllinux_1_2_ppc64le.whl
Size 2.6 MB
Tags CPython 3.10 Linux musl 1.2+ PowerPC 64-le
SHA-256 checksum
How to use checksums
0808f4b6c0d1927fe9f22b4b33ad610adc3f27590dad88fbe45cfa657cc2c16d
BLAKE2b-256 checksum
How to use checksums
bfea8ac3e134c648afa3569f3bc7489b27172c52299c4ed8cc2202fd970c8c0b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-musllinux_1_2_i686.whl

Download URL stringzilla-5.3.1-cp310-cp310-musllinux_1_2_i686.whl
Size 2.3 MB
Tags CPython 3.10 Linux musl 1.2+ x86-32
SHA-256 checksum
How to use checksums
af57ee4b942ddcee1bda6fa0b174bf766013d7f33b7385b4855fb6dee53cee7b
BLAKE2b-256 checksum
How to use checksums
8e07df47e51b955fc9da315e7b717ffa8d8093c36d88679cf096986b591d5172
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-musllinux_1_2_armv7l.whl

Download URL stringzilla-5.3.1-cp310-cp310-musllinux_1_2_armv7l.whl
Size 2.2 MB
Tags CPython 3.10 Linux musl 1.2+ ARMv7l
SHA-256 checksum
How to use checksums
0a7efc850238b2b994be3931e33722646ad9452c97231746a9094fb385ee07d5
BLAKE2b-256 checksum
How to use checksums
9c5d911cf6656bd93f18f404cc57288b1c4380b757d85cb0cf2e4ff9f1ff4643
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-musllinux_1_2_aarch64.whl

Download URL stringzilla-5.3.1-cp310-cp310-musllinux_1_2_aarch64.whl
Size 3.3 MB
Tags CPython 3.10 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
e79b8bdd1b41dbf384958c0ba1547a8398d5654c13182cdf223d17de9c34c92f
BLAKE2b-256 checksum
How to use checksums
06e8ee54e8f18105b16f600d0f8e356b6b9c80eeb078dea6a274115dd79d54b4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl

Download URL stringzilla-5.3.1-cp310-cp310-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl
Size 657.5 kB
Tags CPython 3.10 Linux glibc 2.34+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
0ed577d3acbf82fce123edff5f207995a6538ade91577d94b25ab30e625205b5
BLAKE2b-256 checksum
How to use checksums
e37cc7badbef52e70046e20c65a0dbf550f3aefa57b5a9a0b45031681db57957
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL stringzilla-5.3.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 4.2 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
565a46b13ff292a5bd8c2250a4bc160c92fd5625ddd9dc2fdcd7c2143496b09c
BLAKE2b-256 checksum
How to use checksums
2dd10520c061a0aa6c9b89dd8496c447b8122df1959eea827eb4223030e4d728
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl

Download URL stringzilla-5.3.1-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl
Size 2.4 MB
Tags CPython 3.10 Linux glibc 2.17+ IBM System/390x Linux glibc 2.28+ IBM System/390x
SHA-256 checksum
How to use checksums
b7fcdb771fe9161acea14c8ae0c4de5b8ae9fa72b7ec39eb39addc2a174bdd79
BLAKE2b-256 checksum
How to use checksums
475810af3e2d00ae610c1d667632f1f3040dc7417aa2ff75c10274700d0bc3de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl

Download URL stringzilla-5.3.1-cp310-cp310-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl
Size 2.6 MB
Tags CPython 3.10 Linux glibc 2.17+ PowerPC 64-le Linux glibc 2.28+ PowerPC 64-le
SHA-256 checksum
How to use checksums
6fb1a60d307f6470e1b0397eca17f6a97c717d025434175b46582044e9c59efe
BLAKE2b-256 checksum
How to use checksums
202d34459b03757777ce1488d48f92dfb21cd623a00607ce27656c262128296b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl

Download URL stringzilla-5.3.1-cp310-cp310-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl
Size 2.4 MB
Tags CPython 3.10 Linux glibc 2.17+ ARMv7l Linux glibc 2.31+ ARMv7l
SHA-256 checksum
How to use checksums
7f90c1b22bbdce048f4eef60845cccd08ddd7e6bc8aaf16a63ae949e46da1a94
BLAKE2b-256 checksum
How to use checksums
6c4b7055eb9bb680ff8c82e4f2345bd943c482ab5cb9e3a5bfdb9d0f23793228
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL stringzilla-5.3.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 3.4 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
adfc295772837efd578d617b88c9072a644f3e01928ff9b67cbb0c0ca33d9cae
BLAKE2b-256 checksum
How to use checksums
d46c8803254b97570c3d6ae020664368e505d3baad0c0cdc7a9ace19549b8126
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl

Download URL stringzilla-5.3.1-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Size 2.2 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-32 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
6ca15f5ff311b108166148c25c7cf7d3e734a9c4f092ad4ee06b17cc9916827d
BLAKE2b-256 checksum
How to use checksums
234fa4f1c9c5b0cd61262136ac08de92a8b977f883bb810629deaa59359171c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-macosx_11_0_x86_64.whl

Download URL stringzilla-5.3.1-cp310-cp310-macosx_11_0_x86_64.whl
Size 320.6 kB
Tags CPython 3.10 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
b813b8c90d47ed0e636193b7c1e2b8b2c116e99ea7999631279dfcc6162cf8e2
BLAKE2b-256 checksum
How to use checksums
e81b4e5e7bc4793aef03b51851920c7df5087d8a945815596024daeba0ebc343
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / stringzilla-5.3.1-cp310-cp310-macosx_11_0_arm64.whl

Download URL stringzilla-5.3.1-cp310-cp310-macosx_11_0_arm64.whl
Size 293.8 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
67b31c4f5fdd84953a28d8467e61e4cfb009b13178e0ba291d1cb939c6a90685
BLAKE2b-256 checksum
How to use checksums
d60297cf9b9d05181ad79b7a7bcc152da44e9e5619cf16ebf4087ae5a9c4579d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Security for stringzilla 5.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

5.3.1 This release

106 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page