jbuilder 2.2.7 → 2.2.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/jbuilder.gemspec +1 -1
- data/lib/jbuilder.rb +4 -8
- data/lib/jbuilder/errors.rb +7 -0
- data/test/jbuilder_test.rb +13 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c6fff76c0587398f3f158d2263ddb193fd0781fe
|
4
|
+
data.tar.gz: 3c1f56012c79d825f11fda61fcfd9bdaa61abdd4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8965ab307c6d4f8a0e1f5ad3774273bc0954e82603db9951fcb48ccddffef5ccf0cc90955f2827cd778d951d2f8d76c4fe0ab2e0c9a36c86d3ae6aa2fa42d81d
|
7
|
+
data.tar.gz: bea36a97b8097ca854c8b9d07a463d1d4dd03d89799d995dcc4909c9f458cd57bb85406820d69f7311b8902e24aa530e16d2abd63a1bc265ba16d7f65257ceab
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
2.2.8
|
4
|
+
-----
|
5
|
+
* [Raise ArrayError when trying to add key to an array](https://github.com/rails/jbuilder/commit/869e4be1ad165ce986d8fca78311bdd3ed166087)
|
6
|
+
|
3
7
|
2.2.7
|
4
8
|
-----
|
5
9
|
* [Make Blank object serializable with Marshal](https://github.com/rails/jbuilder/commit/7083f28d8b665aa60d0d1b1927ae88bb5c6290ba)
|
data/jbuilder.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'jbuilder'
|
3
|
-
s.version = '2.2.
|
3
|
+
s.version = '2.2.8'
|
4
4
|
s.authors = ['David Heinemeier Hansson', 'Pavel Pravosud']
|
5
5
|
s.email = ['david@37signals.com', 'pavel@pravosud.com']
|
6
6
|
s.summary = 'Create JSON structures via a Builder-style DSL'
|
data/lib/jbuilder.rb
CHANGED
@@ -274,20 +274,16 @@ class Jbuilder
|
|
274
274
|
end
|
275
275
|
end
|
276
276
|
|
277
|
-
def _write(key, value)
|
278
|
-
@attributes = {} if _blank?
|
279
|
-
@attributes[_key(key)] = value
|
280
|
-
end
|
281
|
-
|
282
277
|
def _key(key)
|
283
278
|
@key_formatter.format(key)
|
284
279
|
end
|
285
280
|
|
286
281
|
def _set_value(key, value)
|
287
282
|
raise NullError.build(key) if @attributes.nil?
|
288
|
-
|
289
|
-
return if _blank?(value)
|
290
|
-
|
283
|
+
raise ArrayError.build(key) if ::Array === @attributes
|
284
|
+
return if @ignore_nil && value.nil? or _blank?(value)
|
285
|
+
@attributes = {} if _blank?
|
286
|
+
@attributes[_key(key)] = value
|
291
287
|
end
|
292
288
|
|
293
289
|
def _map_collection(collection)
|
data/lib/jbuilder/errors.rb
CHANGED
data/test/jbuilder_test.rb
CHANGED
@@ -645,11 +645,21 @@ class JbuilderTest < ActiveSupport::TestCase
|
|
645
645
|
assert_nil result['author']
|
646
646
|
end
|
647
647
|
|
648
|
+
test 'throws ArrayError when trying to add a key to an array' do
|
649
|
+
assert_raise Jbuilder::ArrayError do
|
650
|
+
jbuild do |json|
|
651
|
+
json.array! %w[foo bar]
|
652
|
+
json.fizz "buzz"
|
653
|
+
end
|
654
|
+
end
|
655
|
+
end
|
656
|
+
|
648
657
|
test 'throws NullError when trying to add properties to null' do
|
649
|
-
json = Jbuilder.new
|
650
|
-
json.null!
|
651
658
|
assert_raise Jbuilder::NullError do
|
652
|
-
json
|
659
|
+
jbuild do |json|
|
660
|
+
json.null!
|
661
|
+
json.foo 'bar'
|
662
|
+
end
|
653
663
|
end
|
654
664
|
end
|
655
665
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jbuilder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-02-
|
12
|
+
date: 2015-02-22 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|