NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #305 most downloaded on Packagist
JSON Linter
Last release 3 months ago
12 Jun 2026
Release timing varies
gaps range from 2 weeks to 1.9 years
Nearly every release is documented
notes for 28 of 29 stable releases
Nothing withdrawn
no release was ever pulled
15 years old
29 releases · first in 2012
Fixed possible corner cases in UTF-8 violation detection by @LLyaudet in #98
Full Changelog: 1.12.0...1.12.1
One column per quarter.
Add ALLOW_DUPLICATE_KEYS_TO_ARRAY flag for collect values from duplicated keys in a __duplicate__ array #88
__duplicate__ array #88Full Changelog: 1.10.2...1.11.0
Fixed exception messages potentially leaking data when showing the position in a file that is clearly not json, only the first character is now shown
Full Changelog: 1.10.1...1.10.2
Fixed quiet mode when parsing from stdin
Full Changelog: 1.10.0...1.10.1
Added ALLOW_COMMENTS flag to parse while allowing (and ignoring) inline // and multiline /* */ comments in the JSON document
// and multiline /* */ comments in the JSON document (#81)Full Changelog: 1.9.0...1.10.0
Internal cleanups and type fixes
Full Changelog: 1.8.9...1.9.0
Lexer: fix handling of cut off json where string don't terminate by @glaubinix in #79
Full Changelog: 1.8.3...1.8.9
Cleaned up zip archives with .gitattributes
More type annotations
* Added type annotations
Added (tentative) support for PHP 8
Fixed issue decoding some unicode escaped characters (for " and ')
Fixed PHP 5.3 compatibility in bin/jsonlint
Added ability to lint multiple files at once using the jsonlint binary
* No meaningful public changes
* Fixed parsing of 0 as invalid
0 as invalidAdded $flags arg to JsonParser::lint() to take the same flag as parse() did
Added support for PHP 7.1 (which converts {"":""} to an object property called "" and not "_empty_" like 7.0 and below).
{"":""} to an object property called "" and not "_empty_" like 7.0 and below).Nothing published for this version
Added a DuplicateKeyException allowing for more specific error detection and handling
Fixed segfault when parsing large JSON strings
Added parsing to an associative array via JsonParser::PARSE_TO_ASSOC
Added support for linting multiple files at once in bin/jsonlint
Fixed handling of Unicode BOMs to give a better failure hint
Fixed handling of empty keys in objects in certain cases
Added optional parsing of duplicate keys into key.2, key.3, etc via JsonParser::ALLOW_DUPLICATE_KEYS
Added optional detection and error reporting for duplicate keys via JsonParser::DETECT_KEY_CONFLICTS
* Initial release
Your coding agent can read these notes before it upgrades. Set up the MCP server →