actionview 4.2.0.beta3 → 4.2.0.beta4
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of actionview might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/lib/action_view/gem_version.rb +1 -1
- data/lib/action_view/helpers/date_helper.rb +1 -1
- data/lib/action_view/helpers/form_helper.rb +2 -2
- data/lib/action_view/helpers/form_tag_helper.rb +25 -19
- data/lib/action_view/helpers/number_helper.rb +5 -5
- data/lib/action_view/helpers/sanitize_helper.rb +2 -2
- data/lib/action_view/helpers/tag_helper.rb +1 -1
- data/lib/action_view/helpers/text_helper.rb +1 -1
- data/lib/action_view/renderer/template_renderer.rb +1 -1
- data/lib/action_view/template.rb +7 -3
- data/lib/action_view/template/resolver.rb +9 -6
- data/lib/action_view/test_case.rb +1 -1
- data/lib/action_view/view_paths.rb +5 -1
- metadata +25 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d3e0b2b933e53444af04ebe433ac0c35aeb5e709
|
4
|
+
data.tar.gz: 6d88a40b83339917fa89ad355d655e7413f0804a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6e264edd52ab507f2b0f8f5e03a55c3e241d09316eaf072671d14d5ebeb60ed3a48d4cd630062adfe04ae9122d61e3291efe40c249eb2ff7d3260d0a5e2b9f78
|
7
|
+
data.tar.gz: fe4241fd0423e44d4e4dcd847a05f0780a789744d70d3aa12bd159c464a5fb65d33f5db8d90896b3e53bff7143bbc7c67900e1ac9ef768575a3b1496f29ef95e
|
data/CHANGELOG.md
CHANGED
@@ -1035,7 +1035,7 @@ module ActionView
|
|
1035
1035
|
def build_selects_from_types(order)
|
1036
1036
|
select = ''
|
1037
1037
|
first_visible = order.find { |type| !@options[:"discard_#{type}"] }
|
1038
|
-
order.
|
1038
|
+
order.reverse_each do |type|
|
1039
1039
|
separator = separator(type) unless type == first_visible # don't add before first visible field
|
1040
1040
|
select.insert(0, separator.to_s + send("select_#{type}").to_s)
|
1041
1041
|
end
|
@@ -1231,8 +1231,8 @@ module ActionView
|
|
1231
1231
|
# end
|
1232
1232
|
#
|
1233
1233
|
# The above code creates a new method +div_radio_button+ which wraps a div
|
1234
|
-
# around the
|
1235
|
-
# must
|
1234
|
+
# around the new radio button. Note that when options are passed in, you
|
1235
|
+
# must call +objectify_options+ in order for the model object to get
|
1236
1236
|
# correctly passed to the method. If +objectify_options+ is not called,
|
1237
1237
|
# then the newly created helper will not be linked back to the model.
|
1238
1238
|
#
|
@@ -133,12 +133,18 @@ module ActionView
|
|
133
133
|
option_tags ||= ""
|
134
134
|
html_name = (options[:multiple] == true && !name.to_s.ends_with?("[]")) ? "#{name}[]" : name
|
135
135
|
|
136
|
-
if options.
|
137
|
-
|
136
|
+
if options.include?(:include_blank)
|
137
|
+
include_blank = options.delete(:include_blank)
|
138
|
+
|
139
|
+
if include_blank == true
|
140
|
+
include_blank = ''
|
141
|
+
end
|
142
|
+
|
143
|
+
option_tags = content_tag(:option, include_blank, value: '').safe_concat(option_tags)
|
138
144
|
end
|
139
145
|
|
140
146
|
if prompt = options.delete(:prompt)
|
141
|
-
option_tags = content_tag(:option, prompt, :
|
147
|
+
option_tags = content_tag(:option, prompt, value: '').safe_concat(option_tags)
|
142
148
|
end
|
143
149
|
|
144
150
|
content_tag :select, option_tags, { "name" => html_name, "id" => sanitize_to_id(name) }.update(options.stringify_keys)
|
@@ -224,7 +230,7 @@ module ActionView
|
|
224
230
|
# # => <input id="collected_input" name="collected_input" onchange="alert('Input collected!')"
|
225
231
|
# # type="hidden" value="" />
|
226
232
|
def hidden_field_tag(name, value = nil, options = {})
|
227
|
-
text_field_tag(name, value, options.
|
233
|
+
text_field_tag(name, value, options.merge(type: :hidden))
|
228
234
|
end
|
229
235
|
|
230
236
|
# Creates a file upload field. If you are using file uploads then you will also need
|
@@ -263,7 +269,7 @@ module ActionView
|
|
263
269
|
# file_field_tag 'file', accept: 'text/html', class: 'upload', value: 'index.html'
|
264
270
|
# # => <input accept="text/html" class="upload" id="file" name="file" type="file" value="index.html" />
|
265
271
|
def file_field_tag(name, options = {})
|
266
|
-
text_field_tag(name, nil, options.
|
272
|
+
text_field_tag(name, nil, options.merge(type: :file))
|
267
273
|
end
|
268
274
|
|
269
275
|
# Creates a password field, a masked text field that will hide the users input behind a mask character.
|
@@ -296,7 +302,7 @@ module ActionView
|
|
296
302
|
# password_field_tag 'pin', '1234', maxlength: 4, size: 6, class: "pin_input"
|
297
303
|
# # => <input class="pin_input" id="pin" maxlength="4" name="pin" size="6" type="password" value="1234" />
|
298
304
|
def password_field_tag(name = "password", value = nil, options = {})
|
299
|
-
text_field_tag(name, value, options.
|
305
|
+
text_field_tag(name, value, options.merge(type: :password))
|
300
306
|
end
|
301
307
|
|
302
308
|
# Creates a text input area; use a textarea for longer text inputs such as blog posts or descriptions.
|
@@ -571,7 +577,7 @@ module ActionView
|
|
571
577
|
# color_field_tag 'color', '#DEF726', class: 'special_input', disabled: true
|
572
578
|
# # => <input disabled="disabled" class="special_input" id="color" name="color" type="color" value="#DEF726" />
|
573
579
|
def color_field_tag(name, value = nil, options = {})
|
574
|
-
text_field_tag(name, value, options.
|
580
|
+
text_field_tag(name, value, options.merge(type: :color))
|
575
581
|
end
|
576
582
|
|
577
583
|
# Creates a text field of type "search".
|
@@ -592,7 +598,7 @@ module ActionView
|
|
592
598
|
# search_field_tag 'search', 'Enter your search query here', class: 'special_input', disabled: true
|
593
599
|
# # => <input disabled="disabled" class="special_input" id="search" name="search" type="search" value="Enter your search query here" />
|
594
600
|
def search_field_tag(name, value = nil, options = {})
|
595
|
-
text_field_tag(name, value, options.
|
601
|
+
text_field_tag(name, value, options.merge(type: :search))
|
596
602
|
end
|
597
603
|
|
598
604
|
# Creates a text field of type "tel".
|
@@ -613,7 +619,7 @@ module ActionView
|
|
613
619
|
# telephone_field_tag 'tel', '0123456789', class: 'special_input', disabled: true
|
614
620
|
# # => <input disabled="disabled" class="special_input" id="tel" name="tel" type="tel" value="0123456789" />
|
615
621
|
def telephone_field_tag(name, value = nil, options = {})
|
616
|
-
text_field_tag(name, value, options.
|
622
|
+
text_field_tag(name, value, options.merge(type: :tel))
|
617
623
|
end
|
618
624
|
alias phone_field_tag telephone_field_tag
|
619
625
|
|
@@ -635,7 +641,7 @@ module ActionView
|
|
635
641
|
# date_field_tag 'date', '01/01/2014', class: 'special_input', disabled: true
|
636
642
|
# # => <input disabled="disabled" class="special_input" id="date" name="date" type="date" value="01/01/2014" />
|
637
643
|
def date_field_tag(name, value = nil, options = {})
|
638
|
-
text_field_tag(name, value, options.
|
644
|
+
text_field_tag(name, value, options.merge(type: :date))
|
639
645
|
end
|
640
646
|
|
641
647
|
# Creates a text field of type "time".
|
@@ -646,7 +652,7 @@ module ActionView
|
|
646
652
|
# * <tt>:step</tt> - The acceptable value granularity.
|
647
653
|
# * Otherwise accepts the same options as text_field_tag.
|
648
654
|
def time_field_tag(name, value = nil, options = {})
|
649
|
-
text_field_tag(name, value, options.
|
655
|
+
text_field_tag(name, value, options.merge(type: :time))
|
650
656
|
end
|
651
657
|
|
652
658
|
# Creates a text field of type "datetime".
|
@@ -657,7 +663,7 @@ module ActionView
|
|
657
663
|
# * <tt>:step</tt> - The acceptable value granularity.
|
658
664
|
# * Otherwise accepts the same options as text_field_tag.
|
659
665
|
def datetime_field_tag(name, value = nil, options = {})
|
660
|
-
text_field_tag(name, value, options.
|
666
|
+
text_field_tag(name, value, options.merge(type: :datetime))
|
661
667
|
end
|
662
668
|
|
663
669
|
# Creates a text field of type "datetime-local".
|
@@ -668,7 +674,7 @@ module ActionView
|
|
668
674
|
# * <tt>:step</tt> - The acceptable value granularity.
|
669
675
|
# * Otherwise accepts the same options as text_field_tag.
|
670
676
|
def datetime_local_field_tag(name, value = nil, options = {})
|
671
|
-
text_field_tag(name, value, options.
|
677
|
+
text_field_tag(name, value, options.merge(type: 'datetime-local'))
|
672
678
|
end
|
673
679
|
|
674
680
|
# Creates a text field of type "month".
|
@@ -679,7 +685,7 @@ module ActionView
|
|
679
685
|
# * <tt>:step</tt> - The acceptable value granularity.
|
680
686
|
# * Otherwise accepts the same options as text_field_tag.
|
681
687
|
def month_field_tag(name, value = nil, options = {})
|
682
|
-
text_field_tag(name, value, options.
|
688
|
+
text_field_tag(name, value, options.merge(type: :month))
|
683
689
|
end
|
684
690
|
|
685
691
|
# Creates a text field of type "week".
|
@@ -690,7 +696,7 @@ module ActionView
|
|
690
696
|
# * <tt>:step</tt> - The acceptable value granularity.
|
691
697
|
# * Otherwise accepts the same options as text_field_tag.
|
692
698
|
def week_field_tag(name, value = nil, options = {})
|
693
|
-
text_field_tag(name, value, options.
|
699
|
+
text_field_tag(name, value, options.merge(type: :week))
|
694
700
|
end
|
695
701
|
|
696
702
|
# Creates a text field of type "url".
|
@@ -711,7 +717,7 @@ module ActionView
|
|
711
717
|
# url_field_tag 'url', 'http://rubyonrails.org', class: 'special_input', disabled: true
|
712
718
|
# # => <input disabled="disabled" class="special_input" id="url" name="url" type="url" value="http://rubyonrails.org" />
|
713
719
|
def url_field_tag(name, value = nil, options = {})
|
714
|
-
text_field_tag(name, value, options.
|
720
|
+
text_field_tag(name, value, options.merge(type: :url))
|
715
721
|
end
|
716
722
|
|
717
723
|
# Creates a text field of type "email".
|
@@ -732,7 +738,7 @@ module ActionView
|
|
732
738
|
# email_field_tag 'email', 'email@example.com', class: 'special_input', disabled: true
|
733
739
|
# # => <input disabled="disabled" class="special_input" id="email" name="email" type="email" value="email@example.com" />
|
734
740
|
def email_field_tag(name, value = nil, options = {})
|
735
|
-
text_field_tag(name, value, options.
|
741
|
+
text_field_tag(name, value, options.merge(type: :email))
|
736
742
|
end
|
737
743
|
|
738
744
|
# Creates a number field.
|
@@ -790,7 +796,7 @@ module ActionView
|
|
790
796
|
# ==== Options
|
791
797
|
# * Accepts the same options as number_field_tag.
|
792
798
|
def range_field_tag(name, value = nil, options = {})
|
793
|
-
number_field_tag(name, value, options.
|
799
|
+
number_field_tag(name, value, options.merge(type: :range))
|
794
800
|
end
|
795
801
|
|
796
802
|
# Creates the hidden UTF8 enforcer tag. Override this method in a helper
|
@@ -862,7 +868,7 @@ module ActionView
|
|
862
868
|
|
863
869
|
# see http://www.w3.org/TR/html4/types.html#type-name
|
864
870
|
def sanitize_to_id(name)
|
865
|
-
name.to_s.delete(']').
|
871
|
+
name.to_s.delete(']').tr('^-a-zA-Z0-9:.', "_")
|
866
872
|
end
|
867
873
|
end
|
868
874
|
end
|
@@ -306,12 +306,12 @@ module ActionView
|
|
306
306
|
# string containing an i18n scope where to find this hash. It
|
307
307
|
# might have the following keys:
|
308
308
|
# * *integers*: <tt>:unit</tt>, <tt>:ten</tt>,
|
309
|
-
#
|
310
|
-
#
|
311
|
-
#
|
309
|
+
# <tt>:hundred</tt>, <tt>:thousand</tt>, <tt>:million</tt>,
|
310
|
+
# <tt>:billion</tt>, <tt>:trillion</tt>,
|
311
|
+
# <tt>:quadrillion</tt>
|
312
312
|
# * *fractionals*: <tt>:deci</tt>, <tt>:centi</tt>,
|
313
|
-
#
|
314
|
-
#
|
313
|
+
# <tt>:mili</tt>, <tt>:micro</tt>, <tt>:nano</tt>,
|
314
|
+
# <tt>:pico</tt>, <tt>:femto</tt>
|
315
315
|
# * <tt>:format</tt> - Sets the format of the output string
|
316
316
|
# (defaults to "%n %u"). The field types are:
|
317
317
|
# * %u - The quantifier (ex.: 'thousand')
|
@@ -57,7 +57,7 @@ module ActionView
|
|
57
57
|
# Add table tags to the default allowed tags
|
58
58
|
#
|
59
59
|
# class Application < Rails::Application
|
60
|
-
# config.action_view.sanitized_allowed_tags = 'table', 'tr', 'td'
|
60
|
+
# config.action_view.sanitized_allowed_tags = ['table', 'tr', 'td']
|
61
61
|
# end
|
62
62
|
#
|
63
63
|
# Remove tags to the default allowed tags
|
@@ -176,7 +176,7 @@ module ActionView
|
|
176
176
|
# Replaces the allowed tags for the +sanitize+ helper.
|
177
177
|
#
|
178
178
|
# class Application < Rails::Application
|
179
|
-
# config.action_view.sanitized_allowed_tags = 'table', 'tr', 'td'
|
179
|
+
# config.action_view.sanitized_allowed_tags = ['table', 'tr', 'td']
|
180
180
|
# end
|
181
181
|
#
|
182
182
|
|
@@ -18,7 +18,7 @@ module ActionView
|
|
18
18
|
|
19
19
|
# Determine the template to be rendered using the given options.
|
20
20
|
def determine_template(options)
|
21
|
-
keys = options.
|
21
|
+
keys = options.has_key?(:locals) ? options[:locals].keys : []
|
22
22
|
|
23
23
|
if options.key?(:body)
|
24
24
|
Template::Text.new(options[:body])
|
data/lib/action_view/template.rb
CHANGED
@@ -313,15 +313,19 @@ module ActionView
|
|
313
313
|
|
314
314
|
def locals_code #:nodoc:
|
315
315
|
# Double assign to suppress the dreaded 'assigned but unused variable' warning
|
316
|
-
@locals.
|
316
|
+
@locals.each_with_object('') { |key, code| code << "#{key} = #{key} = local_assigns[:#{key}];" }
|
317
317
|
end
|
318
318
|
|
319
319
|
def method_name #:nodoc:
|
320
|
-
@method_name ||=
|
320
|
+
@method_name ||= begin
|
321
|
+
m = "_#{identifier_method_name}__#{@identifier.hash}_#{__id__}"
|
322
|
+
m.tr!('-', '_')
|
323
|
+
m
|
324
|
+
end
|
321
325
|
end
|
322
326
|
|
323
327
|
def identifier_method_name #:nodoc:
|
324
|
-
inspect.
|
328
|
+
inspect.tr('^a-z_', '_')
|
325
329
|
end
|
326
330
|
|
327
331
|
def instrument(action, &block)
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require "pathname"
|
2
2
|
require "active_support/core_ext/class"
|
3
3
|
require "active_support/core_ext/module/attribute_accessors"
|
4
|
+
require 'active_support/core_ext/string/filters'
|
4
5
|
require "action_view/template"
|
5
6
|
require "thread"
|
6
7
|
require "thread_safe"
|
@@ -251,9 +252,10 @@ module ActionView
|
|
251
252
|
|
252
253
|
extension = pieces.pop
|
253
254
|
unless extension
|
254
|
-
|
255
|
-
|
256
|
-
|
255
|
+
ActiveSupport::Deprecation.warn(<<-MSG.squish)
|
256
|
+
The file #{path} did not specify a template handler. The default is
|
257
|
+
currently ERB, but will change to RAW in the future.
|
258
|
+
MSG
|
257
259
|
end
|
258
260
|
|
259
261
|
handler = Template.handler_for_extension(extension)
|
@@ -272,13 +274,13 @@ module ActionView
|
|
272
274
|
# Default pattern, loads views the same way as previous versions of rails, eg. when you're
|
273
275
|
# looking for `users/new` it will produce query glob: `users/new{.{en},}{.{html,js},}{.{erb,haml},}`
|
274
276
|
#
|
275
|
-
# FileSystemResolver.new("/path/to/views", ":prefix/:action{.:locale,}{.:formats,}{.:handlers,}")
|
277
|
+
# FileSystemResolver.new("/path/to/views", ":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}")
|
276
278
|
#
|
277
279
|
# This one allows you to keep files with different formats in separate subdirectories,
|
278
280
|
# eg. `users/new.html` will be loaded from `users/html/new.erb` or `users/new.html.erb`,
|
279
281
|
# `users/new.js` from `users/js/new.erb` or `users/new.js.erb`, etc.
|
280
282
|
#
|
281
|
-
# FileSystemResolver.new("/path/to/views", ":prefix/{:formats/,}:action{.:locale,}{.:formats,}{.:handlers,}")
|
283
|
+
# FileSystemResolver.new("/path/to/views", ":prefix/{:formats/,}:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}")
|
282
284
|
#
|
283
285
|
# If you don't specify a pattern then the default will be used.
|
284
286
|
#
|
@@ -287,7 +289,7 @@ module ActionView
|
|
287
289
|
#
|
288
290
|
# ActionController::Base.view_paths = FileSystemResolver.new(
|
289
291
|
# Rails.root.join("app/views"),
|
290
|
-
# ":prefix{/:locale}/:action{.:formats,}{.:handlers,}"
|
292
|
+
# ":prefix{/:locale}/:action{.:formats,}{+:variants,}{.:handlers,}"
|
291
293
|
# )
|
292
294
|
#
|
293
295
|
# ==== Pattern format and variables
|
@@ -299,6 +301,7 @@ module ActionView
|
|
299
301
|
# * <tt>:action</tt> - name of the action
|
300
302
|
# * <tt>:locale</tt> - possible locale versions
|
301
303
|
# * <tt>:formats</tt> - possible request formats (for example html, json, xml...)
|
304
|
+
# * <tt>:variants</tt> - possible request variants (for example phone, tablet...)
|
302
305
|
# * <tt>:handlers</tt> - possible handlers (for example erb, haml, builder...)
|
303
306
|
#
|
304
307
|
class FileSystemResolver < PathResolver
|
@@ -158,7 +158,7 @@ module ActionView
|
|
158
158
|
|
159
159
|
# Need to experiment if this priority is the best one: rendered => output_buffer
|
160
160
|
def document_root_element
|
161
|
-
Nokogiri::HTML::
|
161
|
+
Nokogiri::HTML::DocumentFragment.parse(@rendered.blank? ? @output_buffer : @rendered)
|
162
162
|
end
|
163
163
|
|
164
164
|
def say_no_to_protect_against_forgery!
|
@@ -38,7 +38,11 @@ module ActionView
|
|
38
38
|
def handle_deprecated_parent_prefixes # TODO: remove in 4.3/5.0.
|
39
39
|
return unless respond_to?(:parent_prefixes)
|
40
40
|
|
41
|
-
ActiveSupport::Deprecation.warn
|
41
|
+
ActiveSupport::Deprecation.warn(<<-MSG.squish)
|
42
|
+
Overriding `ActionController::Base::parent_prefixes` is deprecated,
|
43
|
+
override `.local_prefixes` instead.
|
44
|
+
MSG
|
45
|
+
|
42
46
|
local_prefixes + parent_prefixes
|
43
47
|
end
|
44
48
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: actionview
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.2.0.
|
4
|
+
version: 4.2.0.beta4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
11
|
+
date: 2014-10-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,110 +16,110 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 4.2.0.
|
19
|
+
version: 4.2.0.beta4
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 4.2.0.
|
26
|
+
version: 4.2.0.beta4
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: builder
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ~>
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '3.1'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ~>
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '3.1'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: erubis
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ~>
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: 2.7.0
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 2.7.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rails-html-sanitizer
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ~>
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '1.0'
|
62
|
-
- -
|
62
|
+
- - '>='
|
63
63
|
- !ruby/object:Gem::Version
|
64
64
|
version: 1.0.1
|
65
65
|
type: :runtime
|
66
66
|
prerelease: false
|
67
67
|
version_requirements: !ruby/object:Gem::Requirement
|
68
68
|
requirements:
|
69
|
-
- -
|
69
|
+
- - ~>
|
70
70
|
- !ruby/object:Gem::Version
|
71
71
|
version: '1.0'
|
72
|
-
- -
|
72
|
+
- - '>='
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: 1.0.1
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: rails-dom-testing
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
78
78
|
requirements:
|
79
|
-
- -
|
79
|
+
- - ~>
|
80
80
|
- !ruby/object:Gem::Version
|
81
81
|
version: '1.0'
|
82
|
-
- -
|
82
|
+
- - '>='
|
83
83
|
- !ruby/object:Gem::Version
|
84
|
-
version: 1.0.
|
84
|
+
version: 1.0.4
|
85
85
|
type: :runtime
|
86
86
|
prerelease: false
|
87
87
|
version_requirements: !ruby/object:Gem::Requirement
|
88
88
|
requirements:
|
89
|
-
- -
|
89
|
+
- - ~>
|
90
90
|
- !ruby/object:Gem::Version
|
91
91
|
version: '1.0'
|
92
|
-
- -
|
92
|
+
- - '>='
|
93
93
|
- !ruby/object:Gem::Version
|
94
|
-
version: 1.0.
|
94
|
+
version: 1.0.4
|
95
95
|
- !ruby/object:Gem::Dependency
|
96
96
|
name: actionpack
|
97
97
|
requirement: !ruby/object:Gem::Requirement
|
98
98
|
requirements:
|
99
99
|
- - '='
|
100
100
|
- !ruby/object:Gem::Version
|
101
|
-
version: 4.2.0.
|
101
|
+
version: 4.2.0.beta4
|
102
102
|
type: :development
|
103
103
|
prerelease: false
|
104
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
105
|
requirements:
|
106
106
|
- - '='
|
107
107
|
- !ruby/object:Gem::Version
|
108
|
-
version: 4.2.0.
|
108
|
+
version: 4.2.0.beta4
|
109
109
|
- !ruby/object:Gem::Dependency
|
110
110
|
name: activemodel
|
111
111
|
requirement: !ruby/object:Gem::Requirement
|
112
112
|
requirements:
|
113
113
|
- - '='
|
114
114
|
- !ruby/object:Gem::Version
|
115
|
-
version: 4.2.0.
|
115
|
+
version: 4.2.0.beta4
|
116
116
|
type: :development
|
117
117
|
prerelease: false
|
118
118
|
version_requirements: !ruby/object:Gem::Requirement
|
119
119
|
requirements:
|
120
120
|
- - '='
|
121
121
|
- !ruby/object:Gem::Version
|
122
|
-
version: 4.2.0.
|
122
|
+
version: 4.2.0.beta4
|
123
123
|
description: Simple, battle-tested conventions and helpers for building web pages.
|
124
124
|
email: david@loudthinking.com
|
125
125
|
executables: []
|
@@ -236,18 +236,18 @@ require_paths:
|
|
236
236
|
- lib
|
237
237
|
required_ruby_version: !ruby/object:Gem::Requirement
|
238
238
|
requirements:
|
239
|
-
- -
|
239
|
+
- - '>='
|
240
240
|
- !ruby/object:Gem::Version
|
241
241
|
version: 1.9.3
|
242
242
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
243
243
|
requirements:
|
244
|
-
- -
|
244
|
+
- - '>'
|
245
245
|
- !ruby/object:Gem::Version
|
246
246
|
version: 1.3.1
|
247
247
|
requirements:
|
248
248
|
- none
|
249
249
|
rubyforge_project:
|
250
|
-
rubygems_version: 2.2.
|
250
|
+
rubygems_version: 2.2.1
|
251
251
|
signing_key:
|
252
252
|
specification_version: 4
|
253
253
|
summary: Rendering framework putting the V in MVC (part of Rails).
|