You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,10 +5,14 @@
5
5
**Fixes**
6
6
7
7
- Fixed handling of JSONPath literals in filter expressions. We now raise a `JSONPathSyntaxError` if a filter expression literal is not part of a comparison, membership or function expression. See [jsonpath-compliance-test-suite#81](https://github.com/jsonpath-standard/jsonpath-compliance-test-suite/pull/81).
8
+
- Fixed parsing of number literals including an exponent. Upper case 'e's are now allowed.
9
+
- Fixed handling of trailing commas in bracketed selection lists. We now raise a `JSONPathSyntaxError` in such cases.
8
10
9
11
**Compliance**
10
12
11
13
- Skipped tests for invalid escape sequences. The JSONPath spec is more strict than Python's JSON decoder when it comes to parsing `\u` escape sequences in string literals. We are adopting a policy of least surprise. The assertion is that most people will expect the JSONPath parser to behave the same as Python's JSON parser. See [jsonpath-compliance-test-suite #87](https://github.com/jsonpath-standard/jsonpath-compliance-test-suite/pull/87).
14
+
- Skipped tests for invalid integer and float literals. Same as above. We are deliberately choosing to match Python's int and float parsing behavior. See [jsonpath-compliance-test-suite #89](https://github.com/jsonpath-standard/jsonpath-compliance-test-suite/pull/89).
15
+
- Skipped tests for incorrect casing `true`, `false` and `null` literals.
Copy file name to clipboardExpand all lines: docs/syntax.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -208,7 +208,7 @@ And this is a list of areas where we deviate from [RFC 9535](https://datatracker
208
208
- We don't require property names to be quoted inside a bracketed selection, unless the name contains reserved characters.
209
209
- We don't require the recursive descent segment to have a selector. `$..` is equivalent to `$..*`.
210
210
- We support explicit comparisons to `undefined` as well as implicit existence tests.
211
-
- Float literals without a fractional digit are OK. `1.` is equivalent to `1.0`.
211
+
- Float literals without a fractional digit are OK or leading digit. `1.` is equivalent to `1.0`.
212
212
- We treat literals (such as `true` and `false`) as valid "basic" expressions. For example, `$[?true || false]`, without an existence test or comparison either side of logical _or_, does not raise a syntax error.
213
213
- By default, `and` is equivalent to `&&` and `or` is equivalent to `||`.
0 commit comments