Fixes
- Fixed normalized paths produced by
JSONPathNode.path()
. Previously we were not handling some escape sequences correctly in name selectors. - Fixed serialization of
JSONPathQuery
instances.JSONPathQuery.__str__()
now serialized name selectors and string literals to the canonical format, similar to normalized paths. We're also now minimizing the use of parentheses when serializing logical expressions.
Fixes
- Fixed decoding of escape sequences in quoted name selectors and string literals. We now raise a
JSONPathSyntaxError
for invalid code points. - Fixed parsing of number literals with an exponent. We now allow 'e' to be upper case.
- Fixed handling of trailing commas in bracketed segments. We now raise a
JSONPathSyntaxError
in such cases. - Fixed handling of invalid number literals. We now raise a syntax error for invalid leading zeros and extra negative signs.
Fixes
- Handle end of query when lexing inside a filter expression.
- Check patterns passed to
search
andmatch
are valid I-Regexp patterns. Both of these functions now return LogicalFalse if the pattern is not valid according to RFC 9485.
Fix PyPi classifiers and README.
Initial release.