csonpath
That's not my path, that's not your path, but csonpath.
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.
🌐 Links
- Project website: https://github.com/outscale/csonpath
- Join our community on Discord
📄 Table of Contents
- Features
- Installation
- Usage
- C API Reference
- Python API Reference
- CLI
- Using Multiple Backends
- Custom Backends
- Running Tests
- Directory Structure
- Contributing
- License
📦 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_arrayreturns[]instead ofNonewhenfind_all()finds nothing;jq_likeallows jq-style paths without a leading$.set_path(path)— Change the path expression.find_first(json)— Return the first match, orNone.find_all(json)— Return a list of all matches, orNone(or[]if configured).remove(json)— Remove all matches. Returns the number of removed items.update_or_create(json, value)— Replace matches withvalue, or create the path.callback(json, callback, callback_data=None)— Callcallback(parent, idx, current, callback_data)for every match.update_or_create_callback(json, callback, callback_data=None)— Same ascallback, 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 valuescsonpath_yyjson.h— yyjson valuescsonpath_python.c— Python C API values (used by the Python bindings)rust/csonpath_rust_backend.h— Rustserde_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)
| File | Size | Uploaded | |
|---|---|---|---|
| csonpath-0.19.0.tar.gz | 89.8 kB | Details |
Built distributions (wheels)
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
|