This release is a pre-release and may not be stable for production use.
Welcome to ransack
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 2.0.0a2
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-2.0.0a2.tar.gz | 38.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ransacklib-2.0.0a2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 61.3 kB
Release files / ransacklib-2.0.0a2.tar.gz
| Download URL | ransacklib-2.0.0a2.tar.gz |
|---|---|
| Size | 38.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
692a8fa7dd90db51661faf2418801e192b8ad38f05297f60f920242b701fc8b8
|
|
BLAKE2b-256 checksum How to use checksums |
d7a121bbd8bdacf807447f9c084e22ca611b16952144215d59a6c55ca4014b0a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.19
|
Release files / ransacklib-2.0.0a2-py3-none-any.whl
| Download URL | ransacklib-2.0.0a2-py3-none-any.whl |
|---|---|
| Size | 22.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6ae4a2b68eb51e47e16a3d92daa142b5ca3da191863e645e6cb123286d9712d3
|
|
BLAKE2b-256 checksum How to use checksums |
38207aeccff09bb3041b56f091a2d801ef08d3077d03c84c91f075726c001640
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.19
|