ransack is a modern, extensible language for manipulation with structured data.
Structured data — like JSON, YAML, TOML and domain-specific formats such as IDEA — form the backbone of many modern applications. These formats appear in configuration files, security logs, telemetry systems, and beyond.
ransack was designed to meet the increasing need for a robust and expressive language to query, filter, and inspect structured data. Whether used in Python code, as part of a log analysis tool, or as a compiler frontend for other systems, ransack provides a flexible foundation.
Why ransack?
ransack is a new implementation and improvement over existing libraries like Pynspect, which was widely used in security monitoring systems like NEMEA and Mentat. Compared to older tools, ransack:
supports user-defined variables
enables multi-argument functions
is extensible and modular
supports multiple backends (e.g., Python evaluation, SQL translation)
offers a clean internal architecture for future enhancements
Key features
a simple and expressive syntax for filters and conditions
support for context-aware variables and data scoping
predefined functions
support for IPv4/IPv6, datetimes, string and list manipulation
safe and maintainable implementation using Lark for parsing
Metadata
Release files for ransacklib 1.0.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 | |
|---|---|---|---|
| ransacklib-1.0.0.tar.gz | 26.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ransacklib-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.1 kB
Release files / ransacklib-1.0.0.tar.gz
| Download URL | ransacklib-1.0.0.tar.gz |
|---|---|
| Size | 26.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
427ede4a90b520db881de3f9e181a275432ebfdfa3e4dac36c2bf2019bd7d8a9
|
|
BLAKE2b-256 checksum How to use checksums |
6028bf345d916e070db3692a0528511e2a463a76fbcfd2ac508d8d14d0d53d8c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.18
|
Release files / ransacklib-1.0.0-py3-none-any.whl
| Download URL | ransacklib-1.0.0-py3-none-any.whl |
|---|---|
| Size | 17.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
aeb511f0e96dd4b92360556f34bf76dbd65fa84741b4132bfdc7ee23849cb84b
|
|
BLAKE2b-256 checksum How to use checksums |
93e699053f7845df8f10fe655195a1d73430477c579dce82d56626789acda6d0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.18
|