Skip to main content

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)

Source distribution for ransacklib 1.0.0
File Size Uploaded
ransacklib-1.0.0.tar.gz 26.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ransacklib 1.0.0
File Interpreter ABI Platform
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
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page