actionpack 3.1.12 → 3.2.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of actionpack might be problematic. Click here for more details.
- data/CHANGELOG.md +5503 -108
- data/README.rdoc +3 -3
- data/lib/abstract_controller/asset_paths.rb +1 -1
- data/lib/abstract_controller/base.rb +1 -1
- data/lib/abstract_controller/callbacks.rb +102 -18
- data/lib/abstract_controller/helpers.rb +1 -1
- data/lib/abstract_controller/layouts.rb +116 -50
- data/lib/abstract_controller/logger.rb +1 -1
- data/lib/abstract_controller/railties/routes_helpers.rb +2 -2
- data/lib/abstract_controller/rendering.rb +1 -6
- data/lib/abstract_controller/view_paths.rb +6 -5
- data/lib/action_controller.rb +0 -15
- data/lib/action_controller/caching.rb +0 -1
- data/lib/action_controller/caching/actions.rb +5 -6
- data/lib/action_controller/caching/fragments.rb +18 -18
- data/lib/action_controller/caching/pages.rb +7 -6
- data/lib/action_controller/caching/sweeping.rb +1 -1
- data/lib/action_controller/log_subscriber.rb +8 -4
- data/lib/action_controller/metal.rb +7 -1
- data/lib/action_controller/metal/conditional_get.rb +49 -4
- data/lib/action_controller/metal/data_streaming.rb +17 -5
- data/lib/action_controller/metal/force_ssl.rb +8 -5
- data/lib/action_controller/metal/helpers.rb +7 -4
- data/lib/action_controller/metal/http_authentication.rb +9 -12
- data/lib/action_controller/metal/instrumentation.rb +9 -4
- data/lib/action_controller/metal/mime_responds.rb +4 -4
- data/lib/action_controller/metal/params_wrapper.rb +12 -8
- data/lib/action_controller/metal/redirecting.rb +7 -6
- data/lib/action_controller/metal/renderers.rb +9 -11
- data/lib/action_controller/metal/request_forgery_protection.rb +2 -1
- data/lib/action_controller/metal/rescue.rb +13 -0
- data/lib/action_controller/metal/responder.rb +11 -23
- data/lib/action_controller/metal/streaming.rb +0 -25
- data/lib/action_controller/railtie.rb +1 -0
- data/lib/action_controller/railties/paths.rb +4 -3
- data/lib/action_controller/record_identifier.rb +4 -4
- data/lib/action_controller/test_case.rb +60 -56
- data/lib/action_controller/vendor/html-scanner/html/sanitizer.rb +6 -6
- data/lib/action_dispatch.rb +5 -1
- data/lib/action_dispatch/http/cache.rb +27 -15
- data/lib/action_dispatch/http/filter_parameters.rb +3 -1
- data/lib/action_dispatch/http/headers.rb +3 -5
- data/lib/action_dispatch/http/mime_negotiation.rb +2 -1
- data/lib/action_dispatch/http/mime_type.rb +7 -3
- data/lib/action_dispatch/http/mime_types.rb +12 -0
- data/lib/action_dispatch/http/parameter_filter.rb +3 -1
- data/lib/action_dispatch/http/parameters.rb +0 -4
- data/lib/action_dispatch/http/request.rb +18 -68
- data/lib/action_dispatch/http/response.rb +11 -32
- data/lib/action_dispatch/http/upload.rb +3 -14
- data/lib/action_dispatch/http/url.rb +1 -1
- data/lib/action_dispatch/middleware/callbacks.rb +1 -2
- data/lib/action_dispatch/middleware/cookies.rb +20 -16
- data/lib/action_dispatch/middleware/debug_exceptions.rb +82 -0
- data/lib/action_dispatch/middleware/exception_wrapper.rb +78 -0
- data/lib/action_dispatch/middleware/flash.rb +6 -9
- data/lib/action_dispatch/middleware/params_parser.rb +6 -11
- data/lib/action_dispatch/middleware/public_exceptions.rb +30 -0
- data/lib/action_dispatch/middleware/reloader.rb +38 -14
- data/lib/action_dispatch/middleware/remote_ip.rb +66 -36
- data/lib/action_dispatch/middleware/request_id.rb +39 -0
- data/lib/action_dispatch/middleware/session/abstract_store.rb +4 -16
- data/lib/action_dispatch/middleware/session/cache_store.rb +50 -0
- data/lib/action_dispatch/middleware/session/cookie_store.rb +1 -1
- data/lib/action_dispatch/middleware/show_exceptions.rb +58 -142
- data/lib/action_dispatch/middleware/static.rb +2 -10
- data/lib/action_dispatch/middleware/templates/rescues/layout.erb +1 -0
- data/lib/action_dispatch/middleware/templates/rescues/routing_error.erb +13 -8
- data/lib/action_dispatch/railtie.rb +15 -1
- data/lib/action_dispatch/routing.rb +1 -2
- data/lib/action_dispatch/routing/mapper.rb +108 -107
- data/lib/action_dispatch/routing/redirection.rb +63 -69
- data/lib/action_dispatch/routing/route_set.rb +75 -43
- data/lib/action_dispatch/routing/routes_proxy.rb +0 -4
- data/lib/action_dispatch/routing/url_for.rb +3 -3
- data/lib/action_dispatch/testing/assertions/response.rb +5 -7
- data/lib/action_dispatch/testing/assertions/routing.rb +10 -9
- data/lib/action_dispatch/testing/integration.rb +8 -25
- data/lib/action_dispatch/testing/test_process.rb +3 -2
- data/lib/action_dispatch/testing/test_request.rb +4 -23
- data/lib/action_pack/version.rb +3 -3
- data/lib/action_view.rb +1 -5
- data/lib/action_view/asset_paths.rb +7 -8
- data/lib/action_view/base.rb +7 -5
- data/lib/action_view/helpers/asset_paths.rb +1 -1
- data/lib/action_view/helpers/asset_tag_helper.rb +4 -8
- data/lib/action_view/helpers/asset_tag_helpers/stylesheet_tag_helpers.rb +3 -0
- data/lib/action_view/helpers/atom_feed_helper.rb +2 -2
- data/lib/action_view/helpers/capture_helper.rb +3 -3
- data/lib/action_view/helpers/controller_helper.rb +1 -1
- data/lib/action_view/helpers/date_helper.rb +26 -18
- data/lib/action_view/helpers/debug_helper.rb +1 -1
- data/lib/action_view/helpers/form_helper.rb +71 -13
- data/lib/action_view/helpers/form_options_helper.rb +65 -34
- data/lib/action_view/helpers/form_tag_helper.rb +24 -18
- data/lib/action_view/helpers/javascript_helper.rb +12 -3
- data/lib/action_view/helpers/number_helper.rb +3 -2
- data/lib/action_view/helpers/record_tag_helper.rb +51 -5
- data/lib/action_view/helpers/rendering_helper.rb +2 -2
- data/lib/action_view/helpers/sanitize_helper.rb +6 -7
- data/lib/action_view/helpers/tag_helper.rb +1 -1
- data/lib/action_view/helpers/text_helper.rb +5 -4
- data/lib/action_view/helpers/url_helper.rb +19 -11
- data/lib/action_view/locale/en.yml +6 -0
- data/lib/action_view/log_subscriber.rb +1 -1
- data/lib/action_view/lookup_context.rb +123 -125
- data/lib/action_view/path_set.rb +60 -13
- data/lib/action_view/renderer/abstract_renderer.rb +16 -11
- data/lib/action_view/renderer/partial_renderer.rb +59 -40
- data/lib/action_view/renderer/template_renderer.rb +29 -17
- data/lib/action_view/template.rb +0 -1
- data/lib/action_view/template/error.rb +6 -5
- data/lib/action_view/template/handlers.rb +0 -6
- data/lib/action_view/template/handlers/builder.rb +10 -1
- data/lib/action_view/template/handlers/erb.rb +2 -2
- data/lib/action_view/template/resolver.rb +20 -31
- data/lib/action_view/test_case.rb +7 -10
- data/lib/sprockets/assets.rake +1 -1
- data/lib/sprockets/bootstrap.rb +3 -31
- data/lib/sprockets/compressors.rb +69 -7
- data/lib/sprockets/helpers/rails_helper.rb +6 -11
- data/lib/sprockets/railtie.rb +1 -0
- data/lib/sprockets/static_compiler.rb +0 -3
- metadata +57 -86
- checksums.yaml +0 -7
- data/lib/action_dispatch/middleware/closed_error.rb +0 -7
- data/lib/action_dispatch/routing/route.rb +0 -67
- data/lib/action_view/template/handler.rb +0 -49
@@ -1,5 +1,6 @@
|
|
1
1
|
require "pathname"
|
2
2
|
require "active_support/core_ext/class"
|
3
|
+
require "active_support/core_ext/io"
|
3
4
|
require "action_view/template"
|
4
5
|
|
5
6
|
module ActionView
|
@@ -68,7 +69,7 @@ module ActionView
|
|
68
69
|
# before returning it.
|
69
70
|
def cached(key, path_info, details, locals) #:nodoc:
|
70
71
|
name, prefix, partial = path_info
|
71
|
-
locals =
|
72
|
+
locals = locals.map { |x| x.to_s }.sort!
|
72
73
|
|
73
74
|
if key && caching?
|
74
75
|
@cached[key][name][prefix][partial][locals] ||= decorate(yield, path_info, details, locals)
|
@@ -97,18 +98,6 @@ module ActionView
|
|
97
98
|
t.virtual_path ||= (cached ||= build_path(*path_info))
|
98
99
|
end
|
99
100
|
end
|
100
|
-
|
101
|
-
if :symbol.respond_to?("<=>")
|
102
|
-
def sort_locals(locals) #:nodoc:
|
103
|
-
locals.sort.freeze
|
104
|
-
end
|
105
|
-
else
|
106
|
-
def sort_locals(locals) #:nodoc:
|
107
|
-
locals = locals.map{ |l| l.to_s }
|
108
|
-
locals.sort!
|
109
|
-
locals.freeze
|
110
|
-
end
|
111
|
-
end
|
112
101
|
end
|
113
102
|
|
114
103
|
# An abstract class that implements a Resolver with path semantics.
|
@@ -130,20 +119,24 @@ module ActionView
|
|
130
119
|
|
131
120
|
def query(path, details, formats)
|
132
121
|
query = build_query(path, details)
|
133
|
-
templates = []
|
134
|
-
sanitizer = Hash.new { |h,k| h[k] = Dir["#{File.dirname(k)}/*"] }
|
135
122
|
|
136
|
-
|
137
|
-
|
123
|
+
# deals with case-insensitive file systems.
|
124
|
+
sanitizer = Hash.new { |h,dir| h[dir] = Dir["#{dir}/*"] }
|
138
125
|
|
139
|
-
|
140
|
-
|
126
|
+
template_paths = Dir[query].reject { |filename|
|
127
|
+
File.directory?(filename) ||
|
128
|
+
!sanitizer[File.dirname(filename)].include?(filename)
|
129
|
+
}
|
141
130
|
|
142
|
-
|
143
|
-
|
144
|
-
|
131
|
+
template_paths.map { |template|
|
132
|
+
handler, format = extract_handler_and_format(template, formats)
|
133
|
+
contents = File.binread template
|
145
134
|
|
146
|
-
|
135
|
+
Template.new(contents, File.expand_path(template), handler,
|
136
|
+
:virtual_path => path.virtual,
|
137
|
+
:format => format,
|
138
|
+
:updated_at => mtime(template))
|
139
|
+
}
|
147
140
|
end
|
148
141
|
|
149
142
|
# Helper for building query glob string based on resolver's pattern.
|
@@ -169,7 +162,7 @@ module ActionView
|
|
169
162
|
|
170
163
|
# Returns the file mtime from the filesystem.
|
171
164
|
def mtime(p)
|
172
|
-
File.
|
165
|
+
File.mtime(p)
|
173
166
|
end
|
174
167
|
|
175
168
|
# Extract handler and formats from path. If a format cannot be a found neither
|
@@ -245,13 +238,9 @@ module ActionView
|
|
245
238
|
exts = EXTENSIONS.map { |ext| details[ext] }
|
246
239
|
query = escape_entry(File.join(@path, path))
|
247
240
|
|
248
|
-
exts.
|
249
|
-
|
250
|
-
|
251
|
-
query << "}"
|
252
|
-
end
|
253
|
-
|
254
|
-
query
|
241
|
+
query + exts.map { |ext|
|
242
|
+
"{#{ext.compact.uniq.map { |e| ".#{e}," }.join}}"
|
243
|
+
}.join
|
255
244
|
end
|
256
245
|
end
|
257
246
|
|
@@ -50,14 +50,17 @@ module ActionView
|
|
50
50
|
|
51
51
|
module ClassMethods
|
52
52
|
def tests(helper_class)
|
53
|
-
|
53
|
+
case helper_class
|
54
|
+
when String, Symbol
|
55
|
+
self.helper_class = "#{helper_class.to_s.underscore}_helper".camelize.safe_constantize
|
56
|
+
when Module
|
57
|
+
self.helper_class = helper_class
|
58
|
+
end
|
54
59
|
end
|
55
60
|
|
56
61
|
def determine_default_helper_class(name)
|
57
|
-
mod = name.sub(/Test$/, '').
|
62
|
+
mod = name.sub(/Test$/, '').safe_constantize
|
58
63
|
mod.is_a?(Class) ? nil : mod
|
59
|
-
rescue NameError
|
60
|
-
nil
|
61
64
|
end
|
62
65
|
|
63
66
|
def helper_method(*methods)
|
@@ -218,12 +221,6 @@ module ActionView
|
|
218
221
|
end]
|
219
222
|
end
|
220
223
|
|
221
|
-
def _assigns
|
222
|
-
ActiveSupport::Deprecation.warn "ActionView::TestCase#_assigns is deprecated and will be removed in future versions. " <<
|
223
|
-
"Please use view_assigns instead."
|
224
|
-
view_assigns
|
225
|
-
end
|
226
|
-
|
227
224
|
def _routes
|
228
225
|
@controller._routes if @controller.respond_to?(:_routes)
|
229
226
|
end
|
data/lib/sprockets/assets.rake
CHANGED
@@ -6,7 +6,7 @@ namespace :assets do
|
|
6
6
|
groups = ENV['RAILS_GROUPS'] || 'assets'
|
7
7
|
args = [$0, task,"RAILS_ENV=#{env}","RAILS_GROUPS=#{groups}"]
|
8
8
|
args << "--trace" if Rake.application.options.trace
|
9
|
-
ruby
|
9
|
+
ruby(*args)
|
10
10
|
end
|
11
11
|
|
12
12
|
# We are currently running with no explicit bundler group
|
data/lib/sprockets/bootstrap.rb
CHANGED
@@ -15,11 +15,11 @@ module Sprockets
|
|
15
15
|
# temporarily hardcode default JS compressor to uglify. Soon, it will work
|
16
16
|
# the same as SCSS, where a default plugin sets the default.
|
17
17
|
unless config.assets.js_compressor == false
|
18
|
-
app.assets.js_compressor = LazyCompressor.new {
|
18
|
+
app.assets.js_compressor = LazyCompressor.new { Sprockets::Compressors.registered_js_compressor(config.assets.js_compressor || :uglifier) }
|
19
19
|
end
|
20
20
|
|
21
21
|
unless config.assets.css_compressor == false
|
22
|
-
app.assets.css_compressor = LazyCompressor.new {
|
22
|
+
app.assets.css_compressor = LazyCompressor.new { Sprockets::Compressors.registered_css_compressor(config.assets.css_compressor) }
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
@@ -33,33 +33,5 @@ module Sprockets
|
|
33
33
|
app.assets = app.assets.index
|
34
34
|
end
|
35
35
|
end
|
36
|
-
|
37
|
-
protected
|
38
|
-
|
39
|
-
def expand_js_compressor(sym)
|
40
|
-
case sym
|
41
|
-
when :closure
|
42
|
-
require 'closure-compiler'
|
43
|
-
Closure::Compiler.new
|
44
|
-
when :uglifier
|
45
|
-
require 'uglifier'
|
46
|
-
Uglifier.new
|
47
|
-
when :yui
|
48
|
-
require 'yui/compressor'
|
49
|
-
YUI::JavaScriptCompressor.new
|
50
|
-
else
|
51
|
-
sym
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
def expand_css_compressor(sym)
|
56
|
-
case sym
|
57
|
-
when :yui
|
58
|
-
require 'yui/compressor'
|
59
|
-
YUI::CssCompressor.new
|
60
|
-
else
|
61
|
-
sym
|
62
|
-
end
|
63
|
-
end
|
64
36
|
end
|
65
|
-
end
|
37
|
+
end
|
@@ -1,21 +1,83 @@
|
|
1
1
|
module Sprockets
|
2
|
-
|
2
|
+
module Compressors
|
3
|
+
@@css_compressors = {}
|
4
|
+
@@js_compressors = {}
|
5
|
+
@@default_css_compressor = nil
|
6
|
+
@@default_js_compressor = nil
|
7
|
+
|
8
|
+
def self.register_css_compressor(name, klass, options = {})
|
9
|
+
@@default_css_compressor = name.to_sym if options[:default] || @@default_css_compressor.nil?
|
10
|
+
@@css_compressors[name.to_sym] = {:klass => klass.to_s, :require => options[:require]}
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.register_js_compressor(name, klass, options = {})
|
14
|
+
@@default_js_compressor = name.to_sym if options[:default] || @@default_js_compressor.nil?
|
15
|
+
@@js_compressors[name.to_sym] = {:klass => klass.to_s, :require => options[:require]}
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.registered_css_compressor(name)
|
19
|
+
if name.respond_to?(:to_sym)
|
20
|
+
compressor = @@css_compressors[name.to_sym] || @@css_compressors[@@default_css_compressor]
|
21
|
+
require compressor[:require] if compressor[:require]
|
22
|
+
compressor[:klass].constantize.new
|
23
|
+
else
|
24
|
+
name
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.registered_js_compressor(name)
|
29
|
+
if name.respond_to?(:to_sym)
|
30
|
+
compressor = @@js_compressors[name.to_sym] || @@js_compressors[@@default_js_compressor]
|
31
|
+
require compressor[:require] if compressor[:require]
|
32
|
+
compressor[:klass].constantize.new
|
33
|
+
else
|
34
|
+
name
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
# The default compressors must be registered in default plugins (ex. Sass-Rails)
|
39
|
+
register_css_compressor(:scss, 'Sass::Rails::Compressor', :require => 'sass/rails/compressor', :default => true)
|
40
|
+
register_js_compressor(:uglifier, 'Uglifier', :require => 'uglifier', :default => true)
|
41
|
+
|
42
|
+
# Automaticaly register some compressors
|
43
|
+
register_css_compressor(:yui, 'YUI::CssCompressor', :require => 'yui/compressor')
|
44
|
+
register_js_compressor(:closure, 'Closure::Compiler', :require => 'closure-compiler')
|
45
|
+
register_js_compressor(:yui, 'YUI::JavaScriptCompressor', :require => 'yui/compressor')
|
46
|
+
end
|
47
|
+
|
48
|
+
# An asset compressor which does nothing.
|
49
|
+
#
|
50
|
+
# This compressor simply returns the asset as-is, without any compression
|
51
|
+
# whatsoever. It is useful in development mode, when compression isn't
|
52
|
+
# needed but using the same asset pipeline as production is desired.
|
53
|
+
class NullCompressor #:nodoc:
|
3
54
|
def compress(content)
|
4
55
|
content
|
5
56
|
end
|
6
57
|
end
|
7
58
|
|
8
|
-
|
59
|
+
# An asset compressor which only initializes the underlying compression
|
60
|
+
# engine when needed.
|
61
|
+
#
|
62
|
+
# This postpones the initialization of the compressor until
|
63
|
+
# <code>#compress</code> is called the first time.
|
64
|
+
class LazyCompressor #:nodoc:
|
65
|
+
# Initializes a new LazyCompressor.
|
66
|
+
#
|
67
|
+
# The block should return a compressor when called, i.e. an object
|
68
|
+
# which responds to <code>#compress</code>.
|
9
69
|
def initialize(&block)
|
10
70
|
@block = block
|
11
71
|
end
|
12
72
|
|
13
|
-
def compressor
|
14
|
-
@compressor ||= @block.call || NullCompressor.new
|
15
|
-
end
|
16
|
-
|
17
73
|
def compress(content)
|
18
74
|
compressor.compress(content)
|
19
75
|
end
|
76
|
+
|
77
|
+
private
|
78
|
+
|
79
|
+
def compressor
|
80
|
+
@compressor ||= (@block.call || NullCompressor.new)
|
81
|
+
end
|
20
82
|
end
|
21
|
-
end
|
83
|
+
end
|
@@ -64,25 +64,20 @@ module Sprockets
|
|
64
64
|
alias_method :path_to_image, :image_path # aliased to avoid conflicts with an image_path named route
|
65
65
|
|
66
66
|
def javascript_path(source)
|
67
|
-
path_to_asset(source
|
67
|
+
path_to_asset(source)
|
68
68
|
end
|
69
69
|
alias_method :path_to_javascript, :javascript_path # aliased to avoid conflicts with an javascript_path named route
|
70
70
|
|
71
71
|
def stylesheet_path(source)
|
72
|
-
path_to_asset(source
|
72
|
+
path_to_asset(source)
|
73
73
|
end
|
74
74
|
alias_method :path_to_stylesheet, :stylesheet_path # aliased to avoid conflicts with an stylesheet_path named route
|
75
75
|
|
76
76
|
private
|
77
77
|
def debug_assets?
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
params[:debug_assets] == '1' ||
|
82
|
-
params[:debug_assets] == 'true')
|
83
|
-
rescue NoMethodError
|
84
|
-
false
|
85
|
-
end
|
78
|
+
compile_assets? && (Rails.application.config.assets.debug || params[:debug_assets])
|
79
|
+
rescue NoMethodError
|
80
|
+
false
|
86
81
|
end
|
87
82
|
|
88
83
|
# Override to specify an alternative prefix for asset path generation.
|
@@ -160,7 +155,7 @@ module Sprockets
|
|
160
155
|
end
|
161
156
|
|
162
157
|
def rewrite_extension(source, dir, ext)
|
163
|
-
if ext && File.extname(source)
|
158
|
+
if ext && File.extname(source) != ".#{ext}"
|
164
159
|
"#{source}.#{ext}"
|
165
160
|
else
|
166
161
|
source
|
data/lib/sprockets/railtie.rb
CHANGED
@@ -3,6 +3,7 @@ require "action_controller/railtie"
|
|
3
3
|
module Sprockets
|
4
4
|
autoload :Bootstrap, "sprockets/bootstrap"
|
5
5
|
autoload :Helpers, "sprockets/helpers"
|
6
|
+
autoload :Compressors, "sprockets/compressors"
|
6
7
|
autoload :LazyCompressor, "sprockets/compressors"
|
7
8
|
autoload :NullCompressor, "sprockets/compressors"
|
8
9
|
autoload :StaticCompiler, "sprockets/static_compiler"
|
@@ -16,9 +16,6 @@ module Sprockets
|
|
16
16
|
def compile
|
17
17
|
manifest = {}
|
18
18
|
env.each_logical_path do |logical_path|
|
19
|
-
if File.basename(logical_path)[/[^\.]+/, 0] == 'index'
|
20
|
-
logical_path.sub!(/\/index\./, '.')
|
21
|
-
end
|
22
19
|
next unless compile_path?(logical_path)
|
23
20
|
if asset = env.find_asset(logical_path)
|
24
21
|
manifest[logical_path] = write_asset(asset)
|
metadata
CHANGED
@@ -1,169 +1,137 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: actionpack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.0.rc1
|
5
|
+
prerelease: 6
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- David Heinemeier Hansson
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date:
|
12
|
+
date: 2011-12-20 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: activesupport
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &2156023280 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
|
-
- -
|
19
|
+
- - =
|
18
20
|
- !ruby/object:Gem::Version
|
19
|
-
version: 3.
|
21
|
+
version: 3.2.0.rc1
|
20
22
|
type: :runtime
|
21
23
|
prerelease: false
|
22
|
-
version_requirements:
|
23
|
-
requirements:
|
24
|
-
- - '='
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: 3.1.12
|
24
|
+
version_requirements: *2156023280
|
27
25
|
- !ruby/object:Gem::Dependency
|
28
26
|
name: activemodel
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
27
|
+
requirement: &2156021980 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
30
29
|
requirements:
|
31
|
-
- -
|
30
|
+
- - =
|
32
31
|
- !ruby/object:Gem::Version
|
33
|
-
version: 3.
|
32
|
+
version: 3.2.0.rc1
|
34
33
|
type: :runtime
|
35
34
|
prerelease: false
|
36
|
-
version_requirements:
|
37
|
-
requirements:
|
38
|
-
- - '='
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: 3.1.12
|
35
|
+
version_requirements: *2156021980
|
41
36
|
- !ruby/object:Gem::Dependency
|
42
37
|
name: rack-cache
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &2156037660 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
44
40
|
requirements:
|
45
41
|
- - ~>
|
46
42
|
- !ruby/object:Gem::Version
|
47
|
-
version: '1.
|
43
|
+
version: '1.1'
|
48
44
|
type: :runtime
|
49
45
|
prerelease: false
|
50
|
-
version_requirements:
|
51
|
-
requirements:
|
52
|
-
- - ~>
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '1.2'
|
46
|
+
version_requirements: *2156037660
|
55
47
|
- !ruby/object:Gem::Dependency
|
56
48
|
name: builder
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirement: &2156037100 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
58
51
|
requirements:
|
59
52
|
- - ~>
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: 3.0.0
|
62
55
|
type: :runtime
|
63
56
|
prerelease: false
|
64
|
-
version_requirements:
|
65
|
-
requirements:
|
66
|
-
- - ~>
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: 3.0.0
|
57
|
+
version_requirements: *2156037100
|
69
58
|
- !ruby/object:Gem::Dependency
|
70
59
|
name: i18n
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirement: &2156036440 !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
72
62
|
requirements:
|
73
63
|
- - ~>
|
74
64
|
- !ruby/object:Gem::Version
|
75
65
|
version: '0.6'
|
76
66
|
type: :runtime
|
77
67
|
prerelease: false
|
78
|
-
version_requirements:
|
79
|
-
requirements:
|
80
|
-
- - ~>
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0.6'
|
68
|
+
version_requirements: *2156036440
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: rack
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
71
|
+
requirement: &2156035940 !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
86
73
|
requirements:
|
87
74
|
- - ~>
|
88
75
|
- !ruby/object:Gem::Version
|
89
|
-
version: 1.3.
|
76
|
+
version: 1.3.5
|
90
77
|
type: :runtime
|
91
78
|
prerelease: false
|
92
|
-
version_requirements:
|
93
|
-
requirements:
|
94
|
-
- - ~>
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: 1.3.6
|
79
|
+
version_requirements: *2156035940
|
97
80
|
- !ruby/object:Gem::Dependency
|
98
81
|
name: rack-test
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
82
|
+
requirement: &2156035260 !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
100
84
|
requirements:
|
101
85
|
- - ~>
|
102
86
|
- !ruby/object:Gem::Version
|
103
87
|
version: 0.6.1
|
104
88
|
type: :runtime
|
105
89
|
prerelease: false
|
106
|
-
version_requirements:
|
107
|
-
requirements:
|
108
|
-
- - ~>
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: 0.6.1
|
90
|
+
version_requirements: *2156035260
|
111
91
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
92
|
+
name: journey
|
93
|
+
requirement: &2156034700 !ruby/object:Gem::Requirement
|
94
|
+
none: false
|
114
95
|
requirements:
|
115
96
|
- - ~>
|
116
97
|
- !ruby/object:Gem::Version
|
117
|
-
version: 0.
|
98
|
+
version: 1.0.0.rc1
|
118
99
|
type: :runtime
|
119
100
|
prerelease: false
|
120
|
-
version_requirements:
|
121
|
-
requirements:
|
122
|
-
- - ~>
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: 0.8.2
|
101
|
+
version_requirements: *2156034700
|
125
102
|
- !ruby/object:Gem::Dependency
|
126
103
|
name: sprockets
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirement: &2156034160 !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
128
106
|
requirements:
|
129
107
|
- - ~>
|
130
108
|
- !ruby/object:Gem::Version
|
131
|
-
version: 2.
|
109
|
+
version: 2.1.2
|
132
110
|
type: :runtime
|
133
111
|
prerelease: false
|
134
|
-
version_requirements:
|
135
|
-
requirements:
|
136
|
-
- - ~>
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: 2.0.4
|
112
|
+
version_requirements: *2156034160
|
139
113
|
- !ruby/object:Gem::Dependency
|
140
114
|
name: erubis
|
141
|
-
requirement: !ruby/object:Gem::Requirement
|
115
|
+
requirement: &2156033600 !ruby/object:Gem::Requirement
|
116
|
+
none: false
|
142
117
|
requirements:
|
143
118
|
- - ~>
|
144
119
|
- !ruby/object:Gem::Version
|
145
120
|
version: 2.7.0
|
146
121
|
type: :runtime
|
147
122
|
prerelease: false
|
148
|
-
version_requirements:
|
149
|
-
requirements:
|
150
|
-
- - ~>
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
version: 2.7.0
|
123
|
+
version_requirements: *2156033600
|
153
124
|
- !ruby/object:Gem::Dependency
|
154
125
|
name: tzinfo
|
155
|
-
requirement: !ruby/object:Gem::Requirement
|
126
|
+
requirement: &2156032980 !ruby/object:Gem::Requirement
|
127
|
+
none: false
|
156
128
|
requirements:
|
157
129
|
- - ~>
|
158
130
|
- !ruby/object:Gem::Version
|
159
131
|
version: 0.3.29
|
160
132
|
type: :development
|
161
133
|
prerelease: false
|
162
|
-
version_requirements:
|
163
|
-
requirements:
|
164
|
-
- - ~>
|
165
|
-
- !ruby/object:Gem::Version
|
166
|
-
version: 0.3.29
|
134
|
+
version_requirements: *2156032980
|
167
135
|
description: Web apps on Rails. Simple, battle-tested conventions for building and
|
168
136
|
testing MVC web applications. Works with any Rack-compatible server.
|
169
137
|
email: david@loudthinking.com
|
@@ -252,15 +220,19 @@ files:
|
|
252
220
|
- lib/action_dispatch/http/url.rb
|
253
221
|
- lib/action_dispatch/middleware/best_standards_support.rb
|
254
222
|
- lib/action_dispatch/middleware/callbacks.rb
|
255
|
-
- lib/action_dispatch/middleware/closed_error.rb
|
256
223
|
- lib/action_dispatch/middleware/cookies.rb
|
224
|
+
- lib/action_dispatch/middleware/debug_exceptions.rb
|
225
|
+
- lib/action_dispatch/middleware/exception_wrapper.rb
|
257
226
|
- lib/action_dispatch/middleware/flash.rb
|
258
227
|
- lib/action_dispatch/middleware/head.rb
|
259
228
|
- lib/action_dispatch/middleware/params_parser.rb
|
229
|
+
- lib/action_dispatch/middleware/public_exceptions.rb
|
260
230
|
- lib/action_dispatch/middleware/reloader.rb
|
261
231
|
- lib/action_dispatch/middleware/remote_ip.rb
|
232
|
+
- lib/action_dispatch/middleware/request_id.rb
|
262
233
|
- lib/action_dispatch/middleware/rescue.rb
|
263
234
|
- lib/action_dispatch/middleware/session/abstract_store.rb
|
235
|
+
- lib/action_dispatch/middleware/session/cache_store.rb
|
264
236
|
- lib/action_dispatch/middleware/session/cookie_store.rb
|
265
237
|
- lib/action_dispatch/middleware/session/mem_cache_store.rb
|
266
238
|
- lib/action_dispatch/middleware/show_exceptions.rb
|
@@ -278,7 +250,6 @@ files:
|
|
278
250
|
- lib/action_dispatch/routing/mapper.rb
|
279
251
|
- lib/action_dispatch/routing/polymorphic_routes.rb
|
280
252
|
- lib/action_dispatch/routing/redirection.rb
|
281
|
-
- lib/action_dispatch/routing/route.rb
|
282
253
|
- lib/action_dispatch/routing/route_set.rb
|
283
254
|
- lib/action_dispatch/routing/routes_proxy.rb
|
284
255
|
- lib/action_dispatch/routing/url_for.rb
|
@@ -341,7 +312,6 @@ files:
|
|
341
312
|
- lib/action_view/renderer/streaming_template_renderer.rb
|
342
313
|
- lib/action_view/renderer/template_renderer.rb
|
343
314
|
- lib/action_view/template/error.rb
|
344
|
-
- lib/action_view/template/handler.rb
|
345
315
|
- lib/action_view/template/handlers/builder.rb
|
346
316
|
- lib/action_view/template/handlers/erb.rb
|
347
317
|
- lib/action_view/template/handlers.rb
|
@@ -361,26 +331,27 @@ files:
|
|
361
331
|
- lib/sprockets/static_compiler.rb
|
362
332
|
homepage: http://www.rubyonrails.org
|
363
333
|
licenses: []
|
364
|
-
metadata: {}
|
365
334
|
post_install_message:
|
366
335
|
rdoc_options: []
|
367
336
|
require_paths:
|
368
337
|
- lib
|
369
338
|
required_ruby_version: !ruby/object:Gem::Requirement
|
339
|
+
none: false
|
370
340
|
requirements:
|
371
|
-
- - '>='
|
341
|
+
- - ! '>='
|
372
342
|
- !ruby/object:Gem::Version
|
373
343
|
version: 1.8.7
|
374
344
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
345
|
+
none: false
|
375
346
|
requirements:
|
376
|
-
- - '
|
347
|
+
- - ! '>'
|
377
348
|
- !ruby/object:Gem::Version
|
378
|
-
version:
|
349
|
+
version: 1.3.1
|
379
350
|
requirements:
|
380
351
|
- none
|
381
352
|
rubyforge_project:
|
382
|
-
rubygems_version:
|
353
|
+
rubygems_version: 1.8.7
|
383
354
|
signing_key:
|
384
|
-
specification_version:
|
355
|
+
specification_version: 3
|
385
356
|
summary: Web-flow and rendering framework putting the VC in MVC (part of Rails).
|
386
357
|
test_files: []
|