multi_json 1.8.0 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/CHANGELOG.md +8 -0
- data/Gemfile +1 -1
- data/lib/multi_json/adapter.rb +2 -0
- data/lib/multi_json/adapters/ok_json.rb +2 -0
- data/lib/multi_json/version.rb +1 -1
- data/spec/shared/adapter.rb +7 -11
- metadata +3 -3
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3c7bf44cc16efece231078942a86b6a5f4403205
|
4
|
+
data.tar.gz: 72033c9d66380bbb86f54cf97a9aa2a1bfcb3a9a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d7f57462a5cab82e55419698f43ab35d57cb0e2af12dd7b671acfb21515f62c21bdb5d69c0bb9785562a1efc15f39af19b044ab8108e8824b614012e054e9038
|
7
|
+
data.tar.gz: d51223b32e9ba6f53b7260126b0d5a13b793be281ac4e376feda73335f7b87fe4dd5c9deff58b7abfde592e38ef1f63d1d139f1b56ca018fb86bf4419dbfd2a5
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
1.8.0
|
2
|
+
-----
|
3
|
+
* [Raise MultiJson::LoadError on blank input](https://github.com/intridea/multi_json/commit/c44f9c928bb25fe672246ad394b3e5b991be32e6)
|
4
|
+
|
5
|
+
1.7.9
|
6
|
+
-----
|
7
|
+
* [Explicitly require json gem code even when constant is defined](https://github.com/intridea/multi_json/commit/36f7906c66477eb4b55b7afeaa3684b6db69eff2)
|
8
|
+
|
1
9
|
1.7.8
|
2
10
|
-----
|
3
11
|
* [Reorder JrJackson before json_gem](https://github.com/intridea/multi_json/commit/315b6e460b6e4dcdb6c82e04e4be8ee975d395da)
|
data/Gemfile
CHANGED
data/lib/multi_json/adapter.rb
CHANGED
@@ -12,6 +12,8 @@ module MultiJson
|
|
12
12
|
string = string.read if string.respond_to?(:read)
|
13
13
|
result = ::MultiJson::OkJson.decode("[#{string}]").first
|
14
14
|
options[:symbolize_keys] ? symbolize_keys(result) : result
|
15
|
+
rescue ArgumentError # invalid byte sequence in UTF-8
|
16
|
+
raise ParseError
|
15
17
|
end
|
16
18
|
|
17
19
|
def dump(object, options={})
|
data/lib/multi_json/version.rb
CHANGED
@@ -2,7 +2,7 @@ module MultiJson
|
|
2
2
|
class Version
|
3
3
|
MAJOR = 1 unless defined? MultiJson::Version::MAJOR
|
4
4
|
MINOR = 8 unless defined? MultiJson::Version::MINOR
|
5
|
-
PATCH =
|
5
|
+
PATCH = 1 unless defined? MultiJson::Version::PATCH
|
6
6
|
PRE = nil unless defined? MultiJson::Version::PRE
|
7
7
|
|
8
8
|
class << self
|
data/spec/shared/adapter.rb
CHANGED
@@ -113,7 +113,7 @@ shared_examples_for 'an adapter' do |adapter|
|
|
113
113
|
end
|
114
114
|
|
115
115
|
it 'allows to dump JSON with UTF-8 characters' do
|
116
|
-
expect(MultiJson.dump(
|
116
|
+
expect(MultiJson.dump('color' => 'żółć')).to eq('{"color":"żółć"}')
|
117
117
|
end
|
118
118
|
end
|
119
119
|
|
@@ -162,15 +162,11 @@ shared_examples_for 'an adapter' do |adapter|
|
|
162
162
|
end
|
163
163
|
|
164
164
|
it 'properly loads valid JSON' do
|
165
|
-
expect(MultiJson.load('{"abc":"def"}')).to eq(
|
165
|
+
expect(MultiJson.load('{"abc":"def"}')).to eq('abc' => 'def')
|
166
166
|
end
|
167
167
|
|
168
|
-
it 'raises MultiJson::LoadError on invalid
|
169
|
-
|
170
|
-
end
|
171
|
-
|
172
|
-
it 'raises MultiJson::LoadError on blank input' do
|
173
|
-
[nil, ' ', "\t\t\t", "\n"].each do |input|
|
168
|
+
it 'raises MultiJson::LoadError on blank input or invalid input' do
|
169
|
+
[nil, '{"abc"}', ' ', "\t\t\t", "\n", "\x82\xAC\xEF"].each do |input|
|
174
170
|
expect{MultiJson.load(input)}.to raise_error(MultiJson::LoadError)
|
175
171
|
end
|
176
172
|
end
|
@@ -196,12 +192,12 @@ shared_examples_for 'an adapter' do |adapter|
|
|
196
192
|
it 'stringifys symbol keys when encoding' do
|
197
193
|
dumped_json = MultiJson.dump(:a => 1, :b => {:c => 2})
|
198
194
|
loaded_json = MultiJson.load(dumped_json)
|
199
|
-
expect(loaded_json).to eq(
|
195
|
+
expect(loaded_json).to eq('a' => 1, 'b' => {'c' => 2})
|
200
196
|
end
|
201
197
|
|
202
198
|
it 'properly loads valid JSON in StringIOs' do
|
203
199
|
json = StringIO.new('{"abc":"def"}')
|
204
|
-
expect(MultiJson.load(json)).to eq(
|
200
|
+
expect(MultiJson.load(json)).to eq('abc' => 'def')
|
205
201
|
end
|
206
202
|
|
207
203
|
it 'allows for symbolization of keys' do
|
@@ -228,7 +224,7 @@ shared_examples_for 'an adapter' do |adapter|
|
|
228
224
|
end
|
229
225
|
|
230
226
|
it 'allows to load JSON with UTF-8 characters' do
|
231
|
-
expect(MultiJson.load('{"color":"żółć"}')).to eq(
|
227
|
+
expect(MultiJson.load('{"color":"żółć"}')).to eq('color' => 'żółć')
|
232
228
|
end
|
233
229
|
end
|
234
230
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: multi_json
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.
|
4
|
+
version: 1.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Bleigh
|
@@ -33,7 +33,7 @@ cert_chain:
|
|
33
33
|
7BTxdlSpJZDcAK29Ni3NRCRu6Air4wfDln0Ilzeuut6cJ4/j2/RlvsccVSRaEfOa
|
34
34
|
wM7GTK5SEdU3qelyBdc4+RRs6uU=
|
35
35
|
-----END CERTIFICATE-----
|
36
|
-
date: 2013-
|
36
|
+
date: 2013-10-04 00:00:00.000000000 Z
|
37
37
|
dependencies:
|
38
38
|
- !ruby/object:Gem::Dependency
|
39
39
|
name: bundler
|
@@ -120,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
120
120
|
version: 1.3.5
|
121
121
|
requirements: []
|
122
122
|
rubyforge_project:
|
123
|
-
rubygems_version: 2.0
|
123
|
+
rubygems_version: 2.1.0
|
124
124
|
signing_key:
|
125
125
|
specification_version: 4
|
126
126
|
summary: A common interface to multiple JSON libraries.
|
metadata.gz.sig
CHANGED
Binary file
|