Skip to main content

The Forest Walker

Python modules for parsing JSON, TOML, YAML, and similar formats produce simple tree structures composed of numbers, strings, Booleans, arrays, and dictionaries. These structures are then parsed for the second time to produce more Pythonic data structures. This usually involves validation of some kind.

We firmly believe that parsing and validation should not be separate steps: structure of data should have a single source of truth (doing otherwise opens door to security issues). Also, existing formal descriptions of syntax (e.g., JSON schema) are too weak for many purposes and unwieldy for others.

Enters the forestwalker. A Python module that makes it easy to traverse trees, parse values while checking types, and report invalid data with their precise location in the tree.

License

The Forest Walker was written by Martin Mareš mj@ucw.cz. It can be freely used and distributed under the MIT License.

Metadata

Release files for forestwalker 0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for forestwalker 0.1
File Size Uploaded
forestwalker-0.1.tar.gz 6.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for forestwalker 0.1
File Interpreter ABI Platform
forestwalker-0.1-py3-none-any.whl Python 3 none any Details

Total release size: 12.5 kB

Release files / forestwalker-0.1.tar.gz

Download URL forestwalker-0.1.tar.gz
Size 6.9 kB
Tags Source
SHA-256 checksum
How to use checksums
07962a82dc27e8a233c5411edb232d58ad10f4c5b9474bfe74c7826fcbe4dd2c
BLAKE2b-256 checksum
How to use checksums
a4acdf81e6c3a291093bc2175dc93877694df7f3e198eacef9d22d5eec181964
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release files / forestwalker-0.1-py3-none-any.whl

Download URL forestwalker-0.1-py3-none-any.whl
Size 5.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6a574f368f981700804be698ff17aab87809f27b2f7ed0ae18603a9f3202a7e9
BLAKE2b-256 checksum
How to use checksums
dd386bfbd76623598d7d7f8ef1726d56d5efc3896e06918ab016082feb36ffd6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.1 This release

2 release files

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