Skip to content

Commit 949a9d4

Browse files
authored
Update README with project status and focus
Add project status and focus areas to README
1 parent e799ca0 commit 949a9d4

1 file changed

Lines changed: 27 additions & 7 deletions

File tree

README.md

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,30 @@ serialization and deserialization to and from strings. It can also preserve
1616
existing comment in deserialization/serialization steps, making it a convenient
1717
format to store user input files.
1818

19+
## Project Status
20+
21+
JsonCpp is a mature project in maintenance mode. Our priority is providing a stable,
22+
reliable JSON library for the long tail of C++ development.
23+
24+
### Current Focus
25+
26+
**Security:** Addressing vulnerabilities and fuzzing results.
27+
28+
**Compatibility:** Ensuring the library builds without warnings on the latest versions of GCC,
29+
Clang, and MSVC.
30+
31+
**Reliability:** Fixing regressions and critical logical bugs.
32+
33+
### Out of Scope
34+
35+
**Performance:** We are not competing with SIMD-accelerated or reflection-based parsers.
36+
37+
**Features:** We are generally not accepting requests for new data formats or major API changes.
38+
39+
JsonCpp remains a primary choice for developers who require comment preservation and support for
40+
legacy toolchains where modern C++ standards are unavailable. The library is intended to be a
41+
reliable dependency that does not require frequent updates or major migration efforts.
42+
1943
## Documentation
2044

2145
[JsonCpp documentation][JsonCpp-documentation] is generated using [Doxygen][].
@@ -30,13 +54,9 @@ format to store user input files.
3054
* `00.11.z` can be used both in old and new compilers.
3155
* Major versions maintain binary-compatibility.
3256

33-
### Special note
34-
35-
The branch `00.11.z`is a new branch, its major version number `00` is to show
36-
that it is different from `0.y.z` and `1.y.z`, the main purpose of this branch
37-
is to make a balance between the other two branches. Thus, users can use some
38-
new features in this new branch that introduced in 1.y.z, but can hardly applied
39-
into 0.y.z.
57+
> [!NOTE]
58+
> We are happy to take critical security features for any of these three branches, however at this
59+
> point in the project only the `1.y.z` is receiving somewhat regular updates.
4060
4161
## Using JsonCpp in your project
4262

0 commit comments

Comments
 (0)