|
1 | 1 | # java.util.json Backport for JDK 21+ |
2 | 2 |
|
3 | | -Early access to the future `java.util.json` API - tracking OpenJDK sandbox development. |
| 3 | +Early access to the future `java.util.json` API - taken from OpenJDK sandbox July 2025. |
4 | 4 |
|
5 | 5 | ## Project Vision |
6 | 6 |
|
7 | 7 | This project provides Java developers with early access to the future `java.util.json` API patterns today, allowing code written against this API to migrate seamlessly when the official API is released. Rather than adopting third-party JSON libraries that will never align with future JDK standards, developers can start using tomorrow's API patterns today. |
8 | 8 |
|
9 | 9 | ## Current Status |
10 | 10 |
|
11 | | -This code is derived from the official OpenJDK sandbox repository at commit [d22dc2ba89789041c3908cdaafadc1dcf8882ebf](https://github.com/openjdk/jdk-sandbox/commit/d22dc2ba89789041c3908cdaafadc1dcf8882ebf) (3 days ago - "Improve hash code spec wording"). |
| 11 | +This code is derived from the official OpenJDK sandbox repository at commit [d22dc2ba89789041c3908cdaafadc1dcf8882ebf](https://github.com/openjdk/jdk-sandbox/commit/d22dc2ba89789041c3908cdaafadc1dcf8882ebf) (Mid July 2025 "Improve hash code spec wording"). |
12 | 12 |
|
13 | 13 | The original proposal and design rationale can be found in the included PDF: [Towards a JSON API for the JDK.pdf](Towards%20a%20JSON%20API%20for%20the%20JDK.pdf) |
14 | 14 |
|
15 | | -## Project Goals |
| 15 | +## Back Port Project Goals |
16 | 16 |
|
17 | 17 | - **Enable early adoption**: Let developers use future Java JSON patterns today on JDK 21+ |
18 | | -- **Smooth migration path**: Code written against this API should require minimal changes when migrating to the official release |
19 | | -- **API compatibility over performance**: Focus on matching the API design rather than competing with existing JSON libraries on speed |
| 18 | +- **Smooth migration path**: Code written against this API should require less changes when migrating to the eventual official release |
| 19 | +- **API compatibility over performance**: Focus on matching the emerging "batteries included" API design rather than competing with existing JSON libraries on speed |
20 | 20 |
|
21 | 21 | ## Non-Goals |
22 | 22 |
|
23 | | -- **Performance competition**: This is not intended to be the fastest JSON library |
24 | | -- **Feature additions**: No features beyond what's in the official sandbox/preview |
25 | | -- **Production optimization**: The official implementation will have JVM-level optimizations unavailable to a backport |
26 | | -- **API stability**: This backport may evolve as the official specification develops (if folks find it useful) |
| 23 | +- **Performance competition**: This is not intended to be the fastest JSON library the JDK internal annotations had to be removed. |
| 24 | +- **Feature additions**: No features beyond what's in the official sandbox/preview. |
| 25 | +- **Production optimization**: The final official implementation will have JVM-level optimizations unavailable to a backport on Java 21. |
| 26 | +- **API stability**: This backport may evolve as the official specification develops (only if folks find it useful) |
27 | 27 |
|
28 | 28 | ## Modifications |
29 | 29 |
|
@@ -220,4 +220,4 @@ String formatted = Json.toDisplayString(data, 2); |
220 | 220 | // 95 |
221 | 221 | // ] |
222 | 222 | // } |
223 | | -``` |
| 223 | +``` |
0 commit comments