Skip to content
CAI
Produce a survey ↗Verify a survey

google/gson

Gson is a Java library for serializing and deserializing Java objects to and from JSON. It provides a comprehensive API for handling common data types, including collections, dates, and SQL types, with support for custom type adapters and reflection-based mapping. The system also supports advanced features such as post-deserialization interceptors, JSON formatting styles, and strict/lenient parsing modes. Additionally, it offers integration with Protocol Buffers and compatibility with modern Java features like the Java Platform Module System (JPMS) and GraalVM Native Image.

66.7

Adequate · 1 August 2026

21k

lines of production code

Java

primary language

3

bus factor · 189 authors in all

3

measurements over time

CAI band scale
CAI trend line

How it got here

2008 · API expansion and test coverage

This period focused on expanding Gson's public API with new features for JSON formatting, reflection access control, and serialization customization via annotations. The team also significantly increased test coverage for core components and performance metrics, while updating build dependencies and removing legacy parsing code.

10 changes

2010–2011 · Streaming API and Protocol Buffer Support

This period focused on introducing a new streaming JSON API with strict and lenient parsing modes, alongside comprehensive test coverage for these features. The team also added support for Protocol Buffers and expanded the library's type adapter ecosystem, including utilities for UTC dates, runtime types, and PostConstruct annotations. Internal refactoring standardized the type adapter factory pattern and improved security and performance.

12 changes

2012–2020 · Feature expansion and test coverage

This period focused on expanding Gson's capabilities by adding new features such as post-deserialization interceptors, ISO-8601 date handling, and SQL type adapters. These functional additions were accompanied by comprehensive unit tests to ensure reliability. The period also included structural improvements like Java Platform Module System support and internal refactoring.

10 changes

2021–2025 · modular and obfuscation compatibility

This period focused on ensuring Gson's compatibility with modern Java module systems and code shrinking tools. The work involved adding integration tests for JPMS, GraalVM Native Image, and OSGi environments, while also introducing ProGuard configurations to verify correct behavior under obfuscation.

8 changes

CAI lens gauges

Survey your own repository

google/gson was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point the surveyor at a repository you know and see whether you agree with it.

Survey a repository

About this page

  • The description of this project is derived from its own commit history, not from its README.
  • The score is its highest published measurement, taken on 1 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit ff521d70b2 — the exact code this score is about.
  • Scored under rubric rubric-2026.08.18. Score the same commit under that rubric and you get the same number.
CAI link cards