actionpack 6.1.3.2 → 7.0.0.alpha2
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +103 -387
- data/MIT-LICENSE +1 -1
- data/README.rdoc +2 -3
- data/lib/abstract_controller/asset_paths.rb +1 -1
- data/lib/abstract_controller/base.rb +7 -21
- data/lib/abstract_controller/caching/fragments.rb +2 -2
- data/lib/abstract_controller/caching.rb +1 -1
- data/lib/abstract_controller/callbacks.rb +9 -8
- data/lib/abstract_controller/collector.rb +4 -2
- data/lib/abstract_controller/error.rb +1 -1
- data/lib/abstract_controller/helpers.rb +3 -2
- data/lib/abstract_controller/logger.rb +1 -1
- data/lib/abstract_controller/railties/routes_helpers.rb +2 -0
- data/lib/abstract_controller/translation.rb +0 -2
- data/lib/abstract_controller/url_for.rb +4 -6
- data/lib/action_controller/api.rb +1 -1
- data/lib/action_controller/log_subscriber.rb +3 -1
- data/lib/action_controller/metal/conditional_get.rb +38 -1
- data/lib/action_controller/metal/content_security_policy.rb +1 -1
- data/lib/action_controller/metal/cookies.rb +1 -1
- data/lib/action_controller/metal/data_streaming.rb +5 -13
- data/lib/action_controller/metal/etag_with_template_digest.rb +1 -1
- data/lib/action_controller/metal/exceptions.rb +19 -30
- data/lib/action_controller/metal/flash.rb +6 -2
- data/lib/action_controller/metal/http_authentication.rb +15 -15
- data/lib/action_controller/metal/instrumentation.rb +55 -52
- data/lib/action_controller/metal/live.rb +52 -3
- data/lib/action_controller/metal/mime_responds.rb +3 -3
- data/lib/action_controller/metal/params_wrapper.rb +10 -9
- data/lib/action_controller/metal/permissions_policy.rb +1 -1
- data/lib/action_controller/metal/query_tags.rb +16 -0
- data/lib/action_controller/metal/redirecting.rb +50 -16
- data/lib/action_controller/metal/rendering.rb +7 -7
- data/lib/action_controller/metal/request_forgery_protection.rb +64 -20
- data/lib/action_controller/metal/rescue.rb +1 -1
- data/lib/action_controller/metal/streaming.rb +1 -3
- data/lib/action_controller/metal/strong_parameters.rb +24 -28
- data/lib/action_controller/metal/testing.rb +0 -2
- data/lib/action_controller/metal.rb +7 -10
- data/lib/action_controller/railtie.rb +42 -5
- data/lib/action_controller/test_case.rb +9 -2
- data/lib/action_controller.rb +2 -5
- data/lib/action_dispatch/http/cache.rb +18 -12
- data/lib/action_dispatch/http/content_security_policy.rb +39 -35
- data/lib/action_dispatch/http/filter_parameters.rb +5 -0
- data/lib/action_dispatch/http/mime_negotiation.rb +13 -3
- data/lib/action_dispatch/http/mime_type.rb +9 -11
- data/lib/action_dispatch/http/parameters.rb +4 -4
- data/lib/action_dispatch/http/permissions_policy.rb +1 -1
- data/lib/action_dispatch/http/request.rb +10 -19
- data/lib/action_dispatch/http/response.rb +3 -3
- data/lib/action_dispatch/http/url.rb +9 -10
- data/lib/action_dispatch/journey/formatter.rb +2 -2
- data/lib/action_dispatch/journey/gtg/builder.rb +11 -12
- data/lib/action_dispatch/journey/gtg/simulator.rb +10 -4
- data/lib/action_dispatch/journey/gtg/transition_table.rb +77 -21
- data/lib/action_dispatch/journey/nodes/node.rb +70 -5
- data/lib/action_dispatch/journey/path/pattern.rb +22 -13
- data/lib/action_dispatch/journey/route.rb +5 -12
- data/lib/action_dispatch/journey/router/utils.rb +2 -2
- data/lib/action_dispatch/journey/router.rb +1 -1
- data/lib/action_dispatch/journey/routes.rb +3 -3
- data/lib/action_dispatch/journey/visitors.rb +1 -1
- data/lib/action_dispatch/journey/visualizer/fsm.js +49 -24
- data/lib/action_dispatch/journey/visualizer/index.html.erb +1 -1
- data/lib/action_dispatch/middleware/actionable_exceptions.rb +0 -1
- data/lib/action_dispatch/middleware/cookies.rb +7 -3
- data/lib/action_dispatch/middleware/debug_exceptions.rb +6 -4
- data/lib/action_dispatch/middleware/debug_locks.rb +3 -3
- data/lib/action_dispatch/middleware/exception_wrapper.rb +4 -0
- data/lib/action_dispatch/middleware/flash.rb +9 -11
- data/lib/action_dispatch/middleware/host_authorization.rb +9 -17
- data/lib/action_dispatch/middleware/remote_ip.rb +16 -4
- data/lib/action_dispatch/middleware/session/abstract_store.rb +1 -1
- data/lib/action_dispatch/middleware/show_exceptions.rb +7 -9
- data/lib/action_dispatch/middleware/stack.rb +27 -9
- data/lib/action_dispatch/middleware/static.rb +2 -5
- data/lib/action_dispatch/middleware/templates/rescues/_message_and_suggestions.html.erb +1 -1
- data/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb +4 -11
- data/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb +2 -2
- data/lib/action_dispatch/middleware/templates/rescues/blocked_host.html.erb +3 -3
- data/lib/action_dispatch/middleware/templates/rescues/blocked_host.text.erb +1 -1
- data/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb +4 -4
- data/lib/action_dispatch/middleware/templates/rescues/invalid_statement.html.erb +3 -3
- data/lib/action_dispatch/middleware/templates/rescues/invalid_statement.text.erb +1 -0
- data/lib/action_dispatch/middleware/templates/rescues/layout.erb +28 -18
- data/lib/action_dispatch/middleware/templates/rescues/missing_exact_template.html.erb +3 -3
- data/lib/action_dispatch/middleware/templates/rescues/missing_template.html.erb +3 -3
- data/lib/action_dispatch/middleware/templates/rescues/routing_error.html.erb +3 -3
- data/lib/action_dispatch/middleware/templates/rescues/template_error.html.erb +3 -3
- data/lib/action_dispatch/middleware/templates/rescues/unknown_action.html.erb +3 -3
- data/lib/action_dispatch/middleware/templates/routes/_table.html.erb +5 -14
- data/lib/action_dispatch/railtie.rb +8 -2
- data/lib/action_dispatch/request/session.rb +43 -13
- data/lib/action_dispatch/routing/mapper.rb +44 -72
- data/lib/action_dispatch/routing/redirection.rb +0 -2
- data/lib/action_dispatch/routing/route_set.rb +9 -6
- data/lib/action_dispatch/routing/routes_proxy.rb +1 -1
- data/lib/action_dispatch/routing/url_for.rb +1 -2
- data/lib/action_dispatch/routing.rb +2 -2
- data/lib/action_dispatch/system_test_case.rb +5 -5
- data/lib/action_dispatch/system_testing/driver.rb +24 -4
- data/lib/action_dispatch/system_testing/test_helpers/screenshot_helper.rb +10 -6
- data/lib/action_dispatch/testing/assertions.rb +2 -5
- data/lib/action_dispatch/testing/integration.rb +6 -8
- data/lib/action_dispatch/testing/test_process.rb +12 -9
- data/lib/action_dispatch.rb +1 -1
- data/lib/action_pack/gem_version.rb +4 -4
- data/lib/action_pack.rb +1 -1
- metadata +21 -20
@@ -6,7 +6,6 @@ require "active_support/core_ext/module/redefine_method"
|
|
6
6
|
require "active_support/core_ext/module/remove_method"
|
7
7
|
require "active_support/core_ext/array/extract_options"
|
8
8
|
require "action_controller/metal/exceptions"
|
9
|
-
require "action_dispatch/http/request"
|
10
9
|
require "action_dispatch/routing/endpoint"
|
11
10
|
|
12
11
|
module ActionDispatch
|
@@ -132,8 +131,8 @@ module ActionDispatch
|
|
132
131
|
alias [] get
|
133
132
|
alias clear clear!
|
134
133
|
|
135
|
-
def each
|
136
|
-
routes.each
|
134
|
+
def each(&block)
|
135
|
+
routes.each(&block)
|
137
136
|
self
|
138
137
|
end
|
139
138
|
|
@@ -597,14 +596,14 @@ module ActionDispatch
|
|
597
596
|
if route.segment_keys.include?(:controller)
|
598
597
|
ActiveSupport::Deprecation.warn(<<-MSG.squish)
|
599
598
|
Using a dynamic :controller segment in a route is deprecated and
|
600
|
-
will be removed in Rails
|
599
|
+
will be removed in Rails 7.0.
|
601
600
|
MSG
|
602
601
|
end
|
603
602
|
|
604
603
|
if route.segment_keys.include?(:action)
|
605
604
|
ActiveSupport::Deprecation.warn(<<-MSG.squish)
|
606
605
|
Using a dynamic :action segment in a route is deprecated and
|
607
|
-
will be removed in Rails
|
606
|
+
will be removed in Rails 7.0.
|
608
607
|
MSG
|
609
608
|
end
|
610
609
|
|
@@ -824,7 +823,11 @@ module ActionDispatch
|
|
824
823
|
params = route_with_params.params
|
825
824
|
|
826
825
|
if options.key? :params
|
827
|
-
|
826
|
+
if options[:params]&.respond_to?(:to_hash)
|
827
|
+
params.merge! options[:params]
|
828
|
+
else
|
829
|
+
params[:params] = options[:params]
|
830
|
+
end
|
828
831
|
end
|
829
832
|
|
830
833
|
options[:path] = path
|
@@ -103,11 +103,10 @@ module ActionDispatch
|
|
103
103
|
include(*_url_for_modules) if respond_to?(:_url_for_modules)
|
104
104
|
end
|
105
105
|
|
106
|
-
def initialize(
|
106
|
+
def initialize(...)
|
107
107
|
@_routes = nil
|
108
108
|
super
|
109
109
|
end
|
110
|
-
ruby2_keywords(:initialize) if respond_to?(:ruby2_keywords, true)
|
111
110
|
|
112
111
|
# Hook overridden in controller to add request information
|
113
112
|
# with +default_url_options+. Application logic should not
|
@@ -255,7 +255,7 @@ module ActionDispatch
|
|
255
255
|
autoload :UrlFor
|
256
256
|
autoload :PolymorphicRoutes
|
257
257
|
|
258
|
-
SEPARATORS = %w( / . ? )
|
259
|
-
HTTP_METHODS = [:get, :head, :post, :patch, :put, :delete, :options]
|
258
|
+
SEPARATORS = %w( / . ? ) # :nodoc:
|
259
|
+
HTTP_METHODS = [:get, :head, :post, :patch, :put, :delete, :options] # :nodoc:
|
260
260
|
end
|
261
261
|
end
|
@@ -72,8 +72,8 @@ module ActionDispatch
|
|
72
72
|
# Headless browsers such as headless Chrome and headless Firefox are also supported.
|
73
73
|
# You can use these browsers by setting the +:using+ argument to +:headless_chrome+ or +:headless_firefox+.
|
74
74
|
#
|
75
|
-
# To use a headless driver, like
|
76
|
-
#
|
75
|
+
# To use a headless driver, like Cuprite, update your Gemfile to use
|
76
|
+
# Cuprite instead of Selenium and then declare the driver name in the
|
77
77
|
# +application_system_test_case.rb+ file. In this case, you would leave out
|
78
78
|
# the +:using+ option because the driver is headless, but you can still use
|
79
79
|
# +:screen_size+ to change the size of the browser screen, also you can use
|
@@ -81,10 +81,10 @@ module ActionDispatch
|
|
81
81
|
# driver documentation to learn about supported options.
|
82
82
|
#
|
83
83
|
# require "test_helper"
|
84
|
-
# require "capybara/
|
84
|
+
# require "capybara/cuprite"
|
85
85
|
#
|
86
86
|
# class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
|
87
|
-
# driven_by :
|
87
|
+
# driven_by :cuprite, screen_size: [1400, 1400], options:
|
88
88
|
# { js_errors: true }
|
89
89
|
# end
|
90
90
|
#
|
@@ -140,7 +140,7 @@ module ActionDispatch
|
|
140
140
|
#
|
141
141
|
# Examples:
|
142
142
|
#
|
143
|
-
# driven_by :
|
143
|
+
# driven_by :cuprite
|
144
144
|
#
|
145
145
|
# driven_by :selenium, screen_size: [800, 800]
|
146
146
|
#
|
@@ -5,14 +5,24 @@ module ActionDispatch
|
|
5
5
|
class Driver # :nodoc:
|
6
6
|
def initialize(name, **options, &capabilities)
|
7
7
|
@name = name
|
8
|
-
@browser = Browser.new(options[:using])
|
9
8
|
@screen_size = options[:screen_size]
|
10
9
|
@options = options[:options] || {}
|
11
10
|
@capabilities = capabilities
|
12
11
|
|
12
|
+
if [:poltergeist, :webkit].include?(name)
|
13
|
+
ActiveSupport::Deprecation.warn <<~MSG.squish
|
14
|
+
Poltergeist and capybara-webkit are not maintained already.
|
15
|
+
Driver registration of :poltergeist or :webkit is deprecated and will be removed in Rails 7.1.
|
16
|
+
You can still use :selenium, and also :cuprite is available for alternative to Poltergeist.
|
17
|
+
MSG
|
18
|
+
end
|
19
|
+
|
13
20
|
if name == :selenium
|
14
21
|
require "selenium/webdriver"
|
22
|
+
@browser = Browser.new(options[:using])
|
15
23
|
@browser.preload
|
24
|
+
else
|
25
|
+
@browser = nil
|
16
26
|
end
|
17
27
|
end
|
18
28
|
|
@@ -24,17 +34,19 @@ module ActionDispatch
|
|
24
34
|
|
25
35
|
private
|
26
36
|
def registerable?
|
27
|
-
[:selenium, :poltergeist, :webkit].include?(@name)
|
37
|
+
[:selenium, :poltergeist, :webkit, :cuprite, :rack_test].include?(@name)
|
28
38
|
end
|
29
39
|
|
30
40
|
def register
|
31
|
-
@browser
|
41
|
+
@browser&.configure(&@capabilities)
|
32
42
|
|
33
43
|
Capybara.register_driver @name do |app|
|
34
44
|
case @name
|
35
45
|
when :selenium then register_selenium(app)
|
36
46
|
when :poltergeist then register_poltergeist(app)
|
37
47
|
when :webkit then register_webkit(app)
|
48
|
+
when :cuprite then register_cuprite(app)
|
49
|
+
when :rack_test then register_rack_test(app)
|
38
50
|
end
|
39
51
|
end
|
40
52
|
end
|
@@ -44,7 +56,7 @@ module ActionDispatch
|
|
44
56
|
end
|
45
57
|
|
46
58
|
def register_selenium(app)
|
47
|
-
Capybara::Selenium::Driver.new(app,
|
59
|
+
Capybara::Selenium::Driver.new(app, browser: @browser.type, **browser_options).tap do |driver|
|
48
60
|
driver.browser.manage.window.size = Selenium::WebDriver::Dimension.new(*@screen_size)
|
49
61
|
end
|
50
62
|
end
|
@@ -59,6 +71,14 @@ module ActionDispatch
|
|
59
71
|
end
|
60
72
|
end
|
61
73
|
|
74
|
+
def register_cuprite(app)
|
75
|
+
Capybara::Cuprite::Driver.new(app, @options.merge(window_size: @screen_size))
|
76
|
+
end
|
77
|
+
|
78
|
+
def register_rack_test(app)
|
79
|
+
Capybara::RackTest::Driver.new(app, respect_data_method: true, **@options)
|
80
|
+
end
|
81
|
+
|
62
82
|
def setup
|
63
83
|
Capybara.current_driver = @name
|
64
84
|
end
|
@@ -15,8 +15,11 @@ module ActionDispatch
|
|
15
15
|
#
|
16
16
|
# The screenshot will be displayed in your console, if supported.
|
17
17
|
#
|
18
|
+
# The default screenshots directory is +tmp/screenshots+ but you can set a different
|
19
|
+
# one with +Capybara.save_path+
|
20
|
+
#
|
18
21
|
# You can set the +RAILS_SYSTEM_TESTING_SCREENSHOT_HTML+ environment variable to
|
19
|
-
# save the HTML from the page that is being
|
22
|
+
# save the HTML from the page that is being screenshotted so you can investigate the
|
20
23
|
# elements on the page at the time of the screenshot
|
21
24
|
#
|
22
25
|
# You can set the +RAILS_SYSTEM_TESTING_SCREENSHOT+ environment variable to
|
@@ -37,10 +40,7 @@ module ActionDispatch
|
|
37
40
|
# Takes a screenshot of the current page in the browser if the test
|
38
41
|
# failed.
|
39
42
|
#
|
40
|
-
# +take_failed_screenshot+ is
|
41
|
-
# that is generated with the application. To take screenshots when a test
|
42
|
-
# fails add +take_failed_screenshot+ to the teardown block before clearing
|
43
|
-
# sessions.
|
43
|
+
# +take_failed_screenshot+ is called during system test teardown.
|
44
44
|
def take_failed_screenshot
|
45
45
|
take_screenshot if failed? && supports_screenshot?
|
46
46
|
end
|
@@ -76,7 +76,11 @@ module ActionDispatch
|
|
76
76
|
end
|
77
77
|
|
78
78
|
def absolute_path
|
79
|
-
Rails.root.join(
|
79
|
+
Rails.root.join(screenshots_dir, image_name)
|
80
|
+
end
|
81
|
+
|
82
|
+
def screenshots_dir
|
83
|
+
Capybara.save_path.presence || "tmp/screenshots"
|
80
84
|
end
|
81
85
|
|
82
86
|
def absolute_image_path
|
@@ -1,14 +1,11 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "rails-dom-testing"
|
4
|
+
require "action_dispatch/testing/assertions/response"
|
5
|
+
require "action_dispatch/testing/assertions/routing"
|
4
6
|
|
5
7
|
module ActionDispatch
|
6
8
|
module Assertions
|
7
|
-
autoload :ResponseAssertions, "action_dispatch/testing/assertions/response"
|
8
|
-
autoload :RoutingAssertions, "action_dispatch/testing/assertions/routing"
|
9
|
-
|
10
|
-
extend ActiveSupport::Concern
|
11
|
-
|
12
9
|
include ResponseAssertions
|
13
10
|
include RoutingAssertions
|
14
11
|
include Rails::Dom::Testing::Assertions
|
@@ -8,7 +8,7 @@ require "minitest"
|
|
8
8
|
require "action_dispatch/testing/request_encoder"
|
9
9
|
|
10
10
|
module ActionDispatch
|
11
|
-
module Integration
|
11
|
+
module Integration # :nodoc:
|
12
12
|
module RequestHelpers
|
13
13
|
# Performs a GET request with the given parameters. See ActionDispatch::Integration::Session#process
|
14
14
|
# for more details.
|
@@ -199,7 +199,7 @@ module ActionDispatch
|
|
199
199
|
# merged into the Rack env hash.
|
200
200
|
# - +env+: Additional env to pass, as a Hash. The headers will be
|
201
201
|
# merged into the Rack env hash.
|
202
|
-
# - +xhr+: Set to +true+ if you want to make
|
202
|
+
# - +xhr+: Set to +true+ if you want to make an Ajax request.
|
203
203
|
# Adds request headers characteristic of XMLHttpRequest e.g. HTTP_X_REQUESTED_WITH.
|
204
204
|
# The headers will be merged into the Rack env hash.
|
205
205
|
# - +as+: Used for encoding the request with different content type.
|
@@ -363,13 +363,11 @@ module ActionDispatch
|
|
363
363
|
reset_html_document = "@html_document = nil"
|
364
364
|
end
|
365
365
|
|
366
|
-
definition = RUBY_VERSION >= "2.7" ? "..." : "*args"
|
367
|
-
|
368
366
|
module_eval <<~RUBY, __FILE__, __LINE__ + 1
|
369
|
-
def #{method}(
|
367
|
+
def #{method}(...)
|
370
368
|
#{reset_html_document}
|
371
369
|
|
372
|
-
result = integration_session.#{method}(
|
370
|
+
result = integration_session.#{method}(...)
|
373
371
|
copy_session_variables!
|
374
372
|
result
|
375
373
|
end
|
@@ -404,7 +402,7 @@ module ActionDispatch
|
|
404
402
|
|
405
403
|
# Copy the instance variables from the current session instance into the
|
406
404
|
# test instance.
|
407
|
-
def copy_session_variables!
|
405
|
+
def copy_session_variables! # :nodoc:
|
408
406
|
@controller = @integration_session.controller
|
409
407
|
@response = @integration_session.response
|
410
408
|
@request = @integration_session.request
|
@@ -433,7 +431,7 @@ module ActionDispatch
|
|
433
431
|
super
|
434
432
|
end
|
435
433
|
end
|
436
|
-
ruby2_keywords(:method_missing)
|
434
|
+
ruby2_keywords(:method_missing)
|
437
435
|
end
|
438
436
|
end
|
439
437
|
|
@@ -8,14 +8,14 @@ module ActionDispatch
|
|
8
8
|
module FixtureFile
|
9
9
|
# Shortcut for <tt>Rack::Test::UploadedFile.new(File.join(ActionDispatch::IntegrationTest.file_fixture_path, path), type)</tt>:
|
10
10
|
#
|
11
|
-
# post :change_avatar, params: { avatar: fixture_file_upload('
|
11
|
+
# post :change_avatar, params: { avatar: fixture_file_upload('david.png', 'image/png') }
|
12
12
|
#
|
13
13
|
# Default fixture files location is <tt>test/fixtures/files</tt>.
|
14
14
|
#
|
15
15
|
# To upload binary files on Windows, pass <tt>:binary</tt> as the last parameter.
|
16
16
|
# This will not affect other platforms:
|
17
17
|
#
|
18
|
-
# post :change_avatar, params: { avatar: fixture_file_upload('
|
18
|
+
# post :change_avatar, params: { avatar: fixture_file_upload('david.png', 'image/png', :binary) }
|
19
19
|
def fixture_file_upload(path, mime_type = nil, binary = false)
|
20
20
|
if self.class.respond_to?(:fixture_path) && self.class.fixture_path &&
|
21
21
|
!File.exist?(path)
|
@@ -25,18 +25,21 @@ module ActionDispatch
|
|
25
25
|
if !self.class.file_fixture_path
|
26
26
|
ActiveSupport::Deprecation.warn(<<~EOM)
|
27
27
|
Passing a path to `fixture_file_upload` relative to `fixture_path` is deprecated.
|
28
|
-
In Rails
|
28
|
+
In Rails 7.0, the path needs to be relative to `file_fixture_path` which you
|
29
29
|
haven't set yet. Set `file_fixture_path` to discard this warning.
|
30
30
|
EOM
|
31
31
|
elsif path.exist?
|
32
32
|
non_deprecated_path = Pathname(File.absolute_path(path)).relative_path_from(Pathname(File.absolute_path(self.class.file_fixture_path)))
|
33
|
-
ActiveSupport::Deprecation.warn(<<~EOM)
|
34
|
-
Passing a path to `fixture_file_upload` relative to `fixture_path` is deprecated.
|
35
|
-
In Rails 6.2, the path needs to be relative to `file_fixture_path`.
|
36
33
|
|
37
|
-
|
38
|
-
|
39
|
-
|
34
|
+
if Pathname(original_path) != non_deprecated_path
|
35
|
+
ActiveSupport::Deprecation.warn(<<~EOM)
|
36
|
+
Passing a path to `fixture_file_upload` relative to `fixture_path` is deprecated.
|
37
|
+
In Rails 7.0, the path needs to be relative to `file_fixture_path`.
|
38
|
+
|
39
|
+
Please modify the call from
|
40
|
+
`fixture_file_upload("#{original_path}")` to `fixture_file_upload("#{non_deprecated_path}")`.
|
41
|
+
EOM
|
42
|
+
end
|
40
43
|
else
|
41
44
|
path = file_fixture(original_path)
|
42
45
|
end
|
data/lib/action_dispatch.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
#--
|
4
|
-
# Copyright (c) 2004-
|
4
|
+
# Copyright (c) 2004-2021 David Heinemeier Hansson
|
5
5
|
#
|
6
6
|
# Permission is hereby granted, free of charge, to any person obtaining
|
7
7
|
# a copy of this software and associated documentation files (the
|
data/lib/action_pack.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
#--
|
4
|
-
# Copyright (c) 2004-
|
4
|
+
# Copyright (c) 2004-2021 David Heinemeier Hansson
|
5
5
|
#
|
6
6
|
# Permission is hereby granted, free of charge, to any person obtaining
|
7
7
|
# a copy of this software and associated documentation files (the
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: actionpack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 7.0.0.alpha2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-09-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 7.0.0.alpha2
|
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:
|
26
|
+
version: 7.0.0.alpha2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rack
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -33,7 +33,7 @@ dependencies:
|
|
33
33
|
version: '2.0'
|
34
34
|
- - ">="
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: 2.0
|
36
|
+
version: 2.2.0
|
37
37
|
type: :runtime
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
version: '2.0'
|
44
44
|
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 2.0
|
46
|
+
version: 2.2.0
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rack-test
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -98,28 +98,28 @@ dependencies:
|
|
98
98
|
requirements:
|
99
99
|
- - '='
|
100
100
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
101
|
+
version: 7.0.0.alpha2
|
102
102
|
type: :runtime
|
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:
|
108
|
+
version: 7.0.0.alpha2
|
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:
|
115
|
+
version: 7.0.0.alpha2
|
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:
|
122
|
+
version: 7.0.0.alpha2
|
123
123
|
description: Web apps on Rails. Simple, battle-tested conventions for building and
|
124
124
|
testing MVC web applications. Works with any Rack-compatible server.
|
125
125
|
email: david@loudthinking.com
|
@@ -173,6 +173,7 @@ files:
|
|
173
173
|
- lib/action_controller/metal/parameter_encoding.rb
|
174
174
|
- lib/action_controller/metal/params_wrapper.rb
|
175
175
|
- lib/action_controller/metal/permissions_policy.rb
|
176
|
+
- lib/action_controller/metal/query_tags.rb
|
176
177
|
- lib/action_controller/metal/redirecting.rb
|
177
178
|
- lib/action_controller/metal/renderers.rb
|
178
179
|
- lib/action_controller/metal/rendering.rb
|
@@ -309,11 +310,11 @@ licenses:
|
|
309
310
|
- MIT
|
310
311
|
metadata:
|
311
312
|
bug_tracker_uri: https://github.com/rails/rails/issues
|
312
|
-
changelog_uri: https://github.com/rails/rails/blob/
|
313
|
-
documentation_uri: https://api.rubyonrails.org/
|
313
|
+
changelog_uri: https://github.com/rails/rails/blob/v7.0.0.alpha2/actionpack/CHANGELOG.md
|
314
|
+
documentation_uri: https://api.rubyonrails.org/v7.0.0.alpha2/
|
314
315
|
mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
|
315
|
-
source_code_uri: https://github.com/rails/rails/tree/
|
316
|
-
post_install_message:
|
316
|
+
source_code_uri: https://github.com/rails/rails/tree/v7.0.0.alpha2/actionpack
|
317
|
+
post_install_message:
|
317
318
|
rdoc_options: []
|
318
319
|
require_paths:
|
319
320
|
- lib
|
@@ -321,16 +322,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
321
322
|
requirements:
|
322
323
|
- - ">="
|
323
324
|
- !ruby/object:Gem::Version
|
324
|
-
version: 2.
|
325
|
+
version: 2.7.0
|
325
326
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
326
327
|
requirements:
|
327
|
-
- - "
|
328
|
+
- - ">"
|
328
329
|
- !ruby/object:Gem::Version
|
329
|
-
version:
|
330
|
+
version: 1.3.1
|
330
331
|
requirements:
|
331
332
|
- none
|
332
|
-
rubygems_version: 3.1.
|
333
|
-
signing_key:
|
333
|
+
rubygems_version: 3.1.6
|
334
|
+
signing_key:
|
334
335
|
specification_version: 4
|
335
336
|
summary: Web-flow and rendering framework putting the VC in MVC (part of Rails).
|
336
337
|
test_files: []
|