json_path 0.6.0
json_path: ^0.6.0 copied to clipboard
Implementation of JSONPath expressions like "$.store.book[2].price". Reads and writes values in parsed JSON objects.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.6.0 - 2023-05-27 #
Changed #
- Bump SDK version to 3.0.0
- Disallow whitespace between a function name and the parentheses
- Disallow whitespace between an expression and the brackets
search()andmatch()now strictly follow the I-Regexp convention. Expressions not conforming to I-Regexp will yieldfalseregardless of the value
0.5.3 - 2023-04-29 [YANKED] #
Changed #
search()andmatch()now strictly follow the I-Regexp convention. Expressions not conforming to I-Regexp will yieldfalseregardless of the value
0.5.0 - 2023-03-23 #
Added #
- Full support of some built-in functions:
length(),size(),search(),match(),value(). - Basic support of custom user-defined functions.
Changed #
- BC-BREAKING! The package is now following the IETF JSON Path spec which means a lot of internal and BC-breaking changes. Please refer to the tests and examples.
Removed #
- BC-BREAKING! Support of the callback filters has been dropped. Use custom functions instead.
0.3.0 - 2021-02-18 #
Added #
JsonPathMatch.contextcontains the matching context. It is intended to be used in named filters.JsonPathMatch.parentcontains the parent match.JsonPathMatch.pointercontains the RFC 6901 JSON Pointer to the match.- Very basic support for evaluated expressions
Changed #
- Named filters argument renamed from
filtertofilters - Named filters can now be passed to the
read()method. - Named filters callback now accepts the entire
JsonPathMatchobject, not just the value.
Removed #
- The
set()method. Use thepointerproperty instead.
0.2.0 - 2020-09-07 #
0.1.2 - 2020-09-06 #
Changed #
- When JsonPath.set() is called on a path with non-existing property, the property will be created. Previously, no modification would be made and no errors/exceptions thrown.
- When JsonPath.set() is called on a path with non-existing index, a
RangeErrorwill be thrown. Previously, no modification would be made and no errors/exceptions thrown.