Search String
Installation
You can install search-string from PyPI:
$ pip install search-string-overvaagning
The package is supported on CPython 3.10 to 3.15, including the free-threaded builds (3.14t, 3.15t). Since version 0.6.0 the matching engine is written in Rust and exposed to Python with PyO3. Pre-built wheels are published for Linux (x86_64, aarch64) and macOS (x86_64, arm64). Installing from the source distribution requires a Rust toolchain.
Development
You need uv and a Rust toolchain. All Python tools (ruff, pyright, pytest, prek) are pinned in uv.lock, and CI uses the same versions.
$ uv sync # create .venv, install the tools and build the extension
$ uv run pytest # Python tests, incl. differential tests against v0.5.3
$ uv run pyright # type checking
$ cargo test # Rust unit tests
$ uv run prek install # run ruff, pyright, cargo fmt and more on every commit
After changing Rust code, run uv sync --reinstall-package search-string-overvaagning (or uv run maturin develop --release) to rebuild the extension.
About
This package implements the search string object that is used across km24.dk for different types of surveillance.
It is used for searching a text. For something to be deemed a match, the text must match the first_str and if the second_str is not empty, the text must also match the second_str. If the not_str is not empty, the text must not match the not_str. A logical AND is used between the three conditions. The three strings can each be a collection of strings separated by semicolons wherein a match is deemed by logical OR. You can use '~' to make a word boundary. Finally, you can use !global at the end of a string to signal that that part should check globally.
Quick examples:
>>> ss = SearchString('example;hello', 'text', 'elephant', data=None)
>>> ss.match('This is an example text')
True
>>> ss.match('This text says hello')
True
>>> ss.match('This is just an example')
False
Usage
Creating Search Strings
Start by importing the SearchString class:
>>> from search_string import SearchString
Construct a new search string by supplying the first_str, second_str, not_str and any data that can be useful to refer back to later, such as an ID:
>>> ss = SearchString('first', '', '', data=2)
Optionally, you can also supply a third_str that works in the same was as first_str and not_str but has to be supplied as a keyword argument:
>>> ss = SearchString('first', '', '', data=2, third_str='third')
Matching text
If you just need to find out whether a given search string matches a text, you can use the method .match on a SearchString instance.
Often, what you want to do, is to match a collection of search strings across a list of text, e.g. sentences. You can do that the following way:
>>> from search_string import SearchString
>>> search_strings = [
... SearchString('kan', '', 'ritzau', data=1),
... SearchString('kan', '', 'ritzau!global', data=2)
... ]
>>> sentences = [
... 'Du kan skrive din tekst her.',
... 'Den kan bestå af flere sætninger.',
... 'Dig og Ritzau kan bestemme hvordan det skal være.',
... 'Nogle kan være lange, andre kan være korte.'
... ]
>>> res = SearchString.find_all(sentences, search_strings)
>>> res
[SearchString(kan, -, ritzau, data=1)]
For each of the matched search strings (in the above example, only one), you can extract the data and the matched text as follows:
>>> res[0].data
1
>>> res[0].matched_text
'Du kan skrive din tekst her. Den kan bestå af flere sætninger. (...) Nogle kan være lange, andre kan være korte.'
>>> res[0].matched_text_highligthed
'Du <b>kan</b> skrive din tekst her. Den <b>kan</b> bestå af flere sætninger. (...) Nogle <b>kan</b> være lange, andre <b>kan</b> være korte.'
Creating search strings that match everything
If you construct a completely empty search string, it will match everything (even the empty string), but the matched text will always be the empty string. This is to allow for "catch-all" search strings:
>>> ss = SearchString('', '', '', data=1)
>>> ss.match('')
True
>>> ss.match('Some random text')
True
>>> ss.matched_text
''
SearchStringCollection - Matching when you have many search strings
If you have a problem where you repeatedly will be matching new texts against the same collection of search strings, it is highly advised to use the SearchStringCollection which behind the scenes uses an Aho-Corasick automaton for efficient search when many search strings are present. There is some initial cost in building the automaton. Thus, it is recommended that you initialize the collection once and then continue to use it.
The most important method on SearchStringCollection is find_all, which takes a sentence (str) or list of sentences (list[str]) and returns the matched search strings, very similar to the familiar SearchString.find_all.
>>> from search_string import SearchString, SearchStringCollection
>>> search_strings = [
... SearchString('kan', '', 'ritzau', data=1),
... SearchString('kan', '', 'ritzau!global', data=2)
... ]
>>> sentences = ... # Same as before
>>> ss_collection = SearchStringCollection(search_strings)
>>> res = ss_collection.find_all()
>>> res
[SearchString(kan, -, ritzau, data=1)]
Importantly, SearchStringCollection relies on the data variable being set on the collection of search strings. If it is set to None or multiple search strings have the same value, a ValueError is raised.
Performance
The Rust engine compiles all parts of all search strings in a SearchStringCollection into a single Aho-Corasick automaton, so a text is scanned once regardless of how many search strings there are. Single SearchString objects compile their patterns lazily with the Rust regex crate. Large inputs are scanned without holding the GIL.
Benchmark against the previous mypyc-compiled version (0.5.3), on a synthetic corpus of 10,000 search strings, 1,000 articles (~3 KB each) and a ~300 KB document (about 100 pages). Apple M5 Pro, CPython 3.13. Reproduce with python benchmarks/build_mypyc_baseline.py && python benchmarks/bench.py. Both versions are checked to return identical matches.
| Scenario | mypyc 0.5.3 | Rust 0.6.0 | Speedup |
|---|---|---|---|
| create 10k SearchString objects | 2.0 ms | 1.1 ms | 2x |
| build collection (10k search strings) | 116.1 ms | 39.2 ms | 3x |
| collection.find_all: 1k articles (list of sentences) | 6.27 s | 55.4 ms | 113x |
| collection.find_all: 1k articles (one str each) | 340.6 ms | 32.6 ms | 10x |
| collection.find_all: 100-page doc (one str) | 31.8 ms | 2.7 ms | 12x |
| collection.find_all: 100-page doc (list of sentences) | 178.9 ms | 5.9 ms | 31x |
| collection.find_all_sliding_window: 100-page doc | 1.41 s | 62.0 ms | 23x |
| SearchString.find_all: 500 SS x 200 articles | 10.20 s | 126.3 ms | 81x |
| SearchString.match: 1 SS x ~1.7k sentences | 4.9 ms | 482 µs | 10x |
| SearchString.highlight: ~1.7k sentences | 7.2 ms | 1.4 ms | 5x |
| Memory (RSS increase) | mypyc 0.5.3 | Rust 0.6.0 |
|---|---|---|
| search string objects (10k) | 2.2 MB | 2.0 MB |
| collection index (10k) | 73.3 MB | 31.5 MB |
| after searching 100-page doc | 2.7 MB | 0.8 MB |
The collection memory is the peak while building it; once built, a collection of 10,000 search strings retains about 9 MB (vs. 73 MB before).
Thread safety
SearchString and SearchStringCollection can be shared between threads, also on free-threaded Python: concurrent searches, attribute changes and building collections never crash, deadlock or corrupt state, and a collection releases the GIL while scanning large inputs, so threads can search in parallel.
However, find_all, find_one, find_all_sliding_window and SearchString.match store the matched text on the SearchString objects themselves (matched_sentences, matched_text, ...). If two threads search with the same search strings at the same time, one thread can read the matched text of the other thread's search. The returned list of search strings is always correct.
For multi-threaded code, use SearchStringCollection.find_all_with_text (or find_all_sliding_window_with_text). It returns SearchStringMatch objects that carry the matched text themselves and leaves the search strings untouched, so one collection can be shared by all threads. It is as fast as find_all:
>>> results = ss_collection.find_all_with_text(sentences)
>>> [(m.data, m.matched_text) for m in results]
[(1, 'Du kan skrive din tekst her. Den kan bestå af flere sætninger. (...) Nogle kan være lange, andre kan være korte.')]
>>> results[0].search_string
SearchString('kan', '', 'ritzau', data=1)
>>> results[0].matched_text_highlighted
'Du <b>kan</b> skrive din tekst her. Den <b>kan</b> bestå af flere sætninger. (...) Nogle <b>kan</b> være lange, andre <b>kan</b> være korte.'
Searching many texts in parallel
To search a batch of texts, find_all_many returns one list of SearchStringMatch results per text (each text is a str or a list of sentences). With max_threads it searches the texts in parallel inside the extension, without holding the GIL, so it is faster even on regular Python and from a single Python thread. The default max_threads=1 is as fast as calling find_all_with_text in a loop; max_threads=None uses one thread per CPU core. Small batches automatically use fewer threads, so opting in never makes a call slower.
>>> results = ss_collection.find_all_many(list_of_articles, max_threads=None)
>>> for article, matches in zip(list_of_articles, results):
... print([m.data for m in matches])
With 10,000 search strings (Apple M5 Pro, CPython 3.13, regular GIL build):
| Batch | Loop of find_all_with_text |
max_threads=8 |
max_threads=None (18 cores) |
|---|---|---|---|
| 2,000 articles (lists of sentences) | 110 ms | 17 ms (6.5x) | 9.0 ms (12x) |
| 2,000 articles (one str each) | 59 ms | 8.9 ms (6.6x) | 4.8 ms (12x) |
| 16 x 100-page documents | 42 ms | 7.3 ms (5.8x) | 4.1 ms (10x) |
Changes in 0.6.0 (Rust rewrite)
The Python interface is unchanged except for the following:
SearchStringCollectionno longer takes atrieargument, and thetrieattribute and theTrieclass are gone. The collection is still picklable (it is rebuilt from its search strings when unpickled).- Two bugs in
SearchStringCollectionwere fixed, so that it now agrees withSearchString.match:- Search strings with uppercase letters (including
!GLOBAL) never matched in a collection; patterns are now lowercased like the text. - A
!globalpart that matched both globally and in a sentence was counted twice, which made e.g.SearchString('x!global', '', '')match the sentences withoutx.
- Search strings with uppercase letters (including
SearchStringCollection.find_allreturns the matches in collection order (followed by catch-all search strings) instead of an arbitrary order.- New:
SearchStringCollection.find_all_with_textandfind_all_sliding_window_with_text, which return the matched text inSearchStringMatchresult objects instead of storing it on the search strings (see Thread safety). - New:
SearchStringCollection.find_all_manysearches a batch of texts, optionally on several threads (see Searching many texts in parallel). matched_sentencesreturns a new list on each access: assign to it instead of mutating it in place.first_str_raw,second_str_raw,third_str_rawandnot_str_raware read-only.- Pickled search strings now also keep
match_extract_max_sentences. - Private helpers of the old implementation were removed (except
_escape_pattern,_raw_partsand_get_inner). - Regular expressions are evaluated by the Rust
regexcrate instead of Python'sre. They behave the same for normal text, but Unicode corner cases of~(word boundary) and case-insensitivity can differ (e.g. combining marks orß). - There is no pure-Python fallback any more.
- Python 3.9 is no longer supported.
Metadata
Release files for search-string-overvaagning 0.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| search_string_overvaagning-0.6.0.tar.gz | 79.7 kB | Without provenance | Details for search_string_overvaagning-0.6.0.tar.gz |
Built distributions (wheels)
Total release size: 26.9 MB
Release files / search_string_overvaagning-0.6.0.tar.gz
| Download URL | search_string_overvaagning-0.6.0.tar.gz |
|---|---|
| Size | 79.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
21783a9943b703ef059ced3906f82fa57b1bd33987a22c61cdda55510d727be9
|
|
BLAKE2b-256 checksum How to use checksums |
ab1c7274a10f898e5ca6ee9c6a5558bfe7a925a063dbb384a86fadc5d861f340
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 891.7 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
86065eee3654618a7ba488246fed3f4579bedaab3113c3f3cbf4f60b814c503c
|
|
BLAKE2b-256 checksum How to use checksums |
c1c635a0088bf2f7ee4869d1cbcc9211d9b044bab42bdf303f33d92b4c992a08
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp315-cp315t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | search_string_overvaagning-0.6.0-cp315-cp315t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 865.1 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
2c44829c24a86f3a7749ce6d06d75ca41f6cc4aec9accfce7cdca4a5cbaeccee
|
|
BLAKE2b-256 checksum How to use checksums |
0f2875900281b2d9f0d3c13ded42b94e1eb2a53ef0ed68ab3b976b17d77471c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp315-cp315t-macosx_11_0_arm64.whl
| Download URL | search_string_overvaagning-0.6.0-cp315-cp315t-macosx_11_0_arm64.whl |
|---|---|
| Size | 764.5 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8e342d9640d9663e6d2e89a849a88468044d49bbf0cf85d28e09cc909f4041c1
|
|
BLAKE2b-256 checksum How to use checksums |
d52b78d746cb48e94a0850d37683eccafefdecd469810257a5257fd8bf7a59e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp315-cp315t-macosx_10_12_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp315-cp315t-macosx_10_12_x86_64.whl |
|---|---|
| Size | 823.5 kB |
| Tags | CPython 3.15 CPython 3.15 free-threading macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
18a24482c1395f771f73ae3e8aa1e4380641ebb527a57349e153b187895fff23
|
|
BLAKE2b-256 checksum How to use checksums |
cc97d6b9f7b8c4b3754ed834efa617dd532c95603b817b6a6f4a5f4cba3fb706
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp315-cp315-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 895.3 kB |
| Tags | CPython 3.15 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
e533aca743085fba59d9b566b2257afd038253307c1aa47934f62a18a0cfb908
|
|
BLAKE2b-256 checksum How to use checksums |
19bf848fd7f4b5c7cd5ddc2d950bbd362a2e01beb69647dd42009ee0d7e820b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp315-cp315-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | search_string_overvaagning-0.6.0-cp315-cp315-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 868.2 kB |
| Tags | CPython 3.15 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
3abd2ad49af68c863b2a9e5df24f5efa5c716d1e6bc69e581da28e7b152c7a49
|
|
BLAKE2b-256 checksum How to use checksums |
1b5fccbcefecbfdc70b2e5fe80b61c15b12d131ea54f39b032aa93eec9888b77
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp315-cp315-macosx_11_0_arm64.whl
| Download URL | search_string_overvaagning-0.6.0-cp315-cp315-macosx_11_0_arm64.whl |
|---|---|
| Size | 767.2 kB |
| Tags | CPython 3.15 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8e68c4c2cffbfb1d121228b4d88cc82b001c4e5f759a62410be37a8438ff4db9
|
|
BLAKE2b-256 checksum How to use checksums |
547e629ede53255bc40fda164cd1145545c512becc2d446213edbe463c7ea264
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp315-cp315-macosx_10_12_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp315-cp315-macosx_10_12_x86_64.whl |
|---|---|
| Size | 826.6 kB |
| Tags | CPython 3.15 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
0379be1fe85dba5378a593eb0af41256664e956b3390f10e268fffc090b54a54
|
|
BLAKE2b-256 checksum How to use checksums |
8e2e0c604d4e1c574fc687a5153639b16380da7a508551990cef441e6f8ff248
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 891.7 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
89f05be0356741edb0caef075f610890cc5b5e4b2da96d3980ec2a5f34dc974d
|
|
BLAKE2b-256 checksum How to use checksums |
dc5a1a419e3009937d844157d74e5941bedfa0da53151df24301f6496f305b48
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | search_string_overvaagning-0.6.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 865.1 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
b23cfd94f11e243b8d02d67daf823654647f06687b526d632fc7ac542628a96f
|
|
BLAKE2b-256 checksum How to use checksums |
e844539b43d3f1fc27ca1245f44f6077e26378dfdea28ea5bdc617d80b61aff7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp314-cp314t-macosx_11_0_arm64.whl
| Download URL | search_string_overvaagning-0.6.0-cp314-cp314t-macosx_11_0_arm64.whl |
|---|---|
| Size | 764.3 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
2109136c0a5ffa0ed96f50dc50fd753386d074c1f0249d844bc7e3a590e8cb61
|
|
BLAKE2b-256 checksum How to use checksums |
7d84bb4a5d3e5a7e8fff86093625de1f5c5a3ce476228b4689cda8a3a1ca6bae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp314-cp314t-macosx_10_12_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp314-cp314t-macosx_10_12_x86_64.whl |
|---|---|
| Size | 823.6 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
e1ce4a2117f799d4109596d6ba287780de696ef6297a72de44bf1242040f1093
|
|
BLAKE2b-256 checksum How to use checksums |
bf97f73894cc56498d8ca2f2ce47762a1440c1573e54717a65631f7f92ca651d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 895.4 kB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
dbc81d2f0b66c86e993e44235df925facbc9d86ea17f70eca63d113ac341a40f
|
|
BLAKE2b-256 checksum How to use checksums |
19275ef5add3ef1e5582b62a87adbf4594ed096f9c5e109183d2f211e5e010c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | search_string_overvaagning-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 868.3 kB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
4a237676f21b0083e153b316fe61284914abc230d1cced04fd9a3e84c860eb96
|
|
BLAKE2b-256 checksum How to use checksums |
dc3955e7ee5279afb288fea03385055de09e30cc4f1d2b0ff335fce98ba5546b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | search_string_overvaagning-0.6.0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 767.2 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
9c904c1f367e93de94671de4465e33e82163516a7bc0fa620a49e2d987ad9c9a
|
|
BLAKE2b-256 checksum How to use checksums |
a8eb70b8675d89c8b80366290f8375bc7baf0bab7b0ac258b1e7ea149e0727bc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl |
|---|---|
| Size | 826.7 kB |
| Tags | CPython 3.14 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
e9585fb996a35d8ebfbe7855ec43ed7a5f5c949f3468c638f79e6ee8cc760c80
|
|
BLAKE2b-256 checksum How to use checksums |
79d2785f67964b4a9fca58fa5bce1bb8fb96b27369ce06edb1d303faea28f556
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 895.6 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
7508107a9cdeb8973b16addc5e7902105c20c4aa522c06a372e2b6fe01cd40c0
|
|
BLAKE2b-256 checksum How to use checksums |
41593718b86d7527de31e65644383e77520df2883d0bb3659ec7b4f92180d76a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | search_string_overvaagning-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 868.2 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
551947a60c2be11fdcf022a89189064309ff3eb32a32ca1b939913f6d0216be4
|
|
BLAKE2b-256 checksum How to use checksums |
678fc31872d0f45622cd4cc6a899d4891df25ddcd591c8f71bdf9d62c4581506
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | search_string_overvaagning-0.6.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 767.5 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a7e6279786be95b83e067281e2e83ac0a299f15ef067d57237d5809afca1f321
|
|
BLAKE2b-256 checksum How to use checksums |
33c7d017b3a81f20529e822f54f93eeaebc183eff8807b86f3422f54821e7bce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl |
|---|---|
| Size | 827.1 kB |
| Tags | CPython 3.13 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
004f1a48404013abb4c8992ca8abb1c27bc7ea768e8f84004745ec81b7a15e3a
|
|
BLAKE2b-256 checksum How to use checksums |
538293cde00f9dac9840d5a64659f94aa1ef745b8d53995fed90b93350c7ba37
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 895.2 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
cdb61361b3cb8ed131425ca8f94bc27aae6d12b87ce82027f2a0f324eeefafa2
|
|
BLAKE2b-256 checksum How to use checksums |
3017ea87e69ed8f9e23ebd6be9a9773002d0a0ce7d585a991b18fe355370b2ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | search_string_overvaagning-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 868.2 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
08edc41e2da42ee4de7079256861bdc712690bd1345d64dd96b0f752adf76ccc
|
|
BLAKE2b-256 checksum How to use checksums |
9e02d6fc94e26548a345edb65d1cbec559cf4f53f3832f514af55fe1fddfaec1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | search_string_overvaagning-0.6.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 767.5 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
90e1f7e2861b0abcd11f2c59698a5a1db7621e04aa09cbdb7ad456fb509c80cd
|
|
BLAKE2b-256 checksum How to use checksums |
da60dd775e34f303e1f48bf3d0f768ce088d4e936077e13b6b751b19b6041f80
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl |
|---|---|
| Size | 827.1 kB |
| Tags | CPython 3.12 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
6f2416a2be78781ef7eb405f5e0f976883ce79f4261282ced6f1f23ab934b37b
|
|
BLAKE2b-256 checksum How to use checksums |
32075256babf4f18dcc4ff1e3177e76b94c707f3fd2c75eedc3ff0c91fe64e51
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 892.2 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
488e56b8fe6d6f2ace22dccf874546fabdce91b86653e9a60712cdb8ea6e4218
|
|
BLAKE2b-256 checksum How to use checksums |
7672552a6909ec66084f69daf77c6b9bb506a5601b9d5218fb5c2bc8c21e584e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | search_string_overvaagning-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 866.0 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
f99ae83a25c74b1ea6e8317ea6a76b2d23d98e78febc2b38a24d29914e4eba50
|
|
BLAKE2b-256 checksum How to use checksums |
d0128baa0ecb39ad3d7756a349eb4537af2d26abe94e5998dab0226c16e2d06d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | search_string_overvaagning-0.6.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 769.3 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a01d99f420b073a9a1701846c7e10e15386359c379832846546c2b31d524ca16
|
|
BLAKE2b-256 checksum How to use checksums |
61ac94960f50f147869614486f589b6e431230c9417bc8d3d0d47d42f24eca2d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl |
|---|---|
| Size | 826.3 kB |
| Tags | CPython 3.11 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
044f2f9d903ff2c8255f7f67fd48ad97f601acf706037dda8f0fed3a8c87132e
|
|
BLAKE2b-256 checksum How to use checksums |
92819f2a6c790cd46ba212766373cff5ecb27bb0ed231a16f97be25f69260673
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 892.2 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
0c231372052781878d76531900a74141cc7e7098164efa7efe91ba52a1bebb84
|
|
BLAKE2b-256 checksum How to use checksums |
d0f1fc98e53eddc6af0b06b7e9ee56fb949fc3706eb167a4ef5e520965506f12
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | search_string_overvaagning-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 866.6 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
da9f287c7010d63d531ec8eed4e34aaba86b3d55fd484f7fc9142c9e3b9e0c92
|
|
BLAKE2b-256 checksum How to use checksums |
ea37c4fd66b23cfa72727a7051dccab6d12251c0e5087f06667ef7401ba9ad29
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | search_string_overvaagning-0.6.0-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 769.2 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
c29efc1c2880c7a57a817263eec57a09803272636bb7d96a2c6f8c9fdbeea389
|
|
BLAKE2b-256 checksum How to use checksums |
daa926023894561c7cb7b36630efed6121ee3e7ec114bc3c8d3f4750cf2b627c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / search_string_overvaagning-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl
| Download URL | search_string_overvaagning-0.6.0-cp310-cp310-macosx_10_12_x86_64.whl |
|---|---|
| Size | 826.2 kB |
| Tags | CPython 3.10 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
d4df628242a63ecfff115edc9ea87f6146e53ba033980c304c5a838258f672ad
|
|
BLAKE2b-256 checksum How to use checksums |
db146f9c932716ced81c22d215b192423957fab92abc988d10e1400749f18a08
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for search-string-overvaagning 0.6.0
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.