Fixes rubocop#10745.
This PR fixes the following incompatible API error
when using JSON 2.2 or lower.
```console
% bunlde exec rspec ./spec/rubocop/result_cache_spec.rb:45
Run options: include {:focus=>true,
:locations=>{"./spec/rubocop/result_cache_spec.rb"=>[45]}}
Randomized with seed 40926
FF
Failures:
1) RuboCop::ResultCache cached result that was saved with no command
line option when no option is given is valid and can be loaded
Failure/Error: deserialize_offenses(JSON.parse(text))
ArgumentError:
wrong number of arguments (given 2, expected 1)
Shared Example Group: "valid" called from
./spec/rubocop/result_cache_spec.rb:121
# ./lib/rubocop/cached_data.rb:14:in `from_json'
# ./lib/rubocop/result_cache.rb:119:in `load'
# ./spec/rubocop/result_cache_spec.rb:45:in `block (4 levels) in
<top (required)>'
# ./lib/rubocop/rspec/shared_contexts.rb:30:in `block (4 levels) in
<top (required)>'
# ./lib/rubocop/rspec/shared_contexts.rb:30:in `chdir'
# ./lib/rubocop/rspec/shared_contexts.rb:30:in `block (3 levels) in
<top (required)>'
# ./lib/rubocop/rspec/shared_contexts.rb:7:in `block (2 levels) in
<top (required)>'
2) RuboCop::ResultCache cached result that was saved with no command
line option when --format is given is valid and can be loaded
Failure/Error: deserialize_offenses(JSON.parse(text))
ArgumentError:
wrong number of arguments (given 2, expected 1)
Shared Example Group: "valid" called from
./spec/rubocop/result_cache_spec.rb:242
# ./lib/rubocop/cached_data.rb:14:in `from_json'
# ./lib/rubocop/result_cache.rb:119:in `load'
# ./spec/rubocop/result_cache_spec.rb:45:in `block (4 levels) in
<top (required)>'
# ./lib/rubocop/rspec/shared_contexts.rb:30:in `block (4 levels) in
<top (required)>'
# ./lib/rubocop/rspec/shared_contexts.rb:30:in `chdir'
# ./lib/rubocop/rspec/shared_contexts.rb:30:in `block (3 levels) in
<top (required)>'
# ./lib/rubocop/rspec/shared_contexts.rb:7:in `block (2 levels) in
<top (required)>'
Finished in 0.2064 seconds (files took 1.04 seconds to load)
2 examples, 2 failures
```
It resolves the error by requiring JSON 2.3 or higher.
NOTE: It's been a few years since JSON 2.3 was released. It's maybe
widespread to some extent, so it's not expected to have a big impact.
https://rubygems.org/gems/json/versions/2.3.0