A CPython extension for Vectorscan, an open source fork of Hyperscan, Intel's open source (prior to version 5.4), high-performance multiple regex matching library.
- β Binary manylinux-compatible wheels
- β Statically linked (no need to build Hyperscan/Vectorscan)
- β Chimera support
# πͺ Installing libhs is NOT required, because python-hyperscan is statically linked
pip install hyperscan
If you'd like to use Intel's Hyperscan rather than Vectorscan, or if you'd like to enable native CPU detection to build optimized non-FAT libraries (default off in Vectorscan), extending the manylinux-hyperscan Docker image used to build the binary wheels for this library should be fairly straightforward.
python-hyperscan
currently exposes most of the C API, with the
following caveats or exceptions:
- No stream compression support.
- No custom allocator support.
hs_expression_info
,hs_expression_ext_info
,hs_populate_platform
, andhs_serialized_database_info
not exposed yet.
See the documentation for more detailed build instructions.