Skip to main content

Search a string for multiple substrings at once

Project description

ahocorasick_rs: Quickly search for multiple substrings at once

ahocorasick_rs allows you to search for multiple substrings ("patterns") in a given string ("haystack") using variations of the Aho-Corasick algorithm.

In particular, it's implemented as a wrapper of the Rust aho-corasick library, and provides a faster alternative to the pyahocorasick library.

Found any problems or have any questions? File an issue on the GitHub project.

Quickstart

The ahocorasick_rs library allows you to search for multiple strings ("patterns") within a haystack, or alternatively search multiple bytes. For example, let's install the library:

$ pip install ahocorasick-rs

Searching strings

We can construct a AhoCorasick object:

>>> import ahocorasick_rs
>>> patterns = ["hello", "world", "fish"]
>>> haystack = "this is my first hello world. hello!"
>>> ac = ahocorasick_rs.AhoCorasick(patterns)

You can construct a AhoCorasick object from any iterable (including generators), not just lists:

>>> ac = ahocorasick_rs.AhoCorasick((p.lower() for p in patterns))

AhoCorasick.find_matches_as_indexes() returns a list of tuples, each tuple being:

  1. The index of the found pattern inside the list of patterns.
  2. The start index of the pattern inside the haystack.
  3. The end index of the pattern inside the haystack.
>>> ac.find_matches_as_indexes(haystack)
[(0, 17, 22), (1, 23, 28), (0, 30, 35)]
>>> patterns[0], patterns[1], patterns[0]
('hello', 'world', 'hello')
>>> haystack[17:22], haystack[23:28], haystack[30:35]
('hello', 'world', 'hello')

find_matches_as_strings() returns a list of found patterns:

>>> ac.find_matches_as_strings(haystack)
['hello', 'world', 'hello']

Searching bytes and other similar objects

You can also search bytes, bytearray, memoryview, and other objects supporting the Python buffer API.

>>> patterns = [b"hello", b"world"]
>>> ac = ahocorasick_rs.BytesAhoCorasick(patterns)
>>> haystack = b"hello world"
>>> ac.find_matches_as_indexes(b"hello world")
[(0, 0, 5), (1, 6, 11)]
>>> patterns[0], patterns[1]
(b'hello', b'world')
>>> haystack[0:5], haystack[6:11]
(b'hello', b'world')

The find_matches_as_strings() API is not supported by BytesAhoCorasick.

Choosing the matching algorithm

Match kind

There are three ways you can configure matching in cases where multiple patterns overlap, supported by both AhoCorasick and BytesAhoCorasick objects. For a more in-depth explanation, see the underlying Rust library's documentation of matching.

Assume we have this starting point:

>>> from ahocorasick_rs import AhoCorasick, MatchKind

Standard (the default)

This returns the pattern that matches first, semantically-speaking. This is the default matching pattern.

>>> ac AhoCorasick(["disco", "disc", "discontent"])
>>> ac.find_matches_as_strings("discontent")
['disc']
>>> ac = AhoCorasick(["b", "abcd"])
>>> ac.find_matches_as_strings("abcdef")
['b']

In this case disc will match before disco or discontent.

Similarly, b will match before abcd because it ends earlier in the haystack than abcd does:

>>> ac = AhoCorasick(["b", "abcd"])
>>> ac.find_matches_as_strings("abcdef")
['b']

LeftmostFirst

This returns the leftmost-in-the-haystack matching pattern that appears first in the list of given patterns. That means the order of patterns makes a difference:

>>> ac = AhoCorasick(["disco", "disc"], matchkind=MatchKind.LeftmostFirst)
>>> ac.find_matches_as_strings("discontent")
['disco']
>>> ac = AhoCorasick(["disc", "disco"], matchkind=MatchKind.LeftmostFirst)
['disc']

Here we see abcd matched first, because it starts before b:

>>> ac = AhoCorasick(["b", "abcd"], matchkind=MatchKind.LeftmostFirst)
>>> ac.find_matches_as_strings("abcdef")
['abcd']
LeftmostLongest

This returns the leftmost-in-the-haystack matching pattern that is longest:

>>> ac = AhoCorasick(["disco", "disc", "discontent"], matchkind=MatchKind.LeftmostLongest)
>>> ac.find_matches_as_strings("discontent")
['discontent']

Overlapping matches

You can get all overlapping matches, instead of just one of them, but only if you stick to the default matchkind, MatchKind.Standard. Again, this is supported by both AhoCorasick and BytesAhoCorasick.

>>> from ahocorasick_rs import AhoCorasick
>>> patterns = ["winter", "onte", "disco", "discontent"]
>>> ac = AhoCorasick(patterns)
>>> ac.find_matches_as_strings("discontent", overlapping=True)
['disco', 'onte', 'discontent']

Additional configuration: speed and memory usage tradeoffs

Algorithm implementations: trading construction speed, memory, and performance (AhoCorasick and BytesAhoCorasick)

You can choose the type of underlying automaton to use, with different performance tradeoffs. The short version: if you want maximum matching speed, and you don't have too many patterns, try the Implementation.DFA implementation and see if it helps.

The underlying Rust library supports four choices, which are exposed as follows:

  • None uses a heuristic to choose the "best" Aho-Corasick implementation for the given patterns, balancing construction time, memory usage, and matching speed. This is the default.
  • Implementation.NoncontiguousNFA: A noncontiguous NFA is the fastest to be built, has moderate memory usage and is typically the slowest to execute a search.
  • Implementation.ContiguousNFA: A contiguous NFA is a little slower to build than a noncontiguous NFA, has excellent memory usage and is typically a little slower than a DFA for a search.
  • Implementation.DFA: A DFA is very slow to build, uses exorbitant amounts of memory, but will typically execute searches the fastest.
>>> from ahocorasick_rs import AhoCorasick, Implementation
>>> ac = AhoCorasick(["disco", "disc"], implementation=Implementation.DFA)

Trading memory for speed (AhoCorasick only)

If you use find_matches_as_strings(), there are two ways strings can be constructed: from the haystack, or by caching the patterns on the object. The former takes more work, the latter uses more memory if the patterns would otherwise have been garbage-collected. You can control the behavior by using the store_patterns keyword argument to AhoCorasick().

  • AhoCorasick(..., store_patterns=None): The default. Use a heuristic (currently, whether the total of pattern string lengths is less than 4096 characters) to decide whether to store patterns or not.
  • AhoCorasick(..., store_patterns=True): Keep references to the patterns, potentially speeding up find_matches_as_strings() at the cost of using more memory. If this uses large amounts of memory this might actually slow things down due to pressure on the CPU memory cache, and/or the performance benefit might be overwhelmed by the algorithm's search time.
  • AhoCorasick(..., store_patterns=False): Don't keep references to the patterns, saving some memory but potentially slowing down find_matches_as_strings(), especially when there are only a small number of patterns and you are searching a small haystack.

Implementation details

  • Matching on strings releases the GIL, to enable concurrency. Matching on bytes does not currently release the GIL for memory-safety reasons, unless the haystack type is bytes.
  • Not all features from the underlying library are exposed; if you would like additional features, please file an issue or submit a PR.

Benchmarks

As with any benchmark, real-world results will differ based on your particular situation. If performance is important to your application, measure the alternatives yourself!

That being said, I've seen ahocorasick_rs run 1.5× to 7× as fast as pyahocorasick, depending on the options used. You can run the included benchmarks, if you want, to see some comparative results locally. Clone the repository, then:

pip install pytest-benchmark ahocorasick_rs pyahocorasick
pytest benchmarks/

Project details


Download files

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

Source Distribution

ahocorasick_rs-0.22.2.tar.gz (101.0 kB view details)

Uploaded Source

Built Distributions

ahocorasick_rs-0.22.2-cp313-none-win_amd64.whl (282.6 kB view details)

Uploaded CPython 3.13 Windows x86-64

ahocorasick_rs-0.22.2-cp313-cp313-win_amd64.whl (282.6 kB view details)

Uploaded CPython 3.13 Windows x86-64

ahocorasick_rs-0.22.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (414.0 kB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.22.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (370.9 kB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.22.2-cp313-cp313-macosx_10_12_x86_64.whl (388.4 kB view details)

Uploaded CPython 3.13 macOS 10.12+ x86-64

ahocorasick_rs-0.22.2-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (720.3 kB view details)

Uploaded CPython 3.13 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64

ahocorasick_rs-0.22.2-cp312-none-win_amd64.whl (282.9 kB view details)

Uploaded CPython 3.12 Windows x86-64

ahocorasick_rs-0.22.2-cp312-cp312-win_amd64.whl (282.9 kB view details)

Uploaded CPython 3.12 Windows x86-64

ahocorasick_rs-0.22.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (414.7 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.22.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (371.5 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.22.2-cp312-cp312-macosx_10_12_x86_64.whl (389.4 kB view details)

Uploaded CPython 3.12 macOS 10.12+ x86-64

ahocorasick_rs-0.22.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (722.1 kB view details)

Uploaded CPython 3.12 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64

ahocorasick_rs-0.22.2-cp311-none-win_amd64.whl (281.0 kB view details)

Uploaded CPython 3.11 Windows x86-64

ahocorasick_rs-0.22.2-cp311-cp311-win_amd64.whl (281.0 kB view details)

Uploaded CPython 3.11 Windows x86-64

ahocorasick_rs-0.22.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (414.4 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.22.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (371.5 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.22.2-cp311-cp311-macosx_10_12_x86_64.whl (391.3 kB view details)

Uploaded CPython 3.11 macOS 10.12+ x86-64

ahocorasick_rs-0.22.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (727.6 kB view details)

Uploaded CPython 3.11 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64

ahocorasick_rs-0.22.2-cp310-none-win_amd64.whl (280.9 kB view details)

Uploaded CPython 3.10 Windows x86-64

ahocorasick_rs-0.22.2-cp310-cp310-win_amd64.whl (280.9 kB view details)

Uploaded CPython 3.10 Windows x86-64

ahocorasick_rs-0.22.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (414.6 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.22.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (371.6 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.22.2-cp310-cp310-macosx_10_12_x86_64.whl (391.3 kB view details)

Uploaded CPython 3.10 macOS 10.12+ x86-64

ahocorasick_rs-0.22.2-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (727.7 kB view details)

Uploaded CPython 3.10 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64

ahocorasick_rs-0.22.2-cp39-none-win_amd64.whl (280.9 kB view details)

Uploaded CPython 3.9 Windows x86-64

ahocorasick_rs-0.22.2-cp39-cp39-win_amd64.whl (280.9 kB view details)

Uploaded CPython 3.9 Windows x86-64

ahocorasick_rs-0.22.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (414.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.22.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (371.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.22.2-cp39-cp39-macosx_10_12_x86_64.whl (391.3 kB view details)

Uploaded CPython 3.9 macOS 10.12+ x86-64

ahocorasick_rs-0.22.2-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (727.7 kB view details)

Uploaded CPython 3.9 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64

File details

Details for the file ahocorasick_rs-0.22.2.tar.gz.

File metadata

  • Download URL: ahocorasick_rs-0.22.2.tar.gz
  • Upload date:
  • Size: 101.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for ahocorasick_rs-0.22.2.tar.gz
Algorithm Hash digest
SHA256 87f27a6422dbf94ec0f9fe84ac0188d4a66b5c7b2f5f6deb165f0c5e3db9769c
MD5 e6662a2dda4e06b9a66ed27455ad77a6
BLAKE2b-256 a0deab3edb66516044f8a7778ffd4acffab2c7f8974742b9fcf62153846f21ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2.tar.gz:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp313-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp313-none-win_amd64.whl
Algorithm Hash digest
SHA256 53b3b99774a6b1ac1e306da3d9ae986c50582a795dd7372f7747e99615482757
MD5 404fb5b26a6e5c731a38a637a9819add
BLAKE2b-256 67c11a9bfd9c9284d9eaa050cf031f600e02ba46554fc676c715f9ca1b2ca890

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp313-none-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 711f9d1d1e3c964b2aec5fb88cc4184957758ea2f8c133d890a1f9bc6d360024
MD5 c917dfb00a75a038a62df6ba9624d745
BLAKE2b-256 5ba8f89a9579ad46fd867c7b7fbcc4f428437008edc9118643ae48104262628d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp313-cp313-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a805375457fb36af7fbadbb3d503f8d6373d74a0af78d067564eb29b95e6e0ce
MD5 1dacce0b13c55e2bbe79136a26e45e5b
BLAKE2b-256 d4712f78f88f5b6192ca0b5a6b53eb33277ae0cdd6dcb764df36f603f9f6c21a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 15ec83efcdac05455e59bfb57909d65cdfa834c44af953104fdfca79538e0e8d
MD5 02856ddaab131fbab95c97130c06622d
BLAKE2b-256 289338df42a04bd04af3b5972e5dcbd8627cf896d837fcba70969c5cf31bf753

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3bddd6d699a19d3a47f422c65d9e274b95c8e08da6450251d1b311bb109b9359
MD5 69286af4ed73b314fc1eb291b80ffa0a
BLAKE2b-256 afb1ec25f9d98375260a90363253bac4c82c0121a2818dec3a3063bd0d4bd689

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 6a4f9a0df477e6d02b8191a8c9da9582b2f73fe091d940bcac76a85993f5ddf4
MD5 4f6e4cb8dd7dc4c1e4bbd2b0dbc7da01
BLAKE2b-256 121d7b7db58051e79bc38cc88e3cb48b9cc6b24fd90e5dd0c7318fb06c7be24f

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp312-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp312-none-win_amd64.whl
Algorithm Hash digest
SHA256 15fa2c214ed2d0aebae2e9a8dfb562c4ffff13737833c395b849812ac49d2fc0
MD5 4225d7f8c7450b54725285437f20b024
BLAKE2b-256 75321d9d87e1bece8735f58b2d63ddc3a5c9fc01548eaf69e4f2cec76c9274f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp312-none-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2d1e56949a1c0f8f0012347e366ef4c911a3f40d91fa5a3b04cb0041609e11dd
MD5 04ede191a5c104ac6de393d9600eba78
BLAKE2b-256 3ec59583eedf94240718c6b5cfd0315a777d2cf7850d91bb1aee1584961f0c5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp312-cp312-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4bfff7aabcbd67dde053dc32c537ff69cd208caf5eabec514bc423693e46d54f
MD5 705d44ef834e2547ac800d008846f0e2
BLAKE2b-256 852f4024ac92a3bf817e5b877d68e01cba1398541de4d9a42b3441598fa93939

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b0c7b452e499b2b6f3e749bed34c72e12c6ba9256d9af2410a1744f1799dd763
MD5 e5912b5b23f254acfbb70bbe8342f50b
BLAKE2b-256 6957dcb0b19d5078e0351837e75b456630f86a3d8ab379877c72b1dff5b5cd70

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a597216caeb8d19b965d7c8c17e417b99c3b95d8c762a9c1065dce1eef562a69
MD5 a949855939bafde533ff755686909a23
BLAKE2b-256 4715fd72bf185fad20a55663c14af7e99477c24a64387d69f8a997f08e96ba06

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 b5d404ceec819d983297816917fec12cca61f6ce825496adec1f701fa14ba0c8
MD5 a016a0b0465a2e91d0298746f21a4d49
BLAKE2b-256 9cac0ce34ae2b35aaf73153e1f5874dd47c9bacd9121638d07b292e897fbedc1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp311-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp311-none-win_amd64.whl
Algorithm Hash digest
SHA256 eb2f7ec5ada9bbf3fad4e68e7cb0706bb62414812fbebc6482e836c61841a7fb
MD5 f0536c8bdbdf0d551d76f57dd3bd8ea7
BLAKE2b-256 24721f827d405f6240e93d5ea1c2f7b1b77f6b23efefa193e9abcd0497415d90

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp311-none-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 25eb0d254c8c1f18650f06518fe06d4391cb5e72c36c1e0ae66317a23701dda3
MD5 bf21943cf21ffdf5fe65ba13450027df
BLAKE2b-256 a7dc4054304c1b8434d9dd3f514ee84899bff274482846e4b95edaf8da0eeb9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp311-cp311-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a14c32509ab7538f7c3101c75f72cdc0aeae4daf52ec8cb50475fdbe0b8d6034
MD5 44e5566fdc454c380960bf223f0ff648
BLAKE2b-256 79505cc7cbfd0ea2fd83377349d9ce12b942736772de267aec990fa074447452

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 61b46e1db2092f4814ebeb5898d68dab38a5948a118d60e9c76b5a02c0ec090f
MD5 b98dd8a08fb949bf97ace8c4438fc7b2
BLAKE2b-256 02da02431d549ac5daff8241a478e96e477087b6eccbec2d63f01a63d46d3535

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 38512ddef71f442542681d2131ff17f23f7f764126ced74a6a5a060c4d0a7319
MD5 2a4dbc2978c7ced260e766308cf46a53
BLAKE2b-256 d006e24a2912234b8387fdc1518e0ca7456066ad11ab4d0ee4d93f46d53ffb2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 908387241a8e551536b6d4b90e4eebb57f61e922500eb5dbdbc3a0eb818faf1c
MD5 70f38ff0b89434f02e9f95053ffe78b0
BLAKE2b-256 a045b462bad1efa3f21b26cd07ddbcece6da3ae690036f634574354d61e691ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp311-cp311-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp310-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 8a7718970ae5a280c74fd28e7ea8a56b95d3f74f46762747d79b72552682ec96
MD5 a86ec4cdd976be08477cb629600ab58d
BLAKE2b-256 c8da69de99f686324d51f8f6a67fe51b464e6f2b9c1cadf50b5f138571a09e04

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp310-none-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 8c665b62bcd3851eb010c0560e53fce719d539ffd8ae5c4a9805a9bffbfc2387
MD5 0427b88b10ba51d832bc3c84e17cc8df
BLAKE2b-256 b79f00dd420343ed2afc183a9774ee70e60abe1b1e5b8c27369deacee6042ad4

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp310-cp310-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e08e67c2676051ee8a7ccb392dcac69c1431961b057060c31e1448bee33e5c29
MD5 bc54f64ec7c15189bd0e800526b9dbf2
BLAKE2b-256 47a9e8e47f9fc2d41de8c6db8952f7898327a3b119e7fdd521aefaaa42d20c4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cae97a8e83c5c44ef462b7d5b2352788e1a58d2a01c5e9ca8941e019262ae358
MD5 538e2db2033a29bae3c50e2327c0d3f5
BLAKE2b-256 0a1e72244cc00b10a89d6a935e3b7dc104d3ca4bda374820ab2b7ae3a47f5ff1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4196554d93d32896f47006cecfc9dc7b997ed209f4c99cbca541246a3aa92d18
MD5 89e4fd8079bff9e8facccc9c00fa9aee
BLAKE2b-256 aedf71966e78c88da103e3dbf9960aa868793a6798d742d9fb562604dffb8591

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 c5a55a11b4aa277ac32c44e34c19facb0a5deae105f8b79fa650cea77f08b3c7
MD5 7bd1fceac085c7a89bae2656fe16fd4f
BLAKE2b-256 1ccab51218a75219b1b20438272ab13c3a3ec8e664a5475a4773c0d0dc18ede1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp310-cp310-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp39-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp39-none-win_amd64.whl
Algorithm Hash digest
SHA256 ef58ffc1a09a42bfb931a0417fdae617824cd4331d7f33de91cf507e6f747ef3
MD5 b723ca271a1f19ffed214ef6db50b726
BLAKE2b-256 9f8839060a5333f8f7ce9e986413172c9187ec5637c05189bcb9aa1ff3cda0af

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp39-none-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 2a834810493dacd24157b877afe989065a3e8b586fdffa970ec8d8ce4d8a8254
MD5 33a0763d93fc1829d645e47249ef03db
BLAKE2b-256 bc724e1a8733e88c79644481ab3041291ea2365b30dccb5fce6023a46a8ab22f

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp39-cp39-win_amd64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 098ac8f9cd93da632ebddb5125838921350104a5ef85ec21cece22adcd821e21
MD5 c7642a731c769e3fb97a02013c9b20b3
BLAKE2b-256 3a5e235bef1957da7c3ae7181f96be72f701f122bffdd01fe844f8ccdd1c68f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c64edb5e3cf579edc8f1bf733363aaa1886462c69e39c18779a33014d53b6b11
MD5 f244fbd0753754f68f2972c0f08817b7
BLAKE2b-256 a735a9df7d77d3539042d22f2c7f84660ad7de9748e27ee6c86ab446c9f5b405

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 020792722cc2f411ccce5bc7f39a7939806a8ca79ce34c032eedfba6fe5a71c9
MD5 e074b97d4a3c03f772bd715b61e60144
BLAKE2b-256 31306b7c20b9823acfa3ded6c0fc744d3619cff7287b16dc9d97825f6dae1ba5

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp39-cp39-macosx_10_12_x86_64.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

File details

Details for the file ahocorasick_rs-0.22.2-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.22.2-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 39b2507c3b02d97a0011d7962fd0733d1c4eb92f3f2da6579186fb9821850bfe
MD5 633367dd8064862cba49229e7dc80f7c
BLAKE2b-256 8ed6c1e2a74bacb7d1091665de40ca9ed07bd333fa2194ce85f0cfd5809f46a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for ahocorasick_rs-0.22.2-cp39-cp39-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: main.yml on G-Research/ahocorasick_rs

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

Supported by

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