railties 7.0.4.3 → 7.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +18 -0
- data/lib/rails/application.rb +25 -30
- data/lib/rails/application_controller.rb +1 -1
- data/lib/rails/commands/console/console_command.rb +4 -0
- data/lib/rails/gem_version.rb +2 -2
- data/lib/rails/generators/rails/app/app_generator.rb +3 -3
- data/lib/rails/generators/rails/app/templates/config/environments/development.rb.tt +1 -1
- data/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt +1 -1
- data/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt +1 -1
- data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_0.rb.tt +17 -4
- data/lib/rails/generators/rails/plugin/plugin_generator.rb +3 -2
- data/lib/rails/generators/rails/plugin/templates/%name%.gemspec.tt +2 -2
- data/lib/rails/generators/rails/plugin/templates/bin/rails.tt +3 -1
- data/lib/rails/generators/rails/scaffold_controller/templates/controller.rb.tt +1 -1
- data/lib/rails/generators/testing/behaviour.rb +1 -1
- data/lib/rails/test_help.rb +4 -0
- metadata +15 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 31de139d3dd6b07593f8487f29eaecedf797ce2ff8662c7d2052b36de5fb62c9
|
4
|
+
data.tar.gz: 650547b1eec93edd4308b378d024626eaf17b848d001b33462fe32aaefebbe8e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5ca96bbe34aebacce397ecd5aa9e87dd998a306acfa56fd94a5141ffafdb81dfe527bb95a6a7a31f54e53f663d056d5e89ae0b56d74aefa10b116c79b66fbcbf
|
7
|
+
data.tar.gz: 9d479e75785bcfb8d54d789dc666a34a462d65511dd54d15a3b0e75d2c405835d9a9b0f32ae7234306378de347bdf70a002cf4be4e0fa08eb221a943b78e7b22
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,21 @@
|
|
1
|
+
## Rails 7.0.5 (May 24, 2023) ##
|
2
|
+
|
3
|
+
* Add puma app server to Gemfile in order to start test/dummy.
|
4
|
+
|
5
|
+
*Donapieppo*
|
6
|
+
|
7
|
+
* Rails console now disables `IRB`'s autocompletion feature in production by default.
|
8
|
+
|
9
|
+
Setting `IRB_USE_AUTOCOMPLETE=true` can override this default.
|
10
|
+
|
11
|
+
*Stan Lo*
|
12
|
+
|
13
|
+
* Send 303 See Other status code back for the destroy action on newly generated
|
14
|
+
scaffold controllers.
|
15
|
+
|
16
|
+
*Tony Drake*
|
17
|
+
|
18
|
+
|
1
19
|
## Rails 7.0.4.3 (March 13, 2023) ##
|
2
20
|
|
3
21
|
* No changes.
|
data/lib/rails/application.rb
CHANGED
@@ -422,44 +422,39 @@ module Rails
|
|
422
422
|
end
|
423
423
|
end
|
424
424
|
|
425
|
-
#
|
426
|
-
#
|
427
|
-
#
|
428
|
-
#
|
429
|
-
#
|
430
|
-
#
|
431
|
-
#
|
425
|
+
# Returns an ActiveSupport::EncryptedConfiguration instance for the
|
426
|
+
# credentials file specified by +config.credentials.content_path+.
|
427
|
+
#
|
428
|
+
# By default, +config.credentials.content_path+ will point to either
|
429
|
+
# <tt>config/credentials/#{environment}.yml.enc</tt> for the current
|
430
|
+
# environment (for example, +config/credentials/production.yml.enc+ for the
|
431
|
+
# +production+ environment), or +config/credentials.yml.enc+ if that file
|
432
|
+
# does not exist.
|
433
|
+
#
|
434
|
+
# The encryption key is taken from either <tt>ENV["RAILS_MASTER_KEY"]</tt>,
|
435
|
+
# or from the file specified by +config.credentials.key_path+. By default,
|
436
|
+
# +config.credentials.key_path+ will point to either
|
437
|
+
# <tt>config/credentials/#{environment}.key</tt> for the current
|
438
|
+
# environment, or +config/master.key+ if that file does not exist.
|
432
439
|
def credentials
|
433
440
|
@credentials ||= encrypted(config.credentials.content_path, key_path: config.credentials.key_path)
|
434
441
|
end
|
435
442
|
|
436
|
-
#
|
437
|
-
#
|
438
|
-
#
|
439
|
-
# the file with the master key.
|
440
|
-
# The master key is either stored in +config/master.key+ or <tt>ENV["RAILS_MASTER_KEY"]</tt>.
|
441
|
-
#
|
442
|
-
# Rails.application.encrypted("config/mystery_man.txt.enc").read
|
443
|
-
# # => "We've met before, haven't we?"
|
444
|
-
#
|
445
|
-
# It's also possible to interpret encrypted YAML files with +config+.
|
446
|
-
#
|
447
|
-
# Rails.application.encrypted("config/credentials.yml.enc").config
|
448
|
-
# # => { next_guys_line: "I don't think so. Where was it you think we met?" }
|
449
|
-
#
|
450
|
-
# Any top-level configs are also accessible directly on the return value:
|
451
|
-
#
|
452
|
-
# Rails.application.encrypted("config/credentials.yml.enc").next_guys_line
|
453
|
-
# # => "I don't think so. Where was it you think we met?"
|
443
|
+
# Returns an ActiveSupport::EncryptedConfiguration instance for an encrypted
|
444
|
+
# file. By default, the encryption key is taken from either
|
445
|
+
# <tt>ENV["RAILS_MASTER_KEY"]</tt>, or from the +config/master.key+ file.
|
454
446
|
#
|
455
|
-
#
|
456
|
-
# a key in the +ENV+, use:
|
447
|
+
# my_config = Rails.application.encrypted("config/my_config.enc")
|
457
448
|
#
|
458
|
-
#
|
449
|
+
# my_config.read
|
450
|
+
# # => "foo:\n bar: 123\n"
|
459
451
|
#
|
460
|
-
#
|
452
|
+
# my_config.foo.bar
|
453
|
+
# # => 123
|
461
454
|
#
|
462
|
-
#
|
455
|
+
# Encrypted files can be edited with the <tt>bin/rails encrypted:edit</tt>
|
456
|
+
# command. (See the output of <tt>bin/rails encrypted:edit --help</tt> for
|
457
|
+
# more information.)
|
463
458
|
def encrypted(path, key_path: "config/master.key", env_key: "RAILS_MASTER_KEY")
|
464
459
|
ActiveSupport::EncryptedConfiguration.new(
|
465
460
|
config_path: Rails.root.join(path),
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
class Rails::ApplicationController < ActionController::Base # :nodoc:
|
4
|
-
|
4
|
+
prepend_view_path File.expand_path("templates", __dir__)
|
5
5
|
layout "application"
|
6
6
|
|
7
7
|
before_action :disable_content_security_policy_nonce!
|
data/lib/rails/gem_version.rb
CHANGED
@@ -274,7 +274,7 @@ module Rails
|
|
274
274
|
class_option :api, type: :boolean, desc: "Preconfigure smaller stack for API only apps"
|
275
275
|
class_option :minimal, type: :boolean, desc: "Preconfigure a minimal rails app"
|
276
276
|
class_option :javascript, type: :string, aliases: "-j", default: "importmap", desc: "Choose JavaScript approach [options: importmap (default), webpack, esbuild, rollup]"
|
277
|
-
class_option :css, type: :string, aliases: "-c", desc: "Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass
|
277
|
+
class_option :css, type: :string, aliases: "-c", desc: "Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass] check https://github.com/rails/cssbundling-rails"
|
278
278
|
class_option :skip_bundle, type: :boolean, aliases: "-B", default: false, desc: "Don't run bundle install"
|
279
279
|
|
280
280
|
def initialize(*args)
|
@@ -438,7 +438,7 @@ module Rails
|
|
438
438
|
|
439
439
|
def delete_app_views_if_api_option
|
440
440
|
if options[:api]
|
441
|
-
if
|
441
|
+
if skip_action_mailer?
|
442
442
|
remove_dir "app/views"
|
443
443
|
else
|
444
444
|
remove_file "app/views/layouts/application.html.erb"
|
@@ -483,7 +483,7 @@ module Rails
|
|
483
483
|
end
|
484
484
|
|
485
485
|
def delete_action_mailer_files_skipping_action_mailer
|
486
|
-
if
|
486
|
+
if skip_action_mailer?
|
487
487
|
remove_file "app/views/layouts/mailer.html.erb"
|
488
488
|
remove_file "app/views/layouts/mailer.text.erb"
|
489
489
|
remove_dir "app/mailers"
|
@@ -39,7 +39,7 @@ Rails.application.configure do
|
|
39
39
|
# Store uploaded files on the local file system (see config/storage.yml for options).
|
40
40
|
config.active_storage.service = :local
|
41
41
|
<%- end -%>
|
42
|
-
<%- unless
|
42
|
+
<%- unless skip_action_mailer? -%>
|
43
43
|
|
44
44
|
# Don't care if the mailer can't send.
|
45
45
|
config.action_mailer.raise_delivery_errors = false
|
@@ -72,7 +72,7 @@ Rails.application.configure do
|
|
72
72
|
# config.active_job.queue_name_prefix = "<%= app_name %>_production"
|
73
73
|
|
74
74
|
<%- end -%>
|
75
|
-
<%- unless
|
75
|
+
<%- unless skip_action_mailer? -%>
|
76
76
|
config.action_mailer.perform_caching = false
|
77
77
|
|
78
78
|
# Ignore bad email addresses and do not raise email delivery errors.
|
@@ -38,7 +38,7 @@ Rails.application.configure do
|
|
38
38
|
config.active_storage.service = :test
|
39
39
|
|
40
40
|
<%- end -%>
|
41
|
-
<%- unless
|
41
|
+
<%- unless skip_action_mailer? -%>
|
42
42
|
config.action_mailer.perform_caching = false
|
43
43
|
|
44
44
|
# Tell Action Mailer not to deliver emails to the real world.
|
data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_0.rb.tt
CHANGED
@@ -109,7 +109,7 @@
|
|
109
109
|
|
110
110
|
|
111
111
|
# Cookie serializer: 2 options
|
112
|
-
#
|
112
|
+
#
|
113
113
|
# If you're upgrading and haven't set `cookies_serializer` previously, your cookie serializer
|
114
114
|
# is `:marshal`. The default for new apps is `:json`.
|
115
115
|
#
|
@@ -117,10 +117,10 @@
|
|
117
117
|
#
|
118
118
|
#
|
119
119
|
# To migrate an existing application to the `:json` serializer, use the `:hybrid` option.
|
120
|
-
#
|
120
|
+
#
|
121
121
|
# Rails transparently deserializes existing (Marshal-serialized) cookies on read and
|
122
122
|
# re-writes them in the JSON format.
|
123
|
-
#
|
123
|
+
#
|
124
124
|
# It is fine to use `:hybrid` long term; you should do that until you're confident *all* your cookies
|
125
125
|
# have been converted to JSON. To keep using `:hybrid` long term, move this config to its own
|
126
126
|
# initializer or to `config/application.rb`.
|
@@ -131,5 +131,18 @@
|
|
131
131
|
# If your cookies can't yet be serialized to JSON, keep using `:marshal` for backward-compatibility.
|
132
132
|
#
|
133
133
|
# If you have configured the serializer elsewhere, you can remove this section of the file.
|
134
|
-
#
|
134
|
+
#
|
135
135
|
# See https://guides.rubyonrails.org/action_controller_overview.html#cookies for more information.
|
136
|
+
|
137
|
+
# Change the return value of `ActionDispatch::Request#content_type` to the Content-Type header without modification.
|
138
|
+
# Rails.application.config.action_dispatch.return_only_request_media_type_on_content_type = false
|
139
|
+
|
140
|
+
# Active Storage `has_many_attached` relationships will default to replacing the current collection instead of appending to it.
|
141
|
+
# Thus, to support submitting an empty collection, the `file_field` helper will render an hidden field `include_hidden` by default when `multiple_file_field_include_hidden` is set to `true`.
|
142
|
+
# See https://guides.rubyonrails.org/configuring.html#config-active-storage-multiple-file-field-include-hidden for more information.
|
143
|
+
# Rails.application.config.active_storage.multiple_file_field_include_hidden = true
|
144
|
+
|
145
|
+
# ** Please read carefully, this must be configured in config/application.rb (NOT this file) **
|
146
|
+
# Disables the deprecated #to_s override in some Ruby core classes
|
147
|
+
# See https://guides.rubyonrails.org/configuring.html#config-active-support-disable-to-s-conversion for more information.
|
148
|
+
# config.active_support.disable_to_s_conversion = true
|
@@ -28,14 +28,14 @@ module Rails
|
|
28
28
|
|
29
29
|
empty_directory_with_keep_file "app/models/concerns"
|
30
30
|
empty_directory_with_keep_file "app/controllers/concerns"
|
31
|
-
remove_dir "app/mailers" if
|
31
|
+
remove_dir "app/mailers" if skip_action_mailer?
|
32
32
|
remove_dir "app/jobs" if options[:skip_active_job]
|
33
33
|
elsif full?
|
34
34
|
empty_directory_with_keep_file "app/models"
|
35
35
|
empty_directory_with_keep_file "app/controllers"
|
36
36
|
empty_directory_with_keep_file "app/models/concerns"
|
37
37
|
empty_directory_with_keep_file "app/controllers/concerns"
|
38
|
-
empty_directory_with_keep_file "app/mailers" unless
|
38
|
+
empty_directory_with_keep_file "app/mailers" unless skip_action_mailer?
|
39
39
|
empty_directory_with_keep_file "app/jobs" unless options[:skip_active_job]
|
40
40
|
|
41
41
|
unless api?
|
@@ -317,6 +317,7 @@ module Rails
|
|
317
317
|
[
|
318
318
|
rails_gemfile_entry,
|
319
319
|
simplify_gemfile_entries(
|
320
|
+
web_server_gemfile_entry,
|
320
321
|
database_gemfile_entry,
|
321
322
|
asset_pipeline_gemfile_entry,
|
322
323
|
),
|
@@ -8,9 +8,9 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.homepage = "TODO"
|
9
9
|
spec.summary = "TODO: Summary of <%= camelized_modules %>."
|
10
10
|
spec.description = "TODO: Description of <%= camelized_modules %>."
|
11
|
-
|
11
|
+
<%- unless inside_application? -%>
|
12
12
|
spec.license = "MIT"
|
13
|
-
|
13
|
+
<%- end -%>
|
14
14
|
|
15
15
|
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the "allowed_push_host"
|
16
16
|
# to allow pushing to a single host or delete this section to allow pushing to any host.
|
@@ -17,11 +17,13 @@ require "rails/all"
|
|
17
17
|
require "rails"
|
18
18
|
# Pick the frameworks you want:
|
19
19
|
require "active_model/railtie"
|
20
|
-
require "active_job/railtie"
|
20
|
+
<%= comment_if :skip_active_job %>require "active_job/railtie"
|
21
21
|
<%= comment_if :skip_active_record %>require "active_record/railtie"
|
22
22
|
<%= comment_if :skip_active_storage %>require "active_storage/engine"
|
23
23
|
require "action_controller/railtie"
|
24
24
|
<%= comment_if :skip_action_mailer %>require "action_mailer/railtie"
|
25
|
+
<%= comment_if :skip_action_mailbox %>require "action_mailbox/engine"
|
26
|
+
<%= comment_if :skip_action_text %>require "action_text/engine"
|
25
27
|
require "action_view/railtie"
|
26
28
|
<%= comment_if :skip_action_cable %>require "action_cable/engine"
|
27
29
|
<%= comment_if :skip_test %>require "rails/test_unit/railtie"
|
@@ -43,7 +43,7 @@ class <%= controller_class_name %>Controller < ApplicationController
|
|
43
43
|
# DELETE <%= route_url %>/1
|
44
44
|
def destroy
|
45
45
|
@<%= orm_instance.destroy %>
|
46
|
-
redirect_to <%= index_helper %>_url, notice: <%= %("#{human_name} was successfully destroyed.")
|
46
|
+
redirect_to <%= index_helper %>_url, notice: <%= %("#{human_name} was successfully destroyed.") %>, status: :see_other
|
47
47
|
end
|
48
48
|
|
49
49
|
private
|
@@ -67,7 +67,7 @@ module Rails
|
|
67
67
|
def run_generator(args = default_arguments, config = {})
|
68
68
|
capture(:stdout) do
|
69
69
|
args += ["--skip-bundle"] unless args.include?("--no-skip-bundle") || args.include?("--dev")
|
70
|
-
args
|
70
|
+
args += ["--skip-bootsnap"] unless args.include?("--no-skip-bootsnap") || args.include?("--skip-bootsnap")
|
71
71
|
|
72
72
|
generator_class.start(args, config.reverse_merge(destination_root: destination_root))
|
73
73
|
end
|
data/lib/rails/test_help.rb
CHANGED
@@ -31,6 +31,10 @@ if defined?(ActiveRecord::Base)
|
|
31
31
|
ActiveSupport.on_load(:action_dispatch_integration_test) do
|
32
32
|
self.fixture_path = ActiveSupport::TestCase.fixture_path
|
33
33
|
end
|
34
|
+
else
|
35
|
+
ActiveSupport.on_load(:active_support_test_case) do
|
36
|
+
self.file_fixture_path = "#{Rails.root}/test/fixtures/files"
|
37
|
+
end
|
34
38
|
end
|
35
39
|
|
36
40
|
# :enddoc:
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: railties
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 7.0.
|
4
|
+
version: 7.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-05-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 7.0.
|
19
|
+
version: 7.0.5
|
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: 7.0.
|
26
|
+
version: 7.0.5
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: actionpack
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 7.0.
|
33
|
+
version: 7.0.5
|
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
|
-
version: 7.0.
|
40
|
+
version: 7.0.5
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,14 +100,14 @@ dependencies:
|
|
100
100
|
requirements:
|
101
101
|
- - '='
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 7.0.
|
103
|
+
version: 7.0.5
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - '='
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 7.0.
|
110
|
+
version: 7.0.5
|
111
111
|
description: 'Rails internals: application bootup, plugins, generators, and rake tasks.'
|
112
112
|
email: david@loudthinking.com
|
113
113
|
executables:
|
@@ -422,12 +422,12 @@ licenses:
|
|
422
422
|
- MIT
|
423
423
|
metadata:
|
424
424
|
bug_tracker_uri: https://github.com/rails/rails/issues
|
425
|
-
changelog_uri: https://github.com/rails/rails/blob/v7.0.
|
426
|
-
documentation_uri: https://api.rubyonrails.org/v7.0.
|
425
|
+
changelog_uri: https://github.com/rails/rails/blob/v7.0.5/railties/CHANGELOG.md
|
426
|
+
documentation_uri: https://api.rubyonrails.org/v7.0.5/
|
427
427
|
mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
|
428
|
-
source_code_uri: https://github.com/rails/rails/tree/v7.0.
|
428
|
+
source_code_uri: https://github.com/rails/rails/tree/v7.0.5/railties
|
429
429
|
rubygems_mfa_required: 'true'
|
430
|
-
post_install_message:
|
430
|
+
post_install_message:
|
431
431
|
rdoc_options:
|
432
432
|
- "--exclude"
|
433
433
|
- "."
|
@@ -444,8 +444,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
444
444
|
- !ruby/object:Gem::Version
|
445
445
|
version: '0'
|
446
446
|
requirements: []
|
447
|
-
rubygems_version: 3.4.
|
448
|
-
signing_key:
|
447
|
+
rubygems_version: 3.4.10
|
448
|
+
signing_key:
|
449
449
|
specification_version: 4
|
450
450
|
summary: Tools for creating, working with, and running Rails applications.
|
451
451
|
test_files: []
|