JsonSurfer icon indicating copy to clipboard operation
JsonSurfer copied to clipboard

A streaming JsonPath processor in Java

Results 19 JsonSurfer issues
Sort by recently updated
recently updated
newest added

Gson before 2.8.9 are vulnerable to Deserialization of Untrusted Data via the writeReplace() method in internal classes, which may lead to DoS attacks, according to https://security.snyk.io/vuln/SNYK-JAVA-COMGOOGLECODEGSON-1730327

I am not sure if it was implemented but if I want to compare like say:- ```java JsonPathCompiler.compile("$.data[?(@.age!=18)]") ``` it throws exception ``` | Exception org.antlr.v4.runtime.misc.ParseCancellationException | at BailErrorStrategy.recoverInline (BailErrorStrategy.java:66)...

This is related to comparison test case https://cburgmer.github.io/json-path-comparison/results/filter_expression_after_recursive_descent.html#Java_com.github.jsurfer Consider the following JSON: ```json [ {"letter" : "A", "number": 1, "boolean": true}, {"letter" : "B", "number": 2, "boolean": false, "next": {"letter"...

# Steps to reproduce Example JSON: ``` { "a": { "size": 15 }, "b": { "size": 20 }, "c": { "size": 10 } } ``` Queries: ``` $[?(@.size > 13)]...

The JsonPath language isn't standardized. When SQL accommodated it, they actually formally specified the language, however in a different flavor. Example differences: - array ranges are indexed as `$[1 to...

I would prefer comparing the performance to the streaming apis of the competing parsers (i.e. jacksons and so), instead of first mapping to objects. At least for the simpler benchmarks,...

@cburgmer's JSONPath comparison project is currently discussing some [issues](https://github.com/cburgmer/json-path-comparison/issues?q=is%3Aissue+is%3Aopen+label%3A%22Proposal+A%22) relating to a proposed implementation of JSONPath known as "Proposal A". May I encourage you to get involved if you are...

The following queries provide results that do not match those of other implementations of JSONPath (compare https://cburgmer.github.io/json-path-comparison/): - [x] `$.2` Input: ``` {"a": "first", "2": "second", "b": "third"} ``` Expected...

First: Good job with JsonSurfer! It's a helpful tool, for sure. I am looking for a way to read from a large JSON file in a streaming fashion *and* write...

The `GsonParser` is converting longs to doubles within the `numberHolder` implementation. Instead of calling `return jsonProvider.primitive(jsonReader.nextString());` perhaps something like this would work better: ``` final String value = jsonReader.nextString(); try...