Skip to main content

csonpath

That's not my path, that's not your path, but csonpath.

Project Sandbox

csonpath is a partial JSONPath implementation in C. It is backend-agnostic: the same core engine can query, update, and remove data from any value representation that supports array, object, and scalar semantics—not just JSON.

Out of the box it ships with C backends for json-c and yyjson, plus language bindings for Python and Rust.


🚀 Features

JSONPath Syntax

Feature Example Description
Dot notation $.a.b Access nested object fields
Bracket notation $['a']['b'] Alternative object/array access
Array index $.array[0] Access by zero-based index
Wildcard [*] $.array[*].field Iterate all array elements
Recursive descent .. $..name Search recursively for a key
Recursive descent wildcard ..* $..* Return all descendants
Union , (inside brackets) $['a','b'], $.array[0,1], $.items[?n==1, ?n==2] Match all listed selectors at once
OR fallback | $.a | $.b Try the left path first; fall back to the right one if it does not match. Only the first successful path is used.
Filters $.items[?price > 10] Filter array elements
Regex filters $.items[?name =~ "foo"] POSIX regex-based filtering
Multiple filters (&) $.items[?a=1 & b=2] Combine conditions
Subpath expressions $.obj[$.key] Use JSON values as dynamic path keys
@ current object $.items[?@.price > 10] Reference the current element in filters
Type selectors $..["@odata.id"]@string(), $.*@integer() Filter matches by JSON type (string, integer, null)

Operations

  • Find First — retrieve the first match.
  • Find All — retrieve all matches (returns an array).
  • Update or Create — modify existing values or create missing ones.
  • Remove — delete matching elements.
  • Callback — execute a custom callback on each match.
  • Update or Create Callback — traverse the path, creating missing intermediate objects and arrays, then invoke the callback on each leaf node.


📄 Table of Contents


📦 Installation

csonpath is a C library at its core. Pick the instructions for the language you want to use it from.

C (json-c)

Prerequisites: C compiler (gcc, clang, or tcc), json-c.

Just include the header in your project. There is no separate install step required:

#include "csonpath_json-c.h"

Make sure to link against json-c when compiling:

gcc myapp.c -o myapp $(pkg-config --cflags --libs json-c)

C (yyjson)

Prerequisites: C compiler (gcc, clang, or tcc), yyjson.

#include "csonpath_yyjson.h"

Link against yyjson when compiling:

gcc myapp.c -o myapp $(pkg-config --cflags --libs yyjson)

Python

Prerequisites: Python 3.x.

Install from PyPI:

pip install csonpath

To install from source (development):

pip install .
# or
make pip-dev

Rust

Prerequisites: Rust toolchain.

The Rust crate is located in rust/. Build and test it with:

cd rust
cargo build
cargo test

To depend on it from another Rust project:

[dependencies]
csonpath = { path = "rust" }

🛠️ Usage

C (json-c)

#include "csonpath_json-c.h"

static void my_cb(json_object *parent, struct csonpath_child_info *info,
                  json_object *current, void *ud)
{
    json_object_set_string(current, "modified");
}

int main(void)
{
    struct json_object *jobj = json_tokener_parse(json_str);
    struct csonpath *p = csonpath_new("$.a");

    /* Find First: return the first match, or NULL */
    struct json_object *ret = csonpath_find_first(p, jobj);

    /* Find All: return a NEW json_object array. Caller must free it. */
    ret = csonpath_find_all(p, jobj);
    json_object_put(ret);

    /* Remove: delete matching keys (or set array slots to null). Returns count. */
    int removed = csonpath_remove(p, jobj);

    /* Update or Create: replace matches, or create the full path if missing. */
    csonpath_update_or_create(p, jobj, json_object_new_string("new_value"));

    /* Callback: call a user function for every match. */
    csonpath_callback(p, jobj, my_cb, NULL);

    /* Update or Create Callback: like callback, but creates missing parents first,
       then invokes the callback on every leaf (existing or newly created). */
    csonpath_update_or_create_callback(p, jobj, my_cb, NULL);

    csonpath_destroy(p);
    json_object_put(jobj);
    return 0;
}

Python

import csonpath

data = {"a": "value", "array": [1, 2, 3]}
p = csonpath.CsonPath("$.a")

# Find First / Find All
p.find_first(data)   # -> "value"
p.find_all(data)     # -> ["value"]

# Remove: returns number of removed items
p.set_path("$.array[*]")
p.remove(data)

# Update or Create: builds missing objects/arrays automatically
p.set_path("$.x.y.z")
p.update_or_create(data, [])
# data is now {"a": "value", "array": [1, 2, 3], "x": {"y": {"z": []}}}

# Callback
p.set_path("$.a")
p.callback(data, lambda parent, idx, cur, _: parent.__setitem__(idx, cur.upper()))

# Update or Create Callback: creates parents, then calls cb on each leaf
p.set_path("$[*].a")
p.update_or_create_callback(dst, my_sync_fn, userdata)

📘 C API Reference

The reference below uses the json-c backend as an example (struct json_object *). All backends expose the same functions with their own value type.

struct csonpath *csonpath_new(const char *path);

Create and initialize a new csonpath object.

int csonpath_set_path(struct csonpath *p, const char *path);

Change the path of an existing object.

int csonpath_compile(struct csonpath *p);

Compile the path expression. This is optional—paths are compiled automatically on first use—but explicit compilation can help catch syntax errors earlier.

void csonpath_print_instruction(struct csonpath *p);

Print the compiled bytecode instructions (useful for debugging).

struct json_object *csonpath_find_first(struct csonpath *p, struct json_object *json);

Return the first matching value, or NULL if none is found.

struct json_object *csonpath_find_all(struct csonpath *p, struct json_object *json);

Return a new json_object array containing all matches. Must be freed with json_object_put().

int csonpath_remove(struct csonpath *p, struct json_object *json);

Remove all matching elements. Returns the number of elements removed.

int csonpath_update_or_create(struct csonpath *p, struct json_object *json, struct json_object *new_val);

Replace matching values with new_val, or create the path if it does not exist.

int csonpath_callback(struct csonpath *p, struct json_object *json,
                      json_c_callback callback, void *userdata);

Invoke callback for every match.

int csonpath_update_or_create_callback(struct csonpath *p, struct json_object *json,
                                       json_c_callback callback, void *userdata);

Like callback, but traverses the path while updating/creating missing intermediate objects.

void csonpath_destroy(struct csonpath *p);

Free the csonpath object.


📗 Python API Reference

  • CsonPath(path, return_empty_array=False, jq_like=False) — Create a new csonpath object. Optional flags: return_empty_array returns [] instead of None when find_all() finds nothing; jq_like allows jq-style paths without a leading $.
  • set_path(path) — Change the path expression.
  • find_first(json) — Return the first match, or None.
  • find_all(json) — Return a list of all matches, or None (or [] if configured).
  • remove(json) — Remove all matches. Returns the number of removed items.
  • update_or_create(json, value) — Replace matches with value, or create the path.
  • callback(json, callback, callback_data=None) — Call callback(parent, idx, current, callback_data) for every match.
  • update_or_create_callback(json, callback, callback_data=None) — Same as callback, but creates missing parent objects along the path.

🖥️ CLI

A standalone C CLI is available in cli/csonpath_cli.c. It links directly against json-c and the csonpath C core, so it works without Python.

make csonpath          # build ./csonpath
make tests-cli         # run shell tests

It reads JSON from stdin, a file (-f), or a string (-s) and exposes the library operations through action flags.

# Get the first match (default)
echo '{"a": "value", "array": [1, 2, 3]}' | ./csonpath '$.a'
# => "value"

# Find all matches
echo '{"items": [{"price": 5}, {"price": 15}]}' | ./csonpath -a '$.items[?price > 10]'
# => [{"price":15}]

# One match per line
echo '{"array": [1, 2, 3]}' | ./csonpath -a -o lines '$.array[*]'
# => 1
# => 2
# => 3

# Set or create a value
echo '{"a": 1}' | ./csonpath --set '42' '$.x.y.z'
# => {"a":1,"x":{"y":{"z":42}}}

# Or with a positional value
echo '{"a": 1}' | ./csonpath '$.x.y.z' '42'

# Remove matches
echo '{"a": 1, "b": 2}' | ./csonpath -d '$.b'
# => {"a":1}

# Edit a file in place
./csonpath -f data.json -p -i --set '"2.0"' '$.version'

Options

Option Description
-a, --all Return all matches instead of the first one.
-d, --delete Remove matches and print the modified JSON.
--set VALUE Set PATH to VALUE (JSON).
VALUE (positional) Alternative to --set.
-r, --raw Treat the value as a raw string.
-i, --in-place Edit FILE in place (requires --file).
--strict Exit with an error if --delete removes nothing.
-f FILE, --file FILE Read JSON from FILE instead of stdin.
-s JSON, --string JSON Read JSON from a string.
-j, --jq-like Allow jq-style paths without a leading $.
-p, --pretty Pretty-print JSON output.
-o {json,pretty,raw,lines} Output format (default: json).
-e, --empty-array Return [] instead of nothing when -a matches nothing.

Exit codes

Code Meaning
0 Success.
1 No match found, or --strict delete found nothing.
EINVAL Usage error, JSON parse error, JSONPath compilation error, or invalid JSON value.
errno I/O error (e.g. ENOENT, EACCES).

🧩 Using Multiple Backends

You can include more than one csonpath backend in the same translation unit, provided you prefix all but one of them to avoid symbol collisions. Define CSONPATH_USE_PREFIX before a backend header to prefix its API with the backend name.

For example, to use both json-c and the immutable yyjson backend in the same file:

#define CSONPATH_USE_PREFIX
#include "csonpath_json-c.h"

#undef CSONPATH_USE_PREFIX
#include "csonpath_yyjson_const.h"

To use both yyjson backends (immutable and mutable) together, include the aggregator header:

#include "csonpath_yyjson.h"

When using the mutable yyjson backend, assign the document pointer to backend_ctx before mutable operations:

struct csonpath *mp = yyjson_mut_csonpath_new("$.a");
mp->backend_ctx = mdoc;
yyjson_mut_csonpath_update_or_create(mp, mroot, new_val);

🔌 Custom Backends

csonpath is designed to be backend-agnostic. The C core manipulates opaque value pointers through a small set of macros, so it can work with any data structure that supports array, object, and scalar semantics.

A backend is an adapter that implements those macros for a concrete value representation. To create a custom backend, define the required macros and types in a header file (similar to csonpath_json-c.h or csonpath_yyjson.h), then include your backend header before csonpath.h.

Existing backend adapters:

  • csonpath_json-c.h — json-c values
  • csonpath_yyjson.h — yyjson values
  • csonpath_python.c — Python C API values (used by the Python bindings)
  • rust/csonpath_rust_backend.h — Rust serde_json::Value (used by the Rust crate)

🧪 Running Tests

C Tests

make tests-c

Rust Tests

cd rust
cargo test

Python Tests

make tests-py

All Tests

make tests

📁 Directory Structure

File / Directory Description
csonpath.h, csonpath_do.h Core implementation (header-only style)
csonpath_json-c.h json-c backend
csonpath_yyjson.h yyjson backend
csonpath_python.c Python C extension backend
rust/ Rust crate and its C backend adapter
csonpath_my_fuzzing.h Fuzzer helpers (C)
tests/ C and Python test suites
bench/ Performance benchmarks

🤝 Contributing

We welcome contributions!

Please read our Contributing Guidelines and Code of Conduct before submitting a pull request.

Feel free to open issues or pull requests!


📜 License

BSD 3-Clause. See LICENSE.

Metadata

Release files for csonpath 0.19.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 csonpath 0.19.0
File Size Uploaded
csonpath-0.19.0.tar.gz 89.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for csonpath 0.19.0
File
csonpath-0.19.0-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
csonpath-0.19.0-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details
csonpath-0.19.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
csonpath-0.19.0-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
csonpath-0.19.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
csonpath-0.19.0-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
csonpath-0.19.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details
csonpath-0.19.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
csonpath-0.19.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
csonpath-0.19.0-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
csonpath-0.19.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details
csonpath-0.19.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
csonpath-0.19.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
csonpath-0.19.0-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
csonpath-0.19.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
csonpath-0.19.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
csonpath-0.19.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
csonpath-0.19.0-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
csonpath-0.19.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
csonpath-0.19.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
csonpath-0.19.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
csonpath-0.19.0-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
csonpath-0.19.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
csonpath-0.19.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
csonpath-0.19.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
csonpath-0.19.0-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details
csonpath-0.19.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
csonpath-0.19.0-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details

Total release size: 5.0 MB

Release files / csonpath-0.19.0.tar.gz

Download URL csonpath-0.19.0.tar.gz
Size 89.8 kB
Tags Source
SHA-256 checksum
How to use checksums
15bc101f92a53aee6f021a11c45985c4cefaf28174161ea2c4ec2c029e21c084
BLAKE2b-256 checksum
How to use checksums
7e15f26bf9b927925698f3edff24f984f2f6312af497a781d80148f669310d2d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp314-cp314t-win_amd64.whl

Download URL csonpath-0.19.0-cp314-cp314t-win_amd64.whl
Size 68.4 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
b33c4dd9edbd16bb27bb2c795a5e2e8538f4b21e681023b5f3802a7d0efe89c9
BLAKE2b-256 checksum
How to use checksums
fa05cd7fe40d0e67541193d72882d9e43387b267ecb02e577ed517f59d3c6817
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL csonpath-0.19.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 321.9 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
aa7dd3f70a359b482775ccf573af74a88768c5b6d228cf2214bf053f910ebad0
BLAKE2b-256 checksum
How to use checksums
4bbfa9d721f5f2ff963d53126ed97b4f9cd83d9309276cd3a8c77485ed1bc8e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL csonpath-0.19.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 324.5 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
1dacffda106a0ba7b4bca2a60191c285b98a2f5129ed64d337cd4d2238077b66
BLAKE2b-256 checksum
How to use checksums
25ccafad0baec8f9f63474ed2b421ed84e033e8c1341d1ecaa075a7774f9dea5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp314-cp314t-macosx_11_0_arm64.whl

Download URL csonpath-0.19.0-cp314-cp314t-macosx_11_0_arm64.whl
Size 51.6 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bb6592cd330d3f354726c4f91a5502062b00da95abd439a850a783f15fbfc7f1
BLAKE2b-256 checksum
How to use checksums
f29d44a5aeaf1cdf586b1b919985d910ebb39094cbbcafd23b928aac85b289f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp314-cp314-win_amd64.whl

Download URL csonpath-0.19.0-cp314-cp314-win_amd64.whl
Size 67.2 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
68ab38e3f2e6cb8d7a4ff2c38af5edb748fca6a4ae84cf85cbe905850d16eb0e
BLAKE2b-256 checksum
How to use checksums
ae72405ca567f4a4eb43fce34115474e2a58415f49d82270c56018e2e3ea4828
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL csonpath-0.19.0-cp314-cp314-musllinux_1_2_x86_64.whl
Size 297.8 kB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
abe6e2e6d066a36026d44b69056628573eac0c91d41958c913da61c29c95ab39
BLAKE2b-256 checksum
How to use checksums
ab5a3a5ff60919e540a5758bfa4d9cbf679ca95f755e9561a8600b70428c6fbb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL csonpath-0.19.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 295.8 kB
Tags CPython 3.14 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
f2209afca68a52e34834b52a44db77a9156c909ee62648137fea7bb1346e3ed0
BLAKE2b-256 checksum
How to use checksums
ac232c24e450bb0521cf88d67ead9f1d89165ef5f2167c603c32bfd96158213b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL csonpath-0.19.0-cp314-cp314-macosx_11_0_arm64.whl
Size 50.6 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9ef28563a263c4bd3800a291036543be68b5d7d7ac2943239d9ab693ed98bb81
BLAKE2b-256 checksum
How to use checksums
10ff6a32a2ccd2f57dbfea7c2c6aa1d80f3480c33e8b546f544bddc3ca0a7bf6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp313-cp313-win_amd64.whl

Download URL csonpath-0.19.0-cp313-cp313-win_amd64.whl
Size 65.6 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
17a2921ef692819df9e2f2ed35b6838f5a59b243f632cf13e9f0894e9b0d17e8
BLAKE2b-256 checksum
How to use checksums
3f46f22bad43da203c6b66fa0fe9208cac8adce44d856a9de11d9b54917734a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL csonpath-0.19.0-cp313-cp313-musllinux_1_2_x86_64.whl
Size 298.0 kB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
46200645c3b4e23ea0f5f7f96c04cafdcc2004b817f03dbf017d5c9c851d5ce8
BLAKE2b-256 checksum
How to use checksums
1634679baebdfc67066c8b35b78c03590e1fa962e3c6cdc824f243b814a34a82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL csonpath-0.19.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 296.0 kB
Tags CPython 3.13 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
939bb734636de4bda0ef560041dfcaad703189e2eb0639e85eb856280d944319
BLAKE2b-256 checksum
How to use checksums
7e6d4f9c2a5f465afbb89acd5cf8d2a236ee5eb194f003ea944c6a6bb54ceb4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL csonpath-0.19.0-cp313-cp313-macosx_11_0_arm64.whl
Size 50.6 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a6ed0ae25de60e082ee4b1b47aa69147db39a5b168e161e17758f90efd80dfff
BLAKE2b-256 checksum
How to use checksums
0b8561104bbe2b905191603e4a1ccfc020934a527853caf92632ef850c475ccb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp312-cp312-win_amd64.whl

Download URL csonpath-0.19.0-cp312-cp312-win_amd64.whl
Size 65.7 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
87da9a38e7c7075adc95b8dd02dec16c2609a65bfb612b6869ee3b251318ecab
BLAKE2b-256 checksum
How to use checksums
80c16dd72339a8c914e74e93064cd91a549a59b24a1a4c899a4a55f945188e6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL csonpath-0.19.0-cp312-cp312-musllinux_1_2_x86_64.whl
Size 297.9 kB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
767c8b55079fff62bed20f64d65350400d1641f1ebc98570a2a6d8400e3c875b
BLAKE2b-256 checksum
How to use checksums
c46ea00d2d145fc8e68de9d48e71652e0bcec9827923e68316d36bfc3861fb7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL csonpath-0.19.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 295.7 kB
Tags CPython 3.12 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
86023aa877efc7e40d6d12220894ec7694ff5600ef077ce9be2f1757fb7823bf
BLAKE2b-256 checksum
How to use checksums
7c7e5e32b778d794e22f760f73a34f0598ee82a3bca871275550ea5f25a74813
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL csonpath-0.19.0-cp312-cp312-macosx_11_0_arm64.whl
Size 50.6 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
918a08d79ec29cbdf869f5651e4f1aeb978d80a7d53ebd00b4065e1fba853ec7
BLAKE2b-256 checksum
How to use checksums
04a1fbe1aa7fb12cd30e0c63e6fbeb6270f0e853de05e875a0135f1a9297f2ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp311-cp311-win_amd64.whl

Download URL csonpath-0.19.0-cp311-cp311-win_amd64.whl
Size 65.7 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
e0e9c5e5696e7fb2d2254406bfdff71fe530cef451c46d2ac16c20ea875fad3c
BLAKE2b-256 checksum
How to use checksums
790164dc1bdf99a17b95d599f6290684851f496edc821c8e5dfd19eda76343eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL csonpath-0.19.0-cp311-cp311-musllinux_1_2_x86_64.whl
Size 282.6 kB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
ce86a1488610dbdb2b2bbc42752ee4947f00750fd3c3a53cd6116c074eff94d3
BLAKE2b-256 checksum
How to use checksums
808ae31cfc9e0f5e6ab0aaec5e35c389ab5753a7a17c10644a4e88a7f648c841
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL csonpath-0.19.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 281.0 kB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
15858824960f0c6c513631c97e416760cecfdb835e3385293d36f6150b334b69
BLAKE2b-256 checksum
How to use checksums
b1c3c471be36684aa0c5c753a2370a956d3f89f6250b33ab970439e5850d5f93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL csonpath-0.19.0-cp311-cp311-macosx_11_0_arm64.whl
Size 50.5 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c79078da9663551ded2f34c97cc0f02068827d1c75af3b9cef75d6df9b40de60
BLAKE2b-256 checksum
How to use checksums
dd4a3de2a5ba6b8453bed5b2a04a8f8e775d5b0938578e2cb4017245988f220a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp310-cp310-win_amd64.whl

Download URL csonpath-0.19.0-cp310-cp310-win_amd64.whl
Size 65.6 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
32aa50d923879486d3e728d4409593ba105188e28fe9915dff0d47331597d0aa
BLAKE2b-256 checksum
How to use checksums
d0aee0211a6711cd504d8521c7036ccab72eaefd8ffbaa8b7d33c1b5bdc1a6ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL csonpath-0.19.0-cp310-cp310-musllinux_1_2_x86_64.whl
Size 273.6 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
aa215a8cc233c5ba865dcae9e74dfeee655c99bc09e22be631e3a1de9a509c3c
BLAKE2b-256 checksum
How to use checksums
93dba41170fe478c74a1572fecefdf639948316ff23d8e1f05dd0f44b70c683c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL csonpath-0.19.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 271.3 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
0e63647c586f3eb72777e0d7176c8fd27d3b488d0fcc740496fe7d51104b62c5
BLAKE2b-256 checksum
How to use checksums
73b2dec5a2b8638039be3b3930505adeb7588d393e5f75c76d098c21a06caec9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp310-cp310-macosx_11_0_arm64.whl

Download URL csonpath-0.19.0-cp310-cp310-macosx_11_0_arm64.whl
Size 50.5 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b69fc329f80afbd1f7654d81c9c65b083c4b4bad3ee932627b3d284c7d2ef9b4
BLAKE2b-256 checksum
How to use checksums
f11cb34ada8fe999dbbfb289e73962ec7b4c4e1b59df17d60e19eb3759daeb6e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp39-cp39-win_amd64.whl

Download URL csonpath-0.19.0-cp39-cp39-win_amd64.whl
Size 65.6 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
dd7f61ae28e9014b01b55bda9c4353808b123c301d3a7cdb8f18a134cd7da0da
BLAKE2b-256 checksum
How to use checksums
b4632d4ea14a2aa9c5646c6d491868a746d94391fe1213d27749b7cc8c219057
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL csonpath-0.19.0-cp39-cp39-musllinux_1_2_x86_64.whl
Size 273.3 kB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
4fd96615081714e6449373adae20280cf1ec62159342974c52219065c79c35ec
BLAKE2b-256 checksum
How to use checksums
174ef9568c4f6ae264c42be9bde13e4829023367c6f7bbd4ed19d8135599d173
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL csonpath-0.19.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 271.2 kB
Tags CPython 3.9 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
3c73723901ceb100834ac6f49f5a14357651aea9fc7e834aa48cefd245092f30
BLAKE2b-256 checksum
How to use checksums
0e4145ffde24de78b00f6e40907b8c6b140bcedecd3b51c653ae43eda7289a2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / csonpath-0.19.0-cp39-cp39-macosx_11_0_arm64.whl

Download URL csonpath-0.19.0-cp39-cp39-macosx_11_0_arm64.whl
Size 50.5 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
64bcf8f65e5b0ea3d2a73a22db37b85831afaaab0aa6f01380cf18037b6b8af8
BLAKE2b-256 checksum
How to use checksums
98c882f4b80815e2a7e4c1475fc61da374fbd35648086f1fb299a71966196767
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release history Release notifications | RSS feed

This release

0.19.0 This release

29 release files

0.11.0

1 release file

0.10.0

1 release file

0.9.0

1 release file

0.8.0

1 release file

0.7.0

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.0

1 release file

0.4.0

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.0

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

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