Emit a deprecation warning when JSON.load create custom types without the create_additions option being explictly enabled.
Prefer to use JSON.unsafe_load(string) or JSON.load(string, create_additions: true).
Emit a deprecation warning when serializing valid UTF-8 strings encoded in ASCII_8BIT aka BINARY.
Bump required Ruby version to 2.7.
Add support for optionally parsing trailing commas, via allow_trailing_comma: true, which in cunjunction with the
pre-existing support for comments, make it suitable to parse jsonc documents.
Many performance improvements to JSON.parse and JSON.load, up to 1.7x faster on real world documents.
Some minor performance improvements to JSON.dump and JSON.generate.
2024-11-04 (2.7.6)
Fix a regression in JSON.generate when dealing with Hash keys that are string subclasses, call to_json on them.
2024-10-25 (2.7.5)
Fix a memory leak when #to_json methods raise an exception.
Gracefully handle formatting configs being set to nil instead of "".
Workaround another issue caused by conflicting versions of both json_pure and json being loaded.
2024-10-25 (2.7.4)
Workaround a bug in 3.4.8 and older rubygems/rubygems#6490.
This bug would cause some gems with native extension to fail during compilation.
Workaround different versions of json and json_pure being loaded (not officially supported).
Make json_pure Ractor compatible.
2024-10-24 (2.7.3)
Numerous performance optimizations in JSON.generate and JSON.dump (up to 2 times faster).
Limit the size of ParserError exception messages, only include up to 32 bytes of the unparseable source.
Fix json-pure's Object#to_json to accept non state arguments
Fix multiline comment support in json-pure.
Fix JSON.parse to no longer mutate the argument encoding when passed an ASCII-8BIT string.
Fix String#to_json to raise on invalid encoding in json-pure.
Delete code that was based on CVTUTF.
Use the pure-Ruby generator on TruffleRuby.
Fix strict mode in json-pure to not break on Integer.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Updates the requirements on json to permit the latest version.
Release notes
Sourced from json's releases.
Changelog
Sourced from json's changelog.
... (truncated)
Commits
49650f7
Release 2.8.107cf261
Fix gemspec to include .jar filesb9c8024
Merge pull request #693 from casperisfine/update-changelog8071cc6
Release 2.8.0f5812d8
Update benchmark annotations3f950f2
Merge pull request #692 from casperisfine/custom-parse-int3a4dc9e
Implement a fast path for integer parsingd315ac8
Merge pull request #689 from casperisfine/parser-escape94d679f
Merge pull request #690 from nobu/right-shift-ucharfb82373
Fix right shift warningsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show