railties 6.1.4.1 → 7.0.0.rc2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +113 -344
- data/MIT-LICENSE +1 -1
- data/RDOC_MAIN.rdoc +16 -16
- data/README.rdoc +0 -1
- data/lib/rails/all.rb +0 -1
- data/lib/rails/app_updater.rb +3 -5
- data/lib/rails/application/bootstrap.rb +21 -5
- data/lib/rails/application/configuration.rb +64 -28
- data/lib/rails/application/default_middleware_stack.rb +7 -3
- data/lib/rails/application/finisher.rb +42 -85
- data/lib/rails/application/routes_reloader.rb +8 -0
- data/lib/rails/application.rb +24 -50
- data/lib/rails/application_controller.rb +2 -2
- data/lib/rails/autoloaders/inflector.rb +21 -0
- data/lib/rails/autoloaders.rb +12 -16
- data/lib/rails/code_statistics.rb +2 -2
- data/lib/rails/code_statistics_calculator.rb +10 -1
- data/lib/rails/command/base.rb +26 -12
- data/lib/rails/command/behavior.rb +1 -1
- data/lib/rails/command/environment_argument.rb +1 -1
- data/lib/rails/command.rb +8 -5
- data/lib/rails/commands/credentials/USAGE +4 -2
- data/lib/rails/commands/credentials/credentials_command/diffing.rb +26 -16
- data/lib/rails/commands/credentials/credentials_command.rb +8 -3
- data/lib/rails/commands/dbconsole/dbconsole_command.rb +10 -11
- data/lib/rails/commands/help/USAGE +3 -2
- data/lib/rails/commands/runner/runner_command.rb +3 -2
- data/lib/rails/commands/server/server_command.rb +2 -5
- data/lib/rails/configuration.rb +18 -23
- data/lib/rails/engine/configuration.rb +3 -3
- data/lib/rails/engine.rb +18 -24
- data/lib/rails/gem_version.rb +4 -4
- data/lib/rails/generators/actions/create_migration.rb +2 -4
- data/lib/rails/generators/actions.rb +35 -13
- data/lib/rails/generators/app_base.rb +99 -105
- data/lib/rails/generators/app_name.rb +1 -1
- data/lib/rails/generators/base.rb +9 -13
- data/lib/rails/generators/erb/scaffold/scaffold_generator.rb +2 -0
- data/lib/rails/generators/erb/scaffold/templates/_form.html.erb.tt +8 -8
- data/lib/rails/generators/erb/scaffold/templates/edit.html.erb.tt +8 -4
- data/lib/rails/generators/erb/scaffold/templates/index.html.erb.tt +6 -28
- data/lib/rails/generators/erb/scaffold/templates/new.html.erb.tt +7 -3
- data/lib/rails/generators/erb/scaffold/templates/partial.html.erb.tt +20 -0
- data/lib/rails/generators/erb/scaffold/templates/show.html.erb.tt +8 -17
- data/lib/rails/generators/erb.rb +1 -1
- data/lib/rails/generators/generated_attribute.rb +45 -9
- data/lib/rails/generators/migration.rb +2 -6
- data/lib/rails/generators/model_helpers.rb +1 -1
- data/lib/rails/generators/named_base.rb +1 -1
- data/lib/rails/generators/rails/app/app_generator.rb +53 -91
- data/lib/rails/generators/rails/app/templates/Gemfile.tt +44 -50
- data/lib/rails/generators/rails/app/templates/app/assets/stylesheets/application.css.tt +2 -2
- data/lib/rails/generators/rails/app/templates/app/mailers/application_mailer.rb.tt +2 -2
- data/lib/rails/generators/rails/app/templates/app/models/application_record.rb.tt +1 -1
- data/lib/rails/generators/rails/app/templates/app/views/layouts/application.html.erb.tt +3 -9
- data/lib/rails/generators/rails/app/templates/bin/rails.tt +1 -4
- data/lib/rails/generators/rails/app/templates/bin/rake.tt +0 -3
- data/lib/rails/generators/rails/app/templates/bin/setup.tt +9 -14
- data/lib/rails/generators/rails/app/templates/config/application.rb.tt +0 -1
- data/lib/rails/generators/rails/app/templates/config/boot.rb.tt +1 -1
- data/lib/rails/generators/rails/app/templates/config/databases/jdbc.yml.tt +2 -2
- data/lib/rails/generators/rails/app/templates/config/databases/jdbcmysql.yml.tt +3 -3
- data/lib/rails/generators/rails/app/templates/config/databases/jdbcpostgresql.yml.tt +3 -3
- data/lib/rails/generators/rails/app/templates/config/databases/jdbcsqlite3.yml.tt +2 -2
- data/lib/rails/generators/rails/app/templates/config/databases/mysql.yml.tt +3 -3
- data/lib/rails/generators/rails/app/templates/config/databases/oracle.yml.tt +2 -2
- data/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml.tt +3 -3
- data/lib/rails/generators/rails/app/templates/config/databases/sqlite3.yml.tt +1 -1
- data/lib/rails/generators/rails/app/templates/config/databases/sqlserver.yml.tt +5 -5
- data/lib/rails/generators/rails/app/templates/config/environments/development.rb.tt +6 -12
- data/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt +21 -17
- data/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt +6 -11
- data/lib/rails/generators/rails/app/templates/config/initializers/assets.rb.tt +1 -5
- data/lib/rails/generators/rails/app/templates/config/initializers/content_security_policy.rb.tt +19 -25
- data/lib/rails/generators/rails/app/templates/config/initializers/cors.rb.tt +2 -2
- data/lib/rails/generators/rails/app/templates/config/initializers/inflections.rb.tt +4 -4
- data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_0.rb.tt +121 -0
- data/lib/rails/generators/rails/app/templates/config/locales/en.yml +3 -3
- data/lib/rails/generators/rails/app/templates/config/puma.rb.tt +1 -1
- data/lib/rails/generators/rails/app/templates/config/routes.rb.tt +4 -1
- data/lib/rails/generators/rails/app/templates/config/storage.yml.tt +5 -5
- data/lib/rails/generators/rails/app/templates/db/seeds.rb.tt +2 -2
- data/lib/rails/generators/rails/app/templates/gitattributes.tt +0 -5
- data/lib/rails/generators/rails/app/templates/gitignore.tt +3 -1
- data/lib/rails/generators/rails/app/templates/test/test_helper.rb.tt +1 -1
- data/lib/rails/generators/rails/controller/controller_generator.rb +1 -2
- data/lib/rails/generators/rails/controller/templates/controller.rb.tt +0 -4
- data/lib/rails/generators/rails/db/system/change/change_generator.rb +1 -1
- data/lib/rails/generators/rails/generator/templates/%file_name%_generator.rb.tt +1 -1
- data/lib/rails/generators/rails/plugin/plugin_generator.rb +40 -15
- data/lib/rails/generators/rails/plugin/templates/%name%.gemspec.tt +7 -3
- data/lib/rails/generators/rails/plugin/templates/Gemfile.tt +9 -9
- data/lib/rails/generators/rails/plugin/templates/README.md.tt +1 -1
- data/lib/rails/generators/rails/plugin/templates/app/mailers/%namespaced_name%/application_mailer.rb.tt +2 -2
- data/lib/rails/generators/rails/plugin/templates/app/views/layouts/%namespaced_name%/application.html.erb.tt +0 -3
- data/lib/rails/generators/rails/plugin/templates/bin/rails.tt +4 -5
- data/lib/rails/generators/rails/plugin/templates/gitignore.tt +0 -5
- data/lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/engine.rb.tt +2 -2
- data/lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/version.rb.tt +1 -1
- data/lib/rails/generators/rails/plugin/templates/rails/boot.rb.tt +2 -2
- data/lib/rails/generators/rails/plugin/templates/test/test_helper.rb.tt +3 -3
- data/lib/rails/generators/rails/scaffold/scaffold_generator.rb +0 -19
- data/lib/rails/generators/rails/scaffold_controller/templates/api_controller.rb.tt +1 -5
- data/lib/rails/generators/rails/scaffold_controller/templates/controller.rb.tt +6 -10
- data/lib/rails/generators/resource_helpers.rb +2 -2
- data/lib/rails/generators/test_unit/generator/templates/generator_test.rb.tt +1 -1
- data/lib/rails/generators/test_unit/model/templates/fixtures.yml.tt +2 -2
- data/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb +3 -3
- data/lib/rails/generators/test_unit/scaffold/templates/api_functional_test.rb.tt +5 -5
- data/lib/rails/generators/test_unit/scaffold/templates/functional_test.rb.tt +2 -2
- data/lib/rails/generators/test_unit/scaffold/templates/system_test.rb.tt +9 -11
- data/lib/rails/generators/testing/behaviour.rb +1 -2
- data/lib/rails/generators.rb +9 -22
- data/lib/rails/info.rb +1 -1
- data/lib/rails/info_controller.rb +1 -3
- data/lib/rails/initializable.rb +1 -1
- data/lib/rails/mailers_controller.rb +2 -4
- data/lib/rails/rack/logger.rb +0 -1
- data/lib/rails/railtie/configuration.rb +1 -2
- data/lib/rails/railtie.rb +27 -10
- data/lib/rails/ruby_version_check.rb +3 -3
- data/lib/rails/secrets.rb +4 -1
- data/lib/rails/tasks/framework.rake +2 -8
- data/lib/rails/tasks/statistics.rake +3 -1
- data/lib/rails/tasks/tmp.rake +8 -1
- data/lib/rails/tasks/yarn.rake +8 -9
- data/lib/rails/tasks/zeitwerk.rake +2 -10
- data/lib/rails/templates/layouts/application.html.erb +15 -0
- data/lib/rails/templates/rails/mailers/email.html.erb +13 -11
- data/lib/rails/templates/rails/welcome/index.html.erb +3 -0
- data/lib/rails/test_unit/railtie.rb +0 -4
- data/lib/rails/test_unit/runner.rb +16 -9
- data/lib/rails/test_unit/testing.rake +4 -9
- data/lib/rails/welcome_controller.rb +1 -0
- data/lib/rails.rb +5 -0
- metadata +34 -37
- data/lib/rails/command/spellchecker.rb +0 -57
- data/lib/rails/generators/css/assets/assets_generator.rb +0 -15
- data/lib/rails/generators/css/assets/templates/stylesheet.css +0 -4
- data/lib/rails/generators/css/scaffold/scaffold_generator.rb +0 -18
- data/lib/rails/generators/rails/app/templates/app/javascript/channels/consumer.js +0 -6
- data/lib/rails/generators/rails/app/templates/app/javascript/channels/index.js +0 -5
- data/lib/rails/generators/rails/app/templates/app/javascript/packs/application.js.tt +0 -23
- data/lib/rails/generators/rails/app/templates/bin/spring.tt +0 -13
- data/lib/rails/generators/rails/app/templates/bin/yarn.tt +0 -16
- data/lib/rails/generators/rails/app/templates/config/initializers/application_controller_renderer.rb.tt +0 -8
- data/lib/rails/generators/rails/app/templates/config/initializers/backtrace_silencers.rb.tt +0 -8
- data/lib/rails/generators/rails/app/templates/config/initializers/cookies_serializer.rb.tt +0 -5
- data/lib/rails/generators/rails/app/templates/config/initializers/mime_types.rb.tt +0 -4
- data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_6_1.rb.tt +0 -67
- data/lib/rails/generators/rails/app/templates/config/initializers/wrap_parameters.rb.tt +0 -16
- data/lib/rails/generators/rails/app/templates/config/spring.rb.tt +0 -6
- data/lib/rails/generators/rails/app/templates/package.json.tt +0 -11
- data/lib/rails/generators/rails/assets/USAGE +0 -16
- data/lib/rails/generators/rails/assets/assets_generator.rb +0 -26
- data/lib/rails/generators/rails/assets/templates/stylesheet.css +0 -4
- data/lib/rails/generators/rails/scaffold/templates/scaffold.css +0 -80
@@ -15,7 +15,6 @@ require "action_controller/railtie"
|
|
15
15
|
<%= comment_if :skip_action_text %>require "action_text/engine"
|
16
16
|
require "action_view/railtie"
|
17
17
|
<%= comment_if :skip_action_cable %>require "action_cable/engine"
|
18
|
-
<%= comment_if :skip_sprockets %>require "sprockets/railtie"
|
19
18
|
<%= comment_if :skip_test %>require "rails/test_unit/railtie"
|
20
19
|
<% end -%>
|
21
20
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# gem install activerecord-jdbcmssql-adapter
|
4
4
|
#
|
5
5
|
# Configure using Gemfile:
|
6
|
-
# gem
|
6
|
+
# gem "activerecord-jdbcmssql-adapter"
|
7
7
|
#
|
8
8
|
# development:
|
9
9
|
# adapter: mssql
|
@@ -65,4 +65,4 @@ test:
|
|
65
65
|
production:
|
66
66
|
url: jdbc:db://localhost/<%= app_name %>_production
|
67
67
|
username: <%= app_name %>
|
68
|
-
password: <%%= ENV[
|
68
|
+
password: <%%= ENV["<%= app_name.upcase %>_DATABASE_PASSWORD"] %>
|
@@ -4,7 +4,7 @@
|
|
4
4
|
# gem install activerecord-jdbcmysql-adapter
|
5
5
|
#
|
6
6
|
# Configure Using Gemfile
|
7
|
-
# gem
|
7
|
+
# gem "activerecord-jdbcmysql-adapter"
|
8
8
|
#
|
9
9
|
# And be sure to use new-style password hashing:
|
10
10
|
# https://dev.mysql.com/doc/refman/5.7/en/password-hashing.html
|
@@ -42,7 +42,7 @@ test:
|
|
42
42
|
# URL environment variable explicitly:
|
43
43
|
#
|
44
44
|
# production:
|
45
|
-
# url: <%%= ENV[
|
45
|
+
# url: <%%= ENV["MY_APP_DATABASE_URL"] %>
|
46
46
|
#
|
47
47
|
# Read https://guides.rubyonrails.org/configuring.html#configuring-a-database
|
48
48
|
# for a full overview on how database connection configuration can be specified.
|
@@ -51,4 +51,4 @@ production:
|
|
51
51
|
<<: *default
|
52
52
|
database: <%= app_name %>_production
|
53
53
|
username: <%= app_name %>
|
54
|
-
password: <%%= ENV[
|
54
|
+
password: <%%= ENV["<%= app_name.upcase %>_DATABASE_PASSWORD"] %>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# PostgreSQL. Versions 9.3 and up are supported.
|
2
2
|
#
|
3
3
|
# Configure Using Gemfile
|
4
|
-
# gem
|
4
|
+
# gem "activerecord-jdbcpostgresql-adapter"
|
5
5
|
#
|
6
6
|
default: &default
|
7
7
|
adapter: postgresql
|
@@ -58,7 +58,7 @@ test:
|
|
58
58
|
# URL environment variable explicitly:
|
59
59
|
#
|
60
60
|
# production:
|
61
|
-
# url: <%%= ENV[
|
61
|
+
# url: <%%= ENV["MY_APP_DATABASE_URL"] %>
|
62
62
|
#
|
63
63
|
# Read https://guides.rubyonrails.org/configuring.html#configuring-a-database
|
64
64
|
# for a full overview on how database connection configuration can be specified.
|
@@ -67,4 +67,4 @@ production:
|
|
67
67
|
<<: *default
|
68
68
|
database: <%= app_name %>_production
|
69
69
|
username: <%= app_name %>
|
70
|
-
password: <%%= ENV[
|
70
|
+
password: <%%= ENV["<%= app_name.upcase %>_DATABASE_PASSWORD"] %>
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# SQLite. Versions 3.8.0 and up are supported.
|
2
|
-
# gem
|
2
|
+
# gem "activerecord-jdbcsqlite3-adapter"
|
3
3
|
#
|
4
4
|
# Configure Using Gemfile
|
5
|
-
# gem
|
5
|
+
# gem "activerecord-jdbcsqlite3-adapter"
|
6
6
|
#
|
7
7
|
default: &default
|
8
8
|
adapter: sqlite3
|
@@ -4,7 +4,7 @@
|
|
4
4
|
# gem install mysql2
|
5
5
|
#
|
6
6
|
# Ensure the MySQL gem is defined in your Gemfile
|
7
|
-
# gem
|
7
|
+
# gem "mysql2"
|
8
8
|
#
|
9
9
|
# And be sure to use new-style password hashing:
|
10
10
|
# https://dev.mysql.com/doc/refman/5.7/en/password-hashing.html
|
@@ -47,7 +47,7 @@ test:
|
|
47
47
|
# URL environment variable explicitly:
|
48
48
|
#
|
49
49
|
# production:
|
50
|
-
# url: <%%= ENV[
|
50
|
+
# url: <%%= ENV["MY_APP_DATABASE_URL"] %>
|
51
51
|
#
|
52
52
|
# Read https://guides.rubyonrails.org/configuring.html#configuring-a-database
|
53
53
|
# for a full overview on how database connection configuration can be specified.
|
@@ -56,4 +56,4 @@ production:
|
|
56
56
|
<<: *default
|
57
57
|
database: <%= app_name %>_production
|
58
58
|
username: <%= app_name %>
|
59
|
-
password: <%%= ENV[
|
59
|
+
password: <%%= ENV["<%= app_name.upcase %>_DATABASE_PASSWORD"] %>
|
@@ -50,7 +50,7 @@ test:
|
|
50
50
|
# URL environment variable explicitly:
|
51
51
|
#
|
52
52
|
# production:
|
53
|
-
# url: <%%= ENV[
|
53
|
+
# url: <%%= ENV["MY_APP_DATABASE_URL"] %>
|
54
54
|
#
|
55
55
|
# Read https://guides.rubyonrails.org/configuring.html#configuring-a-database
|
56
56
|
# for a full overview on how database connection configuration can be specified.
|
@@ -59,4 +59,4 @@ production:
|
|
59
59
|
<<: *default
|
60
60
|
database: <%= app_name %>_production
|
61
61
|
username: <%= app_name %>
|
62
|
-
password: <%%= ENV[
|
62
|
+
password: <%%= ENV["<%= app_name.upcase %>_DATABASE_PASSWORD"] %>
|
@@ -12,7 +12,7 @@
|
|
12
12
|
# Install PostgreSQL and put its /bin directory on your path.
|
13
13
|
#
|
14
14
|
# Configure Using Gemfile
|
15
|
-
# gem
|
15
|
+
# gem "pg"
|
16
16
|
#
|
17
17
|
default: &default
|
18
18
|
adapter: postgresql
|
@@ -74,7 +74,7 @@ test:
|
|
74
74
|
# URL environment variable explicitly:
|
75
75
|
#
|
76
76
|
# production:
|
77
|
-
# url: <%%= ENV[
|
77
|
+
# url: <%%= ENV["MY_APP_DATABASE_URL"] %>
|
78
78
|
#
|
79
79
|
# Read https://guides.rubyonrails.org/configuring.html#configuring-a-database
|
80
80
|
# for a full overview on how database connection configuration can be specified.
|
@@ -83,4 +83,4 @@ production:
|
|
83
83
|
<<: *default
|
84
84
|
database: <%= app_name %>_production
|
85
85
|
username: <%= app_name %>
|
86
|
-
password: <%%= ENV[
|
86
|
+
password: <%%= ENV["<%= app_name.upcase %>_DATABASE_PASSWORD"] %>
|
@@ -5,14 +5,14 @@
|
|
5
5
|
# gem install activerecord-sqlserver-adapter
|
6
6
|
#
|
7
7
|
# Ensure the activerecord adapter and db driver gems are defined in your Gemfile
|
8
|
-
# gem
|
9
|
-
# gem
|
8
|
+
# gem "tiny_tds"
|
9
|
+
# gem "activerecord-sqlserver-adapter"
|
10
10
|
#
|
11
11
|
default: &default
|
12
12
|
adapter: sqlserver
|
13
13
|
encoding: utf8
|
14
14
|
username: sa
|
15
|
-
password: <%%= ENV[
|
15
|
+
password: <%%= ENV["SA_PASSWORD"] %>
|
16
16
|
host: localhost
|
17
17
|
|
18
18
|
development:
|
@@ -41,7 +41,7 @@ test:
|
|
41
41
|
# URL environment variable explicitly:
|
42
42
|
#
|
43
43
|
# production:
|
44
|
-
# url: <%%= ENV[
|
44
|
+
# url: <%%= ENV["MY_APP_DATABASE_URL"] %>
|
45
45
|
#
|
46
46
|
# Read https://guides.rubyonrails.org/configuring.html#configuring-a-database
|
47
47
|
# for a full overview on how database connection configuration can be specified.
|
@@ -50,4 +50,4 @@ production:
|
|
50
50
|
<<: *default
|
51
51
|
database: <%= app_name %>_production
|
52
52
|
username: <%= app_name %>
|
53
|
-
password: <%%= ENV[
|
53
|
+
password: <%%= ENV["<%= app_name.upcase %>_DATABASE_PASSWORD"] %>
|
@@ -14,9 +14,12 @@ Rails.application.configure do
|
|
14
14
|
# Show full error reports.
|
15
15
|
config.consider_all_requests_local = true
|
16
16
|
|
17
|
+
# Enable server timing
|
18
|
+
config.server_timing = true
|
19
|
+
|
17
20
|
# Enable/disable caching. By default caching is disabled.
|
18
21
|
# Run rails dev:cache to toggle caching.
|
19
|
-
if Rails.root.join(
|
22
|
+
if Rails.root.join("tmp/caching-dev.txt").exist?
|
20
23
|
<%- unless options.api? -%>
|
21
24
|
config.action_controller.perform_caching = true
|
22
25
|
config.action_controller.enable_fragment_cache_logging = true
|
@@ -24,7 +27,7 @@ Rails.application.configure do
|
|
24
27
|
<%- end -%>
|
25
28
|
config.cache_store = :memory_store
|
26
29
|
config.public_file_server.headers = {
|
27
|
-
|
30
|
+
"Cache-Control" => "public, max-age=#{2.days.to_i}"
|
28
31
|
}
|
29
32
|
else
|
30
33
|
config.action_controller.perform_caching = false
|
@@ -61,12 +64,7 @@ Rails.application.configure do
|
|
61
64
|
config.active_record.verbose_query_logs = true
|
62
65
|
|
63
66
|
<%- end -%>
|
64
|
-
<%- unless
|
65
|
-
# Debug mode disables concatenation and preprocessing of assets.
|
66
|
-
# This option may cause significant delays in view rendering with a large
|
67
|
-
# number of complex assets.
|
68
|
-
config.assets.debug = true
|
69
|
-
|
67
|
+
<%- unless skip_sprockets? -%>
|
70
68
|
# Suppress logger output for asset requests.
|
71
69
|
config.assets.quiet = true
|
72
70
|
<%- end -%>
|
@@ -77,10 +75,6 @@ Rails.application.configure do
|
|
77
75
|
# Annotate rendered view with file names.
|
78
76
|
# config.action_view.annotate_rendered_view_with_filenames = true
|
79
77
|
|
80
|
-
# Use an evented file watcher to asynchronously detect changes in source code,
|
81
|
-
# routes, locales, etc. This feature depends on the listen gem.
|
82
|
-
<%= '# ' unless depend_on_listen? %>config.file_watcher = ActiveSupport::EventedFileUpdateChecker
|
83
|
-
|
84
78
|
# Uncomment if you wish to allow Action Cable access from any origin.
|
85
79
|
# config.action_cable.disable_request_forgery_protection = true
|
86
80
|
end
|
@@ -24,9 +24,9 @@ Rails.application.configure do
|
|
24
24
|
|
25
25
|
# Disable serving static files from the `/public` folder by default since
|
26
26
|
# Apache or NGINX already handles this.
|
27
|
-
config.public_file_server.enabled = ENV[
|
27
|
+
config.public_file_server.enabled = ENV["RAILS_SERVE_STATIC_FILES"].present?
|
28
28
|
|
29
|
-
<%- unless
|
29
|
+
<%- unless skip_sprockets? -%>
|
30
30
|
# Compress CSS using a preprocessor.
|
31
31
|
# config.assets.css_compressor = :sass
|
32
32
|
|
@@ -35,11 +35,11 @@ Rails.application.configure do
|
|
35
35
|
|
36
36
|
<%- end -%>
|
37
37
|
# Enable serving of images, stylesheets, and JavaScripts from an asset server.
|
38
|
-
# config.asset_host =
|
38
|
+
# config.asset_host = "http://assets.example.com"
|
39
39
|
|
40
40
|
# Specifies the header that your server uses for sending files.
|
41
|
-
# config.action_dispatch.x_sendfile_header =
|
42
|
-
# config.action_dispatch.x_sendfile_header =
|
41
|
+
# config.action_dispatch.x_sendfile_header = "X-Sendfile" # for Apache
|
42
|
+
# config.action_dispatch.x_sendfile_header = "X-Accel-Redirect" # for NGINX
|
43
43
|
|
44
44
|
<%- unless skip_active_storage? -%>
|
45
45
|
# Store uploaded files on the local file system (see config/storage.yml for options).
|
@@ -49,8 +49,8 @@ Rails.application.configure do
|
|
49
49
|
<%- unless options[:skip_action_cable] -%>
|
50
50
|
# Mount Action Cable outside main process or domain.
|
51
51
|
# config.action_cable.mount_path = nil
|
52
|
-
# config.action_cable.url =
|
53
|
-
# config.action_cable.allowed_request_origins = [
|
52
|
+
# config.action_cable.url = "wss://example.com/cable"
|
53
|
+
# config.action_cable.allowed_request_origins = [ "http://example.com", /http:\/\/example.*/ ]
|
54
54
|
|
55
55
|
<%- end -%>
|
56
56
|
# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
|
@@ -70,8 +70,8 @@ Rails.application.configure do
|
|
70
70
|
# Use a real queuing backend for Active Job (and separate queues per environment).
|
71
71
|
# config.active_job.queue_adapter = :resque
|
72
72
|
# config.active_job.queue_name_prefix = "<%= app_name %>_production"
|
73
|
-
<%- end -%>
|
74
73
|
|
74
|
+
<%- end -%>
|
75
75
|
<%- unless options.skip_action_mailer? -%>
|
76
76
|
config.action_mailer.perform_caching = false
|
77
77
|
|
@@ -84,21 +84,15 @@ Rails.application.configure do
|
|
84
84
|
# the I18n.default_locale when a translation cannot be found).
|
85
85
|
config.i18n.fallbacks = true
|
86
86
|
|
87
|
-
#
|
88
|
-
config.active_support.
|
89
|
-
|
90
|
-
# Log disallowed deprecations.
|
91
|
-
config.active_support.disallowed_deprecation = :log
|
92
|
-
|
93
|
-
# Tell Active Support which deprecation messages to disallow.
|
94
|
-
config.active_support.disallowed_deprecation_warnings = []
|
87
|
+
# Don't log any deprecations.
|
88
|
+
config.active_support.report_deprecations = false
|
95
89
|
|
96
90
|
# Use default logging formatter so that PID and timestamp are not suppressed.
|
97
91
|
config.log_formatter = ::Logger::Formatter.new
|
98
92
|
|
99
93
|
# Use a different logger for distributed setups.
|
100
94
|
# require "syslog/logger"
|
101
|
-
# config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new
|
95
|
+
# config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new "app-name")
|
102
96
|
|
103
97
|
if ENV["RAILS_LOG_TO_STDOUT"].present?
|
104
98
|
logger = ActiveSupport::Logger.new(STDOUT)
|
@@ -131,4 +125,14 @@ Rails.application.configure do
|
|
131
125
|
# config.active_record.database_selector = { delay: 2.seconds }
|
132
126
|
# config.active_record.database_resolver = ActiveRecord::Middleware::DatabaseSelector::Resolver
|
133
127
|
# config.active_record.database_resolver_context = ActiveRecord::Middleware::DatabaseSelector::Resolver::Session
|
128
|
+
|
129
|
+
# Inserts middleware to perform automatic shard swapping. The `shard_selector` hash
|
130
|
+
# can be used to pass options to the `ShardSelector` middleware. The `lock` option is
|
131
|
+
# used to determine whether shard swapping should be prohibited for the request.
|
132
|
+
#
|
133
|
+
# The `shard_resolver` option is used by the middleware to determine which shard
|
134
|
+
# to switch to. The application must provide a mechanism for finding the shard name
|
135
|
+
# in a proc. See guides for an example.
|
136
|
+
# config.active_record.shard_selector = { lock: true }
|
137
|
+
# config.active_record.shard_resolver = ->(request) { Tenant.find_by!(host: request.host).shard }
|
134
138
|
end
|
@@ -8,23 +8,18 @@ require "active_support/core_ext/integer/time"
|
|
8
8
|
Rails.application.configure do
|
9
9
|
# Settings specified here will take precedence over those in config/application.rb.
|
10
10
|
|
11
|
-
|
12
|
-
<%- if spring_install? -%>
|
13
|
-
config.cache_classes = false
|
14
|
-
config.action_view.cache_template_loading = true
|
15
|
-
<%- else -%>
|
11
|
+
# Turn false under Spring and add config.action_view.cache_template_loading = true
|
16
12
|
config.cache_classes = true
|
17
|
-
<%- end -%>
|
18
13
|
|
19
|
-
#
|
20
|
-
#
|
21
|
-
#
|
22
|
-
config.eager_load =
|
14
|
+
# Eager loading loads your whole application. When running a single test locally,
|
15
|
+
# this probably isn't necessary. It's a good idea to do in a continuous integration
|
16
|
+
# system, or in some way before deploying your code.
|
17
|
+
config.eager_load = ENV["CI"].present?
|
23
18
|
|
24
19
|
# Configure public file server for tests with Cache-Control for performance.
|
25
20
|
config.public_file_server.enabled = true
|
26
21
|
config.public_file_server.headers = {
|
27
|
-
|
22
|
+
"Cache-Control" => "public, max-age=#{1.hour.to_i}"
|
28
23
|
}
|
29
24
|
|
30
25
|
# Show full error reports and disable caching.
|
@@ -1,14 +1,10 @@
|
|
1
1
|
# Be sure to restart your server when you modify this file.
|
2
2
|
|
3
3
|
# Version of your assets, change this if you want to expire all your assets.
|
4
|
-
Rails.application.config.assets.version =
|
4
|
+
Rails.application.config.assets.version = "1.0"
|
5
5
|
|
6
6
|
# Add additional assets to the asset load path.
|
7
7
|
# Rails.application.config.assets.paths << Emoji.images_path
|
8
|
-
<%- unless options[:skip_javascript] -%>
|
9
|
-
# Add Yarn node_modules folder to the asset load path.
|
10
|
-
Rails.application.config.assets.paths << Rails.root.join('node_modules')
|
11
|
-
<%- end -%>
|
12
8
|
|
13
9
|
# Precompile additional assets.
|
14
10
|
# application.js, application.css, and all non-JS/CSS in the app/assets
|
data/lib/rails/generators/rails/app/templates/config/initializers/content_security_policy.rb.tt
CHANGED
@@ -4,29 +4,23 @@
|
|
4
4
|
# For further information see the following documentation
|
5
5
|
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy
|
6
6
|
|
7
|
-
# Rails.application.
|
8
|
-
#
|
9
|
-
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
#
|
13
|
-
#
|
14
|
-
|
15
|
-
#
|
16
|
-
#
|
17
|
-
|
18
|
-
|
19
|
-
# #
|
20
|
-
#
|
7
|
+
# Rails.application.configure do
|
8
|
+
# config.content_security_policy do |policy|
|
9
|
+
# policy.default_src :self, :https
|
10
|
+
# policy.font_src :self, :https, :data
|
11
|
+
# policy.img_src :self, :https, :data
|
12
|
+
# policy.object_src :none
|
13
|
+
# policy.script_src :self, :https
|
14
|
+
# policy.style_src :self, :https
|
15
|
+
# # Specify URI for violation reports
|
16
|
+
# # policy.report_uri "/csp-violation-report-endpoint"
|
17
|
+
# end
|
18
|
+
#
|
19
|
+
# # Generate session nonces for permitted importmap and inline scripts
|
20
|
+
# config.content_security_policy_nonce_generator = ->(request) { request.session.id.to_s }
|
21
|
+
# config.content_security_policy_nonce_directives = %w(script-src)
|
22
|
+
#
|
23
|
+
# # Report CSP violations to a specified URI. See:
|
24
|
+
# # https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy-Report-Only
|
25
|
+
# # config.content_security_policy_report_only = true
|
21
26
|
# end
|
22
|
-
|
23
|
-
# If you are using UJS then enable automatic nonce generation
|
24
|
-
# Rails.application.config.content_security_policy_nonce_generator = -> request { SecureRandom.base64(16) }
|
25
|
-
|
26
|
-
# Set the nonce only to specific directives
|
27
|
-
# Rails.application.config.content_security_policy_nonce_directives = %w(script-src)
|
28
|
-
|
29
|
-
# Report CSP violations to a specified URI
|
30
|
-
# For further information see the following documentation:
|
31
|
-
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy-Report-Only
|
32
|
-
# Rails.application.config.content_security_policy_report_only = true
|
@@ -7,9 +7,9 @@
|
|
7
7
|
|
8
8
|
# Rails.application.config.middleware.insert_before 0, Rack::Cors do
|
9
9
|
# allow do
|
10
|
-
# origins
|
10
|
+
# origins "example.com"
|
11
11
|
#
|
12
|
-
# resource
|
12
|
+
# resource "*",
|
13
13
|
# headers: :any,
|
14
14
|
# methods: [:get, :post, :put, :patch, :delete, :options, :head]
|
15
15
|
# end
|
@@ -4,13 +4,13 @@
|
|
4
4
|
# are locale specific, and you may define rules for as many different
|
5
5
|
# locales as you wish. All of these examples are active by default:
|
6
6
|
# ActiveSupport::Inflector.inflections(:en) do |inflect|
|
7
|
-
# inflect.plural /^(ox)$/i,
|
8
|
-
# inflect.singular /^(ox)en/i,
|
9
|
-
# inflect.irregular
|
7
|
+
# inflect.plural /^(ox)$/i, "\\1en"
|
8
|
+
# inflect.singular /^(ox)en/i, "\\1"
|
9
|
+
# inflect.irregular "person", "people"
|
10
10
|
# inflect.uncountable %w( fish sheep )
|
11
11
|
# end
|
12
12
|
|
13
13
|
# These inflection rules are supported but not enabled by default:
|
14
14
|
# ActiveSupport::Inflector.inflections(:en) do |inflect|
|
15
|
-
# inflect.acronym
|
15
|
+
# inflect.acronym "RESTful"
|
16
16
|
# end
|
data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_0.rb.tt
ADDED
@@ -0,0 +1,121 @@
|
|
1
|
+
# Be sure to restart your server when you modify this file.
|
2
|
+
#
|
3
|
+
# This file eases your Rails 7.0 framework defaults upgrade.
|
4
|
+
#
|
5
|
+
# Uncomment each configuration one by one to switch to the new default.
|
6
|
+
# Once your application is ready to run with all new defaults, you can remove
|
7
|
+
# this file and set the `config.load_defaults` to `7.0`.
|
8
|
+
#
|
9
|
+
# Read the Guide for Upgrading Ruby on Rails for more info on each option.
|
10
|
+
# https://guides.rubyonrails.org/upgrading_ruby_on_rails.html
|
11
|
+
|
12
|
+
# Raise an error when trying to use forgery protection without a working
|
13
|
+
# session.
|
14
|
+
# Rails.application.config.action_controller.silence_disabled_session_errors = false
|
15
|
+
|
16
|
+
# `button_to` view helper will render `<button>` element, regardless of whether
|
17
|
+
# or not the content is passed as the first argument or as a block.
|
18
|
+
# Rails.application.config.action_view.button_to_generates_button_tag = true
|
19
|
+
|
20
|
+
# `stylesheet_link_tag` view helper will not render the media attribute by default.
|
21
|
+
# Rails.application.config.action_view.apply_stylesheet_media_default = false
|
22
|
+
|
23
|
+
# Change the digest class for the key generators to `OpenSSL::Digest::SHA256`.
|
24
|
+
# Changing this default means invalidate all encrypted messages generated by
|
25
|
+
# your application and, all the encrypted cookies. Only change this after you
|
26
|
+
# rotated all the messages using the key rotator.
|
27
|
+
#
|
28
|
+
# See upgrading guide for more information on how to build a rotator.
|
29
|
+
# https://guides.rubyonrails.org/v7.0/upgrading_ruby_on_rails.html
|
30
|
+
# Rails.application.config.active_support.key_generator_hash_digest_class = OpenSSL::Digest::SHA256
|
31
|
+
|
32
|
+
# Change the digest class for ActiveSupport::Digest.
|
33
|
+
# Changing this default means that for example Etags change and
|
34
|
+
# various cache keys leading to cache invalidation.
|
35
|
+
# Rails.application.config.active_support.hash_digest_class = OpenSSL::Digest::SHA256
|
36
|
+
|
37
|
+
# Don't override ActiveSupport::TimeWithZone.name and use the default Ruby
|
38
|
+
# implementation.
|
39
|
+
# Rails.application.config.active_support.remove_deprecated_time_with_zone_name = true
|
40
|
+
|
41
|
+
# Change the format of the cache entry.
|
42
|
+
# Changing this default means that all new cache entries added to the cache
|
43
|
+
# will have a different format that is not supported by Rails 6.1 applications.
|
44
|
+
# Only change this value after your application is fully deployed to Rails 7.0
|
45
|
+
# and you have no plans to rollback.
|
46
|
+
# Rails.application.config.active_support.cache_format_version = 7.0
|
47
|
+
|
48
|
+
# Calls `Rails.application.executor.wrap` around test cases.
|
49
|
+
# This makes test cases behave closer to an actual request or job.
|
50
|
+
# Several features that are normally disabled in test, such as Active Record query cache
|
51
|
+
# and asynchronous queries will then be enabled.
|
52
|
+
# Rails.application.config.active_support.executor_around_test_case = true
|
53
|
+
|
54
|
+
# Define the isolation level of most of Rails internal state.
|
55
|
+
# If you use a fiber based server or job processor, you should set it to `:fiber`.
|
56
|
+
# Otherwise the default of `:thread` if preferable.
|
57
|
+
# Rails.application.config.active_support.isolation_level = :thread
|
58
|
+
|
59
|
+
# Set both the `:open_timeout` and `:read_timeout` values for `:smtp` delivery method.
|
60
|
+
# Rails.application.config.action_mailer.smtp_timeout = 5
|
61
|
+
|
62
|
+
# The ActiveStorage video previewer will now use scene change detection to generate
|
63
|
+
# better preview images (rather than the previous default of using the first frame
|
64
|
+
# of the video).
|
65
|
+
# Rails.application.config.active_storage.video_preview_arguments =
|
66
|
+
# "-vf 'select=eq(n\\,0)+eq(key\\,1)+gt(scene\\,0.015),loop=loop=-1:size=2,trim=start_frame=1' -frames:v 1 -f image2"
|
67
|
+
|
68
|
+
# Automatically infer `inverse_of` for associations with a scope.
|
69
|
+
# Rails.application.config.active_record.automatic_scope_inversing = true
|
70
|
+
|
71
|
+
# Raise when running tests if fixtures contained foreign key violations
|
72
|
+
# Rails.application.config.active_record.verify_foreign_keys_for_fixtures = true
|
73
|
+
|
74
|
+
# Disable partial inserts.
|
75
|
+
# This default means that all columns will be referenced in INSERT queries
|
76
|
+
# regardless of whether they have a default or not.
|
77
|
+
# Rails.application.config.active_record.partial_inserts = false
|
78
|
+
#
|
79
|
+
# Protect from open redirect attacks in `redirect_back_or_to` and `redirect_to`.
|
80
|
+
# Rails.application.config.action_controller.raise_on_open_redirects = true
|
81
|
+
|
82
|
+
# Change the variant processor for Active Storage.
|
83
|
+
# Changing this default means updating all places in your code that
|
84
|
+
# generate variants to use image processing macros and ruby-vips
|
85
|
+
# operations. See the upgrading guide for detail on the changes required.
|
86
|
+
# The `:mini_magick` option is not deprecated; it's fine to keep using it.
|
87
|
+
# Rails.application.config.active_storage.variant_processor = :vips
|
88
|
+
|
89
|
+
# If you're upgrading and haven't set `cookies_serializer` previously, your cookie serializer
|
90
|
+
# was `:marshal`. Convert all cookies to JSON, using the `:hybrid` formatter.
|
91
|
+
#
|
92
|
+
# If you're confident all your cookies are JSON formatted, you can switch to the `:json` formatter.
|
93
|
+
#
|
94
|
+
# Continue to use `:marshal` for backward-compatibility with old cookies.
|
95
|
+
#
|
96
|
+
# If you have configured the serializer elsewhere, you can remove this.
|
97
|
+
#
|
98
|
+
# See https://guides.rubyonrails.org/action_controller_overview.html#cookies for more information.
|
99
|
+
# Rails.application.config.action_dispatch.cookies_serializer = :hybrid
|
100
|
+
|
101
|
+
# Enable parameter wrapping for JSON.
|
102
|
+
# Previously this was set in an initializer. It's fine to keep using that initializer if you've customized it.
|
103
|
+
# To disable parameter wrapping entirely, set this config to `false`.
|
104
|
+
# Rails.application.config.action_controller.wrap_parameters_by_default = true
|
105
|
+
|
106
|
+
# Specifies whether generated namespaced UUIDs follow the RFC 4122 standard for namespace IDs provided as a
|
107
|
+
# `String` to `Digest::UUID.uuid_v3` or `Digest::UUID.uuid_v5` method calls.
|
108
|
+
#
|
109
|
+
# See https://guides.rubyonrails.org/configuring.html#config-active-support-use-rfc4122-namespaced-uuids for
|
110
|
+
# more information.
|
111
|
+
# Rails.application.config.active_support.use_rfc4122_namespaced_uuids = true
|
112
|
+
|
113
|
+
# Change the default headers to disable browsers' flawed legacy XSS protection.
|
114
|
+
# Rails.application.config.action_dispatch.default_headers = {
|
115
|
+
# "X-Frame-Options" => "SAMEORIGIN",
|
116
|
+
# "X-XSS-Protection" => "0",
|
117
|
+
# "X-Content-Type-Options" => "nosniff",
|
118
|
+
# "X-Download-Options" => "noopen",
|
119
|
+
# "X-Permitted-Cross-Domain-Policies" => "none",
|
120
|
+
# "Referrer-Policy" => "strict-origin-when-cross-origin"
|
121
|
+
# }
|
@@ -4,11 +4,11 @@
|
|
4
4
|
#
|
5
5
|
# To use the locales, use `I18n.t`:
|
6
6
|
#
|
7
|
-
# I18n.t
|
7
|
+
# I18n.t "hello"
|
8
8
|
#
|
9
9
|
# In views, this is aliased to just `t`:
|
10
10
|
#
|
11
|
-
# <%= t(
|
11
|
+
# <%= t("hello") %>
|
12
12
|
#
|
13
13
|
# To use a different locale, set it with `I18n.locale`:
|
14
14
|
#
|
@@ -24,7 +24,7 @@
|
|
24
24
|
# Instead, surround them with single quotes.
|
25
25
|
#
|
26
26
|
# en:
|
27
|
-
#
|
27
|
+
# "true": "foo"
|
28
28
|
#
|
29
29
|
# To learn more, please read the Rails Internationalization guide
|
30
30
|
# available at https://guides.rubyonrails.org/i18n.html.
|
@@ -1,3 +1,6 @@
|
|
1
1
|
Rails.application.routes.draw do
|
2
|
-
#
|
2
|
+
# Define your application routes per the DSL in https://guides.rubyonrails.org/routing.html
|
3
|
+
|
4
|
+
# Defines the root path route ("/")
|
5
|
+
# root "articles#index"
|
3
6
|
end
|