jbuilder 2.6.1 → 2.11.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.github/workflows/ruby.yml +108 -0
- data/.gitignore +2 -0
- data/Appraisals +16 -35
- data/CONTRIBUTING.md +4 -6
- data/Gemfile +0 -1
- data/MIT-LICENSE +1 -1
- data/README.md +99 -19
- data/Rakefile +2 -6
- data/gemfiles/rails_5_0.gemfile +3 -6
- data/gemfiles/rails_5_1.gemfile +10 -0
- data/gemfiles/rails_5_2.gemfile +10 -0
- data/gemfiles/rails_6_0.gemfile +10 -0
- data/gemfiles/rails_6_1.gemfile +10 -0
- data/gemfiles/rails_head.gemfile +10 -0
- data/jbuilder.gemspec +20 -6
- data/lib/generators/rails/jbuilder_generator.rb +12 -2
- data/lib/generators/rails/scaffold_controller_generator.rb +7 -1
- data/lib/generators/rails/templates/api_controller.rb +4 -4
- data/lib/generators/rails/templates/controller.rb +15 -19
- data/lib/generators/rails/templates/index.json.jbuilder +1 -1
- data/lib/generators/rails/templates/partial.json.jbuilder +16 -2
- data/lib/generators/rails/templates/show.json.jbuilder +1 -1
- data/lib/jbuilder/collection_renderer.rb +109 -0
- data/lib/jbuilder/errors.rb +7 -0
- data/lib/jbuilder/jbuilder_template.rb +65 -16
- data/lib/jbuilder/railtie.rb +1 -1
- data/lib/jbuilder.rb +70 -28
- data/test/jbuilder_dependency_tracker_test.rb +2 -2
- data/test/jbuilder_generator_test.rb +25 -5
- data/test/jbuilder_template_test.rb +280 -323
- data/test/jbuilder_test.rb +256 -4
- data/test/scaffold_api_controller_generator_test.rb +18 -3
- data/test/scaffold_controller_generator_test.rb +41 -8
- data/test/test_helper.rb +30 -8
- metadata +25 -31
- data/.travis.yml +0 -44
- data/CHANGELOG.md +0 -234
- data/gemfiles/rails_3_0.gemfile +0 -14
- data/gemfiles/rails_3_1.gemfile +0 -14
- data/gemfiles/rails_3_2.gemfile +0 -14
- data/gemfiles/rails_4_0.gemfile +0 -13
- data/gemfiles/rails_4_1.gemfile +0 -13
- data/gemfiles/rails_4_2.gemfile +0 -13
data/CHANGELOG.md
DELETED
@@ -1,234 +0,0 @@
|
|
1
|
-
# Changelog
|
2
|
-
|
3
|
-
2.6.1
|
4
|
-
-----
|
5
|
-
|
6
|
-
* [Optimize root caches with cache_root!][https://github.com/rails/jbuilder/pull/370]
|
7
|
-
|
8
|
-
2.6.0
|
9
|
-
-----
|
10
|
-
|
11
|
-
* [Rails 5 cache! with expire support](https://github.com/rails/jbuilder/commit/d61e3354563863731bc1f358f495b1dbb7ae9d32)
|
12
|
-
* [Generated view DRYed by using model partial](https://github.com/rails/jbuilder/commit/83256f4d7e9211c9dc47972feaed7fd31e4f7cac)
|
13
|
-
|
14
|
-
2.5.0
|
15
|
-
-----
|
16
|
-
|
17
|
-
* [Rails 5 compatibility](https://github.com/rails/jbuilder/commit/64c510ec69d9e63b73ffd5942e802d21a7d14701)
|
18
|
-
|
19
|
-
2.4.1
|
20
|
-
-----
|
21
|
-
|
22
|
-
* [Fix controller generators to be Rails 5 compatible](https://github.com/rails/jbuilder/commit/2dc6203c5c4a98701d5b64c2a5200835a48bb533)
|
23
|
-
|
24
|
-
2.4.0
|
25
|
-
-----
|
26
|
-
|
27
|
-
* [Rails 5 compatibility](https://github.com/rails/jbuilder/commit/4aa2cfcc19a4634d65a28ffc75f0ac0cb8304115)
|
28
|
-
|
29
|
-
2.3.2
|
30
|
-
-----
|
31
|
-
|
32
|
-
* [Remove Mime Types deprecation message](https://github.com/rails/jbuilder/commit/5ba4e4ac654cc8388619538f576fe234659b84ec)
|
33
|
-
|
34
|
-
2.3.1
|
35
|
-
-----
|
36
|
-
|
37
|
-
* [Explicitly require ostruct to prevent NameError](https://github.com/rails/jbuilder/pull/281)
|
38
|
-
|
39
|
-
2.3.0
|
40
|
-
-----
|
41
|
-
|
42
|
-
* [Add new in-place partial invocation support](https://github.com/rails/jbuilder/commit/1feda7ee605c136e59fb4de970f4674de518e6de)
|
43
|
-
* [Add implicit partial rendering for AM::Models](https://github.com/rails/jbuilder/commit/4d5bf7d0ea92765adb7be36834e84f9855a061df)
|
44
|
-
* [Generate API controller if Rails API option is enabled](https://github.com/rails/jbuilder/commit/db68f6bd327cf42b47ef22d455fb5721a8c2cf5f)
|
45
|
-
* [JBuilder's templates have less priority than app templates](https://github.com/rails/jbuilder/commit/7c1a5f25603ec1f4e51fba3dbba9db23726a5d69)
|
46
|
-
* [Add AC::Helpers module to jbuilder for api only apps](https://github.com/rails/jbuilder/commit/7cf1d1eb7d125caf38309b5427952030011c1aa0)
|
47
|
-
|
48
|
-
2.2.16
|
49
|
-
------
|
50
|
-
|
51
|
-
* [Fix NoMethodError around `api_only` in railtie](https://github.com/rails/jbuilder/commit/b08d1da10b14720b46d383b2917e336060fd9ffa)
|
52
|
-
|
53
|
-
2.2.14
|
54
|
-
------
|
55
|
-
|
56
|
-
* [Make Jbuilder compatible with Rails API](https://github.com/rails/jbuilder/commit/29c0014a9c954c990075d42c45c66075260e924b)
|
57
|
-
|
58
|
-
2.2.13
|
59
|
-
------
|
60
|
-
|
61
|
-
* Several performance optimizations: [#260](https://github.com/rails/jbuilder/pull/260) & [#261](https://github.com/rails/jbuilder/pull/261)
|
62
|
-
|
63
|
-
2.2.12
|
64
|
-
------
|
65
|
-
|
66
|
-
* [Replace explicit block calls with yield for performance](https://github.com/rails/jbuilder/commit/3184f941276ad03a071cf977133d1a32302afa47)
|
67
|
-
|
68
|
-
2.2.11
|
69
|
-
------
|
70
|
-
|
71
|
-
* Generate the templates for Rails 5+ [#258](https://github.com/rails/jbuilder/pull/258) [@amatsuda](https://github.com/amatsuda)
|
72
|
-
|
73
|
-
2.2.10
|
74
|
-
------
|
75
|
-
|
76
|
-
* Add Jbuilder::Blank#empty? to tell if attributes are empty [#257](https://github.com/rails/jbuilder/pull/257) [@a2ikm](https://github.com/a2ikm)
|
77
|
-
|
78
|
-
2.2.9
|
79
|
-
-----
|
80
|
-
|
81
|
-
* Support `partial!` call with `locals` option in `JbuilderTemplate` [#251](https://github.com/rails/jbuilder/pull/251)
|
82
|
-
|
83
|
-
2.2.8
|
84
|
-
-----
|
85
|
-
* [Raise ArrayError when trying to add key to an array](https://github.com/rails/jbuilder/commit/869e4be1ad165ce986d8fca78311bdd3ed166087)
|
86
|
-
|
87
|
-
2.2.7
|
88
|
-
-----
|
89
|
-
* [Make Blank object serializable with Marshal](https://github.com/rails/jbuilder/commit/7083f28d8b665aa60d0d1b1927ae88bb5c6290ba)
|
90
|
-
|
91
|
-
2.2.6
|
92
|
-
-----
|
93
|
-
* [Make sure dependency tracker loads after template handler](https://github.com/rails/jbuilder/commit/3ba404b1207b557e14771c90b8832bc01ae67a42)
|
94
|
-
|
95
|
-
2.2.5
|
96
|
-
-----
|
97
|
-
* [Refactor merge block behavior to raise error for unexpected values](https://github.com/rails/jbuilder/commit/4503162fb26f53f613fc83ac081fd244748b6fe9)
|
98
|
-
|
99
|
-
2.2.4
|
100
|
-
-----
|
101
|
-
* [Typecast locals hash key during collection render](https://github.com/rails/jbuilder/commit/a6b0c8651a08e01cb53eee38e211c65423f275f7)
|
102
|
-
|
103
|
-
2.2.3
|
104
|
-
-----
|
105
|
-
* [Move template handler registration into railtie](https://github.com/rails/jbuilder/commit/c8acc5cea6da2a79b7b345adc301cb5ff2517647)
|
106
|
-
* [Do not capture the block where it is possible](https://github.com/rails/jbuilder/commit/973b382c3924cb59fc0e4e25266b18e74d41d646)
|
107
|
-
|
108
|
-
2.2.2
|
109
|
-
-----
|
110
|
-
* [Fix `Jbuilder#merge!` inside block](https://github.com/rails/jbuilder/commit/a7b328552eb0d36315f75bff813bea7eecf8c1d7)
|
111
|
-
|
112
|
-
2.2.1
|
113
|
-
-----
|
114
|
-
* [Fix empty block handling](https://github.com/rails/jbuilder/commit/972a11141403269e9b17b45b0c95f8a9788245ee)
|
115
|
-
|
116
|
-
2.2.0
|
117
|
-
-----
|
118
|
-
* [Allow to skip `array!` iterations by calling `next`](https://github.com/rails/jbuilder/commit/81a63308fb9d5002519dd871f829ccc58067251a)
|
119
|
-
|
120
|
-
2.1.2
|
121
|
-
-----
|
122
|
-
* [Cast array-like objects to array before merging](https://github.com/rails/jbuilder/commit/7b8c8a1cb09b7f3dd26e5643ebbd6b2ec67185db)
|
123
|
-
|
124
|
-
2.1.1
|
125
|
-
-----
|
126
|
-
* [Remove unused file](https://github.com/rails/jbuilder/commit/e49e1047976fac93b8242ab212c7b1a463b70809)
|
127
|
-
|
128
|
-
2.1.0
|
129
|
-
-----
|
130
|
-
* [Blocks and their extract! shortcuts are additive by default](https://github.com/rails/jbuilder/commit/a49390736c5f6e2d7a31111df6531bc28dba9fb1)
|
131
|
-
|
132
|
-
2.0.8
|
133
|
-
-----
|
134
|
-
* [Eliminate circular dependencies](https://github.com/rails/jbuilder/commit/0879484dc74e7be93b695f66e3708ba48cdb1be3)
|
135
|
-
* [Support cache key generation for complex objects](https://github.com/rails/jbuilder/commit/ca9622cca30c1112dd4408fcb2e658849abe1dd5)
|
136
|
-
* [Remove JbuilderProxy class](https://github.com/rails/jbuilder/commit/5877482fc7da3224e42d4f72a1386f7a3a08173b)
|
137
|
-
* [Move KeyFormatter into a separate file](https://github.com/rails/jbuilder/commit/13fee8464ff53ce853030114283c03c135c052b6)
|
138
|
-
* [Move NullError into a separate file](https://github.com/rails/jbuilder/commit/13fee8464ff53ce853030114283c03c135c052b6)
|
139
|
-
|
140
|
-
2.0.7
|
141
|
-
-----
|
142
|
-
* [Add destroy notice to scaffold generator](https://github.com/rails/jbuilder/commit/8448e86f8cdfa0f517bd59576947875775a1d43c)
|
143
|
-
|
144
|
-
2.0.6
|
145
|
-
-----
|
146
|
-
* [Use render short form in controller generator](https://github.com/rails/jbuilder/commit/acf37320a7cea7fcc70c791bc94bd5f46b8349ff)
|
147
|
-
|
148
|
-
2.0.5
|
149
|
-
-----
|
150
|
-
* [Fix edgecase when json is defined as a method](https://github.com/rails/jbuilder/commit/ca711a0c0a5760e26258ce2d93c14bef8fff0ead)
|
151
|
-
|
152
|
-
2.0.4
|
153
|
-
-----
|
154
|
-
* [Add cache_if! to conditionally cache JSON fragments](https://github.com/rails/jbuilder/commit/14a5afd8a2c939a6fd710d355a194c114db96eb2)
|
155
|
-
|
156
|
-
2.0.3
|
157
|
-
-----
|
158
|
-
* [Pass options when calling cache_fragment_name](https://github.com/rails/jbuilder/commit/07c2cc7486fe9ef423d7bc821b83f6d485f330e0)
|
159
|
-
|
160
|
-
2.0.2
|
161
|
-
-----
|
162
|
-
* [Fix Dependency Tracking fail to detect single-quoted partial correctly](https://github.com/rails/jbuilder/commit/448679a6d3098eb34d137f782a05f1767711991a)
|
163
|
-
* [Prevent Dependency Tracker constants leaking into global namespace](https://github.com/rails/jbuilder/commit/3544b288b63f504f46fa8aafd1d17ee198d77536)
|
164
|
-
|
165
|
-
2.0.1
|
166
|
-
-----
|
167
|
-
* [Dependency tracking support for Rails 3 with cache_digest gem](https://github.com/rails/jbuilder/commit/6b471d7a38118e8f7645abec21955ef793401daf)
|
168
|
-
|
169
|
-
2.0.0
|
170
|
-
-----
|
171
|
-
* [Respond to PUT/PATCH API request with :ok](https://github.com/rails/jbuilder/commit/9dbce9c12181e89f8f472ac23c764ffe8438040a)
|
172
|
-
* [Remove Ruby 1.8 support](https://github.com/rails/jbuilder/commit/d53fff42d91f33d662eafc2561c4236687ecf6c9)
|
173
|
-
* [Remove deprecated two argument block call](https://github.com/rails/jbuilder/commit/07a35ee7e79ae4b06dba9dbff5c4e07c1e627218)
|
174
|
-
* [Make Jbuilder object initialize with single hash](https://github.com/rails/jbuilder/commit/38bf551db0189327aaa90b9be010c0d1b792c007)
|
175
|
-
* [Track template dependencies](https://github.com/rails/jbuilder/commit/8e73cea39f60da1384afd687cc8e5e399630d8cc)
|
176
|
-
* [Expose merge! method](https://github.com/rails/jbuilder/commit/0e2eb47f6f3c01add06a1a59b37cdda8baf24f29)
|
177
|
-
|
178
|
-
1.5.3
|
179
|
-
-----
|
180
|
-
* [Generators add `:id` column by default](https://github.com/rails/jbuilder/commit/0b52b86773e48ac2ce35d4155c7b70ad8b3e8937)
|
181
|
-
|
182
|
-
1.5.2
|
183
|
-
-----
|
184
|
-
* [Nil-collection should be treated as empty array](https://github.com/rails/jbuilder/commit/2f700bb00ab663c6b7fcb28d2967aeb989bd43c7)
|
185
|
-
|
186
|
-
1.5.1
|
187
|
-
-----
|
188
|
-
* [Expose template lookup options](https://github.com/rails/jbuilder/commit/404c18dee1af96ac6d8052a04062629ef1db2945)
|
189
|
-
|
190
|
-
1.5.0
|
191
|
-
-----
|
192
|
-
* [Do not perform any caching when `controller.perform_caching` is false](https://github.com/rails/jbuilder/commit/94633facde1ac43580f8cd5e13ae9cc83e1da8f4)
|
193
|
-
* [Add partial collection rendering](https://github.com/rails/jbuilder/commit/e8c10fc885e41b18178aaf4dcbc176961c928d76)
|
194
|
-
* [Deprecate extract! calling private methods](https://github.com/rails/jbuilder/commit/b9e19536c2105d7f2e813006bbcb8ca5730d28a3)
|
195
|
-
* [Add array of partials rendering](https://github.com/rails/jbuilder/commit/7d7311071720548047f98f14ad013c560b8d9c3a)
|
196
|
-
|
197
|
-
1.4.2
|
198
|
-
-----
|
199
|
-
* [Require MIME dependency explicitly](https://github.com/rails/jbuilder/commit/b1ed5ac4f08b056f8839b4b19b43562e81e02a59)
|
200
|
-
|
201
|
-
1.4.1
|
202
|
-
-----
|
203
|
-
* [Removed deprecated positioned arguments initializer support](https://github.com/rails/jbuilder/commit/6e03e0452073eeda77e6dfe66aa31e5ec67a3531)
|
204
|
-
* [Deprecate two-arguments block calling](https://github.com/rails/jbuilder/commit/2b10bb058bb12bc782cbcc16f6ec67b489e5ed43)
|
205
|
-
|
206
|
-
1.4.0
|
207
|
-
-----
|
208
|
-
* [Add quick collection attribute extraction](https://github.com/rails/jbuilder/commit/c2b966cf653ea4264fbb008b8cc6ce5359ebe40a)
|
209
|
-
* [Block has priority over attributes extraction](https://github.com/rails/jbuilder/commit/77c24766362c02769d81dac000b1879a9e4d4a00)
|
210
|
-
* [Meaningful error messages when adding properties to null](https://github.com/rails/jbuilder/commit/e26764602e34b3772e57e730763d512e59489e3b)
|
211
|
-
* [Do not enforce template format, enforce handlers instead](https://github.com/rails/jbuilder/commit/72576755224b15da45e50cbea877679800ab1398)
|
212
|
-
|
213
|
-
1.3.0
|
214
|
-
-----
|
215
|
-
* [Add nil! method for nil JSON](https://github.com/rails/jbuilder/commit/822a906f68664f61a1209336bb681077692c8475)
|
216
|
-
|
217
|
-
1.2.1
|
218
|
-
-----
|
219
|
-
* [Added explicit dependency for MultiJson](https://github.com/rails/jbuilder/commit/4d58eacb6cd613679fb243484ff73a79bbbff2d2)
|
220
|
-
|
221
|
-
1.2.0
|
222
|
-
-----
|
223
|
-
* Multiple documentation improvements and internal refactoring
|
224
|
-
* [Fixes fragment caching to work with latest digests](https://github.com/rails/jbuilder/commit/da937d6b8732124074c612abb7ff38868d1d96c0)
|
225
|
-
|
226
|
-
1.0.2
|
227
|
-
-----
|
228
|
-
* [Support non-Enumerable collections](https://github.com/rails/jbuilder/commit/4c20c59bf8131a1e419bb4ebf84f2b6bdcb6b0cf)
|
229
|
-
* [Ensure that the default URL is in json format](https://github.com/rails/jbuilder/commit/0b46782fb7b8c34a3c96afa801fe27a5a97118a4)
|
230
|
-
|
231
|
-
1.0.0
|
232
|
-
-----
|
233
|
-
* Adopt Semantic Versioning
|
234
|
-
* Add rails generators
|
data/gemfiles/rails_3_0.gemfile
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
# This file was generated by Appraisal
|
2
|
-
|
3
|
-
source "https://rubygems.org"
|
4
|
-
|
5
|
-
gem "rake"
|
6
|
-
gem "mocha", :require => false
|
7
|
-
gem "appraisal"
|
8
|
-
gem "pry"
|
9
|
-
gem "test-unit"
|
10
|
-
gem "railties", "~> 3.0.0"
|
11
|
-
gem "actionpack", "~> 3.0.0"
|
12
|
-
gem "activemodel", "~> 3.0.0"
|
13
|
-
|
14
|
-
gemspec :path => "../"
|
data/gemfiles/rails_3_1.gemfile
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
# This file was generated by Appraisal
|
2
|
-
|
3
|
-
source "https://rubygems.org"
|
4
|
-
|
5
|
-
gem "rake"
|
6
|
-
gem "mocha", :require => false
|
7
|
-
gem "appraisal"
|
8
|
-
gem "pry"
|
9
|
-
gem "test-unit"
|
10
|
-
gem "railties", "~> 3.1.0"
|
11
|
-
gem "actionpack", "~> 3.1.0"
|
12
|
-
gem "activemodel", "~> 3.1.0"
|
13
|
-
|
14
|
-
gemspec :path => "../"
|
data/gemfiles/rails_3_2.gemfile
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
# This file was generated by Appraisal
|
2
|
-
|
3
|
-
source "https://rubygems.org"
|
4
|
-
|
5
|
-
gem "rake"
|
6
|
-
gem "mocha", :require => false
|
7
|
-
gem "appraisal"
|
8
|
-
gem "pry"
|
9
|
-
gem "test-unit"
|
10
|
-
gem "railties", "~> 3.2.0"
|
11
|
-
gem "actionpack", "~> 3.2.0"
|
12
|
-
gem "activemodel", "~> 3.2.0"
|
13
|
-
|
14
|
-
gemspec :path => "../"
|
data/gemfiles/rails_4_0.gemfile
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
# This file was generated by Appraisal
|
2
|
-
|
3
|
-
source "https://rubygems.org"
|
4
|
-
|
5
|
-
gem "rake"
|
6
|
-
gem "mocha", :require => false
|
7
|
-
gem "appraisal"
|
8
|
-
gem "pry"
|
9
|
-
gem "railties", "~> 4.0.0"
|
10
|
-
gem "actionpack", "~> 4.0.0"
|
11
|
-
gem "activemodel", "~> 4.0.0"
|
12
|
-
|
13
|
-
gemspec :path => "../"
|
data/gemfiles/rails_4_1.gemfile
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
# This file was generated by Appraisal
|
2
|
-
|
3
|
-
source "https://rubygems.org"
|
4
|
-
|
5
|
-
gem "rake"
|
6
|
-
gem "mocha", :require => false
|
7
|
-
gem "appraisal"
|
8
|
-
gem "pry"
|
9
|
-
gem "railties", "~> 4.1.0"
|
10
|
-
gem "actionpack", "~> 4.1.0"
|
11
|
-
gem "activemodel", "~> 4.1.0"
|
12
|
-
|
13
|
-
gemspec :path => "../"
|
data/gemfiles/rails_4_2.gemfile
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
# This file was generated by Appraisal
|
2
|
-
|
3
|
-
source "https://rubygems.org"
|
4
|
-
|
5
|
-
gem "rake"
|
6
|
-
gem "mocha", :require => false
|
7
|
-
gem "appraisal"
|
8
|
-
gem "pry"
|
9
|
-
gem "railties", "~> 4.2.0"
|
10
|
-
gem "actionpack", "~> 4.2.0"
|
11
|
-
gem "activemodel", "~> 4.2.0"
|
12
|
-
|
13
|
-
gemspec :path => "../"
|