On Mon, 17 Aug 2026 21:49:53 GMT, Naoto Sato <[email protected]> wrote:
>> This PR implements [JEP 540: Simple JSON API >> (Incubator)](https://openjdk.org/jeps/540). >> >> It adds the `jdk.incubator.json` module which provides APIs for reading and >> writing JSON documents as specified by [RFC >> 8259](https://datatracker.ietf.org/doc/html/rfc8259). This is an incubating >> API. >> >> API documentation: >> https://cr.openjdk.org/~naoto/json/javadoc/api/jdk.incubator.json/module-summary.html >> Co-authored-by: Justin Lu >> ([@justin-curtis-lu](https://github.com/justin-curtis-lu)) >> >> --------- >> - [x] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > Naoto Sato has updated the pull request with a new target base due to a merge > or a rebase. The pull request now contains 741 commits: > > - Merge remote-tracking branch 'jdk-sandbox/json' into > JDK-8381976-Implementation-for-Simple-JSON-API > - Clarifications for behavior of JsonString.of > - Make Utils.toPath iterative > - consolidated append('\\') > - in.clone() > - Reflecting comments > - Tests for non-sealed sub-interfaces > - Clean up duplicate member name message on parsing > - Ensure that JS created from factory do not produce faulty paths > - Minor Javadoc cleanup as pointed out in review > - ... and 731 more: https://git.openjdk.org/jdk/compare/f5a59340...5f7263b9 src/jdk.incubator.json/share/classes/jdk/incubator/json/impl/JsonParser.java line 128: > 126: var name = parseName(startO); > 127: var nameLine = line; > 128: var nameLineStart = lineStart; Most of the usages of `var` are fine, a few more, like here, are a bit annoying as I have to zoom out quite a bit to see if name is a String, a JsonString, or something else. src/jdk.incubator.json/share/classes/jdk/incubator/json/impl/JsonParser.java line 139: > 137: throw failure(nameStart, nameLine, nameLineStart, > 138: "Duplicate member name: \"%s\" was already > parsed".formatted(name), startO, true); > 139: } If there is a duplicate member then it might be simpler to just throw and not attempt to parse its value. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/32282#discussion_r3801583165 PR Review Comment: https://git.openjdk.org/jdk/pull/32282#discussion_r3801576654
