railties 6.1.7.8 → 7.0.0.alpha1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +89 -463
- data/MIT-LICENSE +1 -1
- data/RDOC_MAIN.rdoc +16 -16
- data/README.rdoc +0 -1
- data/lib/rails/app_updater.rb +2 -4
- data/lib/rails/application/bootstrap.rb +17 -5
- data/lib/rails/application/configuration.rb +52 -31
- data/lib/rails/application/default_middleware_stack.rb +6 -3
- data/lib/rails/application/finisher.rb +43 -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 +6 -2
- data/lib/rails/commands/dbconsole/dbconsole_command.rb +16 -15
- 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 +2 -2
- data/lib/rails/engine.rb +23 -27
- 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 +66 -102
- 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/edit.html.erb.tt +8 -4
- data/lib/rails/generators/erb/scaffold/templates/index.html.erb.tt +5 -27
- 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 +7 -16
- data/lib/rails/generators/erb.rb +1 -1
- data/lib/rails/generators/generated_attribute.rb +40 -4
- 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 +44 -88
- data/lib/rails/generators/rails/app/templates/Gemfile.tt +41 -52
- 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 -10
- 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/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 +2 -11
- data/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt +9 -15
- data/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt +2 -7
- 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 +0 -5
- 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 +85 -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 +3 -0
- 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 +0 -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 +4 -2
- 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/models/%namespaced_name%/application_record.rb.tt +1 -1
- 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 -4
- 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 +3 -3
- 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 +9 -9
- data/lib/rails/ruby_version_check.rb +3 -3
- data/lib/rails/secrets.rb +8 -10
- 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 +5 -1
- 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 +12 -10
- 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 +7 -5
- data/lib/rails/test_unit/testing.rake +4 -9
- data/lib/rails.rb +1 -0
- metadata +37 -39
- 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/cookies_serializer.rb.tt +0 -5
- 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/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
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 809add07149bc6a8fc6bd9e1848b4237e6a39642319d686c0e5e7c1ff005a0fe
|
4
|
+
data.tar.gz: 3676fc831492d4e660fe82b657b25630373e1176d5dfc0d6375857aa0de0d0cd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 136de74c284cec25a993107e665b70f0732116b770c0ca3081b2b9f6a2366046d318d0153da438b557485aadb18ab0850c7135c20ef662154418e1690a0f8788
|
7
|
+
data.tar.gz: a6ad192510bd25f054e931fcbb7ef7fa3c34cbc90a9445d7b8ca173c9c2f58b5ffd40e33b10ddb27d7cdf5cf026ebb5e2a9cd7e6637804d291e922310fc795c8
|
data/CHANGELOG.md
CHANGED
@@ -1,116 +1,101 @@
|
|
1
|
-
## Rails
|
1
|
+
## Rails 7.0.0.alpha1 (September 15, 2021) ##
|
2
2
|
|
3
|
-
*
|
3
|
+
* New and upgraded Rails apps no longer generate `config/initializers/application_controller_renderer.rb`
|
4
|
+
or `config/initializers/cookies_serializer.rb`
|
4
5
|
|
6
|
+
The default value for `cookies_serializer` (`:json`) has been moved to `config.load_defaults("7.0")`.
|
7
|
+
The new framework defaults file sets the serializer to `:marshal`.
|
5
8
|
|
6
|
-
|
7
|
-
|
8
|
-
* No changes.
|
9
|
-
|
10
|
-
|
11
|
-
## Rails 6.1.7.6 (August 22, 2023) ##
|
12
|
-
|
13
|
-
* No changes.
|
14
|
-
|
15
|
-
|
16
|
-
## Rails 6.1.7.5 (August 22, 2023) ##
|
17
|
-
|
18
|
-
* No changes.
|
19
|
-
|
20
|
-
|
21
|
-
## Rails 6.1.7.4 (June 26, 2023) ##
|
22
|
-
|
23
|
-
* No changes.
|
24
|
-
|
25
|
-
|
26
|
-
## Rails 6.1.7.3 (March 13, 2023) ##
|
27
|
-
|
28
|
-
* No changes.
|
29
|
-
|
30
|
-
|
31
|
-
## Rails 6.1.7.2 (January 24, 2023) ##
|
32
|
-
|
33
|
-
* No changes.
|
34
|
-
|
35
|
-
|
36
|
-
## Rails 6.1.7.1 (January 17, 2023) ##
|
37
|
-
|
38
|
-
* No changes.
|
39
|
-
|
40
|
-
|
41
|
-
## Rails 6.1.7 (September 09, 2022) ##
|
42
|
-
|
43
|
-
* No changes.
|
44
|
-
|
45
|
-
|
46
|
-
## Rails 6.1.6.1 (July 12, 2022) ##
|
47
|
-
|
48
|
-
* No changes.
|
49
|
-
|
9
|
+
*Alex Ghiculescu*
|
50
10
|
|
51
|
-
|
11
|
+
* New applications get a dependency on the new `debug` gem, replacing `byebug`.
|
52
12
|
|
53
|
-
*
|
13
|
+
*Xavier Noria*
|
54
14
|
|
15
|
+
* Add SSL support for postgresql in `bin/rails dbconsole`.
|
55
16
|
|
56
|
-
|
17
|
+
Fixes #43114.
|
57
18
|
|
58
|
-
*
|
19
|
+
*Michael Bayucot*
|
59
20
|
|
21
|
+
* Add support for comments above gem declaration in Rails application templates, e.g. `gem("nokogiri", comment: "For XML")`.
|
60
22
|
|
61
|
-
|
23
|
+
*Linas Juškevičius*
|
62
24
|
|
63
|
-
*
|
64
|
-
|
25
|
+
* The setter `config.autoloader=` has been deleted. `zeitwerk` is the only
|
26
|
+
available autoloading mode.
|
65
27
|
|
66
28
|
*Xavier Noria*
|
67
29
|
|
68
|
-
*
|
30
|
+
* `config.autoload_once_paths` can be configured in the body of the
|
31
|
+
application class defined in `config/application.rb` or in the configuration
|
32
|
+
for environments in `config/environments/*`.
|
69
33
|
|
70
|
-
|
34
|
+
Similarly, engines can configure that collection in the class body of the
|
35
|
+
engine class or in the configuration for environments.
|
71
36
|
|
72
|
-
|
37
|
+
After that, the collection is frozen, and you can autoload from those paths.
|
38
|
+
They are managed by the `Rails.autoloaders.once` autoloader, which does not
|
39
|
+
reload, only autoloads/eager loads.
|
73
40
|
|
74
|
-
*
|
41
|
+
*Xavier Noria*
|
75
42
|
|
43
|
+
* During initialization, you cannot autoload reloadable classes or modules
|
44
|
+
like application models, unless they are wrapped in a `to_prepare` block.
|
45
|
+
For example, from `config/initializers/*`, or in application, engines, or
|
46
|
+
railties initializers.
|
76
47
|
|
77
|
-
|
48
|
+
Please check the [autoloading
|
49
|
+
guide](https://guides.rubyonrails.org/v7.0/autoloading_and_reloading_constants.html#autoloading-when-the-application-boots)
|
50
|
+
for details.
|
78
51
|
|
79
|
-
*
|
52
|
+
*Xavier Noria*
|
80
53
|
|
54
|
+
* While they are allowed to have elements in common, it is no longer required
|
55
|
+
that `config.autoload_once_paths` is a subset of `config.autoload_paths`.
|
56
|
+
The former are managed by the `once` autoloader. The `main` autoloader
|
57
|
+
manages the latter minus the former.
|
81
58
|
|
82
|
-
|
59
|
+
*Xavier Noria*
|
83
60
|
|
84
|
-
*
|
61
|
+
* Show Rake task description if command is run with `-h`.
|
85
62
|
|
63
|
+
Adding `-h` (or `--help`) to a Rails command that's a Rake task now outputs
|
64
|
+
the task description instead of the general Rake help.
|
86
65
|
|
87
|
-
|
66
|
+
*Petrik de Heus*
|
88
67
|
|
89
|
-
*
|
68
|
+
* Add missing `plugin new` command to help.
|
90
69
|
|
70
|
+
*Petrik de Heus
|
91
71
|
|
92
|
-
|
72
|
+
* Fix `config_for` error when there's only a shared root array.
|
93
73
|
|
94
|
-
*
|
74
|
+
*Loïc Delmaire*
|
95
75
|
|
76
|
+
* Raise an error in generators if an index type is invalid.
|
96
77
|
|
97
|
-
|
78
|
+
*Petrik de Heus*
|
98
79
|
|
99
|
-
*
|
80
|
+
* `package.json` now uses a strict version constraint for Rails JavaScript packages on new Rails apps.
|
100
81
|
|
101
|
-
|
82
|
+
*Zachary Scott*, *Alex Ghiculescu*
|
102
83
|
|
103
|
-
|
84
|
+
* Modified scaffold generator template so that running
|
85
|
+
`rails g scaffold Author` no longer generates tests called "creating
|
86
|
+
a Author", "updating a Author", and "destroying a Author".
|
104
87
|
|
105
|
-
|
88
|
+
Fixes #40744.
|
106
89
|
|
90
|
+
*Michael Duchemin*
|
107
91
|
|
108
|
-
|
92
|
+
* Raise an error in generators if a field type is invalid.
|
109
93
|
|
110
|
-
*
|
94
|
+
*Petrik de Heus*
|
111
95
|
|
96
|
+
* `bin/rails tmp:clear` deletes also files and directories in `tmp/storage`.
|
112
97
|
|
113
|
-
|
98
|
+
*George Claghorn*
|
114
99
|
|
115
100
|
* Fix compatibility with `psych >= 4`.
|
116
101
|
|
@@ -119,421 +104,62 @@
|
|
119
104
|
|
120
105
|
*Jean Boussier*
|
121
106
|
|
122
|
-
*
|
123
|
-
|
124
|
-
*Jean Boussier*
|
125
|
-
|
126
|
-
* Fix create migration generator with `--pretend` option.
|
127
|
-
|
128
|
-
*euxx*
|
129
|
-
|
130
|
-
|
131
|
-
## Rails 6.1.3.2 (May 05, 2021) ##
|
132
|
-
|
133
|
-
* No changes.
|
134
|
-
|
135
|
-
|
136
|
-
## Rails 6.1.3.1 (March 26, 2021) ##
|
137
|
-
|
138
|
-
* No changes.
|
139
|
-
|
107
|
+
* Allow loading nested locales in engines.
|
140
108
|
|
141
|
-
|
109
|
+
*Gannon McGibbon*
|
142
110
|
|
143
|
-
*
|
144
|
-
|
145
|
-
|
146
|
-
## Rails 6.1.2.1 (February 10, 2021) ##
|
147
|
-
|
148
|
-
* No changes.
|
111
|
+
* Ensure `Rails.application.config_for` always cast hashes to `ActiveSupport::OrderedOptions`.
|
149
112
|
|
113
|
+
*Jean Boussier*
|
150
114
|
|
151
|
-
|
115
|
+
* Remove `Rack::Runtime` from the default middleware stack and deprecate
|
116
|
+
referencing it in middleware operations without adding it back.
|
152
117
|
|
153
|
-
*
|
118
|
+
*Hartley McGuire*
|
154
119
|
|
120
|
+
* Allow adding additional authorized hosts in development via `ENV['RAILS_DEVELOPMENT_HOSTS']`.
|
155
121
|
|
156
|
-
|
122
|
+
*Josh Abernathy*, *Debbie Milburn*
|
157
123
|
|
158
|
-
*
|
124
|
+
* Add app concern and test keepfiles to generated engine plugins.
|
159
125
|
|
160
|
-
*
|
126
|
+
*Gannon McGibbon*
|
161
127
|
|
162
|
-
*
|
128
|
+
* Stop generating a license for in-app plugins.
|
163
129
|
|
164
|
-
|
130
|
+
*Gannon McGibbon*
|
165
131
|
|
166
|
-
|
132
|
+
* `rails app:update` no longer prompts you to overwrite files that are generally modified in the
|
133
|
+
course of developing a Rails app. See [#41083](https://github.com/rails/rails/pull/41083) for
|
134
|
+
the full list of changes.
|
167
135
|
|
136
|
+
*Alex Ghiculescu*
|
168
137
|
|
169
|
-
|
138
|
+
* Change default branch for new Rails projects and plugins to `main`.
|
170
139
|
|
171
|
-
*
|
172
|
-
This is useful in case your application or a library needs to run
|
173
|
-
another process next to the Rails server. This is quite common in development
|
174
|
-
for instance to run the Webpack or the React server.
|
140
|
+
*Prateek Choudhary*
|
175
141
|
|
176
|
-
|
142
|
+
* The new method `Rails.benchmark` gives you a quick way to measure and log the execution time taken by a block:
|
177
143
|
|
178
|
-
|
179
|
-
|
180
|
-
server do
|
181
|
-
WebpackServer.run
|
144
|
+
def test_expensive_stuff
|
145
|
+
Rails.benchmark("test_expensive_stuff") { ... }
|
182
146
|
end
|
183
|
-
end
|
184
|
-
```
|
185
|
-
|
186
|
-
*Edouard Chin*
|
187
|
-
|
188
|
-
* Remove deprecated `rake dev:cache` tasks.
|
189
|
-
|
190
|
-
*Rafael Mendonça França*
|
191
|
-
|
192
|
-
* Remove deprecated `rake routes` tasks.
|
193
|
-
|
194
|
-
*Rafael Mendonça França*
|
195
|
-
|
196
|
-
* Remove deprecated `rake initializers` tasks.
|
197
|
-
|
198
|
-
*Rafael Mendonça França*
|
199
|
-
|
200
|
-
* Remove deprecated support for using the `HOST` environment variable to specify the server IP.
|
201
|
-
|
202
|
-
*Rafael Mendonça França*
|
203
|
-
|
204
|
-
* Remove deprecated `server` argument from the rails server command.
|
205
|
-
|
206
|
-
*Rafael Mendonça França*
|
207
|
-
|
208
|
-
* Remove deprecated `SOURCE_ANNOTATION_DIRECTORIES` environment variable support from `rails notes`.
|
209
|
-
|
210
|
-
*Rafael Mendonça França*
|
211
|
-
|
212
|
-
* Remove deprecated `connection` option in the `rails dbconsole` command.
|
213
|
-
|
214
|
-
*Rafael Mendonça França*
|
215
|
-
|
216
|
-
* Remove depreated `rake notes` tasks.
|
217
|
-
|
218
|
-
*Rafael Mendonça França*
|
219
|
-
|
220
|
-
* Return a 405 Method Not Allowed response when a request uses an unknown HTTP method.
|
221
|
-
|
222
|
-
Fixes #38998.
|
223
|
-
|
224
|
-
*Loren Norman*
|
225
|
-
|
226
|
-
* Make railsrc file location xdg-specification compliant
|
227
|
-
|
228
|
-
`rails new` will now look for the default `railsrc` file at
|
229
|
-
`$XDG_CONFIG_HOME/rails/railsrc` (or `~/.config/rails/railsrc` if
|
230
|
-
`XDG_CONFIG_HOME` is not set). If this file does not exist, `rails new`
|
231
|
-
will fall back to `~/.railsrc`.
|
232
|
-
|
233
|
-
The fallback behaviour means this does not cause any breaking changes.
|
234
|
-
|
235
|
-
*Nick Wolf*
|
236
|
-
|
237
|
-
* Change the default logging level from :debug to :info to avoid inadvertent exposure of personally
|
238
|
-
identifiable information (PII) in production environments.
|
239
|
-
|
240
|
-
*Eric M. Payne*
|
241
|
-
|
242
|
-
* Automatically generate abstract class when using multiple databases.
|
243
|
-
|
244
|
-
When generating a scaffold for a multiple database application, Rails will now automatically generate the abstract class for the database when the database argument is passed. This abstract class will include the connection information for the writing configuration and any models generated for that database will automatically inherit from the abstract class.
|
245
|
-
|
246
|
-
Usage:
|
247
|
-
|
248
|
-
```bash
|
249
|
-
$ bin/rails generate scaffold Pet name:string --database=animals
|
250
|
-
```
|
251
|
-
|
252
|
-
Will create an abstract class for the animals connection.
|
253
|
-
|
254
|
-
```ruby
|
255
|
-
class AnimalsRecord < ApplicationRecord
|
256
|
-
self.abstract_class = true
|
257
|
-
|
258
|
-
connects_to database: { writing: :animals }
|
259
|
-
end
|
260
|
-
```
|
261
|
-
|
262
|
-
And generate a `Pet` model that inherits from the new `AnimalsRecord`:
|
263
|
-
|
264
|
-
```ruby
|
265
|
-
class Pet < AnimalsRecord
|
266
|
-
end
|
267
|
-
```
|
268
|
-
|
269
|
-
If you already have an abstract class and it follows a different pattern than Rails defaults, you can pass a parent class with the database argument.
|
270
|
-
|
271
|
-
```bash
|
272
|
-
$ bin/rails generate scaffold Pet name:string --database=animals --parent=SecondaryBase
|
273
|
-
```
|
274
|
-
|
275
|
-
This will ensure the model inherits from the `SecondaryBase` parent instead of `AnimalsRecord`
|
276
147
|
|
277
|
-
|
278
|
-
class Pet < SecondaryBase
|
279
|
-
end
|
280
|
-
```
|
148
|
+
This functionality was available in some contexts only before.
|
281
149
|
|
282
|
-
*
|
150
|
+
*Simon Perepelitsa*
|
283
151
|
|
284
|
-
*
|
152
|
+
* Applications generated with `--skip-sprockets` no longer get `app/assets/config/manifest.js` and `app/assets/stylesheets/application.css`.
|
285
153
|
|
286
|
-
*
|
287
|
-
|
288
|
-
* Create a new rails app using a minimal stack.
|
289
|
-
|
290
|
-
`rails new cool_app --minimal`
|
291
|
-
|
292
|
-
All the following are excluded from your minimal stack:
|
293
|
-
|
294
|
-
- action_cable
|
295
|
-
- action_mailbox
|
296
|
-
- action_mailer
|
297
|
-
- action_text
|
298
|
-
- active_job
|
299
|
-
- active_storage
|
300
|
-
- bootsnap
|
301
|
-
- jbuilder
|
302
|
-
- spring
|
303
|
-
- system_tests
|
304
|
-
- turbolinks
|
305
|
-
- webpack
|
306
|
-
|
307
|
-
*Haroon Ahmed*, *DHH*
|
308
|
-
|
309
|
-
* Add default ENV variable option with BACKTRACE to turn off backtrace cleaning when debugging framework code in the
|
310
|
-
generated config/initializers/backtrace_silencers.rb.
|
311
|
-
|
312
|
-
`BACKTRACE=1 ./bin/rails runner "MyClass.perform"`
|
313
|
-
|
314
|
-
*DHH*
|
315
|
-
|
316
|
-
* The autoloading guide for Zeitwerk mode documents how to autoload classes
|
317
|
-
during application boot in a safe way.
|
318
|
-
|
319
|
-
*Haroon Ahmed*, *Xavier Noria*
|
320
|
-
|
321
|
-
* The `classic` autoloader starts its deprecation cycle.
|
322
|
-
|
323
|
-
New Rails projects are strongly discouraged from using `classic`, and we recommend that existing projects running on `classic` switch to `zeitwerk` mode when upgrading. Please check the [_Upgrading Ruby on Rails_](https://guides.rubyonrails.org/upgrading_ruby_on_rails.html) guide for tips.
|
324
|
-
|
325
|
-
*Xavier Noria*
|
326
|
-
|
327
|
-
* Adds `rails test:all` for running all tests in the test directory.
|
328
|
-
|
329
|
-
This runs all test files in the test directory, including system tests.
|
330
|
-
|
331
|
-
*Niklas Häusele*
|
332
|
-
|
333
|
-
* Add `config.generators.after_generate` for processing to generated files.
|
334
|
-
|
335
|
-
Register a callback that will get called right after generators has finished.
|
336
|
-
|
337
|
-
*Yuji Yaginuma*
|
338
|
-
|
339
|
-
* Make test file patterns configurable via Environment variables
|
340
|
-
|
341
|
-
This makes test file patterns configurable via two environment variables:
|
342
|
-
`DEFAULT_TEST`, to configure files to test, and `DEFAULT_TEST_EXCLUDE`,
|
343
|
-
to configure files to exclude from testing.
|
344
|
-
|
345
|
-
These values were hardcoded before, which made it difficult to add
|
346
|
-
new categories of tests that should not be executed by default (e.g:
|
347
|
-
smoke tests).
|
348
|
-
|
349
|
-
*Jorge Manrubia*
|
350
|
-
|
351
|
-
* No longer include `rake rdoc` task when generating plugins.
|
352
|
-
|
353
|
-
To generate docs, use the `rdoc lib` command instead.
|
354
|
-
|
355
|
-
*Jonathan Hefner*
|
356
|
-
|
357
|
-
* Allow relative paths with trailing slashes to be passed to `rails test`.
|
358
|
-
|
359
|
-
*Eugene Kenny*
|
360
|
-
|
361
|
-
* Add `rack-mini-profiler` gem to the default `Gemfile`.
|
362
|
-
|
363
|
-
`rack-mini-profiler` displays performance information such as SQL time and flame graphs.
|
364
|
-
It's enabled by default in development environment, but can be enabled in production as well.
|
365
|
-
See the gem [README](https://github.com/MiniProfiler/rack-mini-profiler/blob/master/README.md) for information on how to enable it in production.
|
366
|
-
|
367
|
-
*Osama Sayegh*
|
368
|
-
|
369
|
-
* `rails stats` will now count TypeScript files toward JavaScript stats.
|
370
|
-
|
371
|
-
*Joshua Cody*
|
372
|
-
|
373
|
-
* Run `git init` when generating plugins.
|
374
|
-
|
375
|
-
Opt out with `--skip-git`.
|
376
|
-
|
377
|
-
*OKURA Masafumi*
|
378
|
-
|
379
|
-
* Add benchmark generator.
|
380
|
-
|
381
|
-
Introduce benchmark generator to benchmark Rails applications.
|
382
|
-
|
383
|
-
`rails generate benchmark opt_compare`
|
384
|
-
|
385
|
-
This creates a benchmark file that uses [`benchmark-ips`](https://github.com/evanphx/benchmark-ips).
|
386
|
-
By default, two code blocks can be benchmarked using the `before` and `after` reports.
|
387
|
-
|
388
|
-
You can run the generated benchmark file using:
|
389
|
-
`ruby script/benchmarks/opt_compare.rb`
|
390
|
-
|
391
|
-
*Kevin Jalbert*, *Gannon McGibbon*
|
392
|
-
|
393
|
-
* Cache compiled view templates when running tests by default.
|
394
|
-
|
395
|
-
When generating a new app without `--skip-spring`, caching classes is
|
396
|
-
disabled in `environments/test.rb`. This implicitly disables caching
|
397
|
-
view templates too. This change will enable view template caching by
|
398
|
-
adding this to the generated `environments/test.rb`:
|
399
|
-
|
400
|
-
```ruby
|
401
|
-
config.action_view.cache_template_loading = true
|
402
|
-
```
|
403
|
-
|
404
|
-
*Jorge Manrubia*
|
405
|
-
|
406
|
-
* Introduce middleware move operations.
|
407
|
-
|
408
|
-
With this change, you no longer need to delete and reinsert a middleware to
|
409
|
-
move it from one place to another in the stack:
|
410
|
-
|
411
|
-
```ruby
|
412
|
-
config.middleware.move_before ActionDispatch::Flash, Magical::Unicorns
|
413
|
-
```
|
414
|
-
|
415
|
-
This will move the `Magical::Unicorns` middleware before
|
416
|
-
`ActionDispatch::Flash`. You can also move it after with:
|
417
|
-
|
418
|
-
```ruby
|
419
|
-
config.middleware.move_after ActionDispatch::Flash, Magical::Unicorns
|
420
|
-
```
|
421
|
-
|
422
|
-
*Genadi Samokovarov*
|
423
|
-
|
424
|
-
* Generators that inherit from NamedBase respect `--force` option.
|
425
|
-
|
426
|
-
*Josh Brody*
|
427
|
-
|
428
|
-
* Allow configuration of eager_load behaviour for rake environment:
|
429
|
-
|
430
|
-
config.rake_eager_load
|
431
|
-
|
432
|
-
Defaults to `false` as per previous behaviour.
|
433
|
-
|
434
|
-
*Thierry Joyal*
|
435
|
-
|
436
|
-
* Ensure Rails migration generator respects system-wide primary key config.
|
437
|
-
|
438
|
-
When rails is configured to use a specific primary key type:
|
439
|
-
|
440
|
-
```ruby
|
441
|
-
config.generators do |g|
|
442
|
-
g.orm :active_record, primary_key_type: :uuid
|
443
|
-
end
|
444
|
-
```
|
445
|
-
|
446
|
-
Previously:
|
447
|
-
|
448
|
-
```bash
|
449
|
-
$ bin/rails g migration add_location_to_users location:references
|
450
|
-
```
|
451
|
-
|
452
|
-
The references line in the migration would not have `type: :uuid`.
|
453
|
-
This change causes the type to be applied appropriately.
|
454
|
-
|
455
|
-
*Louis-Michel Couture*, *Dermot Haughey*
|
456
|
-
|
457
|
-
* Deprecate `Rails::DBConsole#config`.
|
458
|
-
|
459
|
-
`Rails::DBConsole#config` is deprecated without replacement. Use `Rails::DBConsole.db_config.configuration_hash` instead.
|
460
|
-
|
461
|
-
*Eileen M. Uchitelle*, *John Crepezzi*
|
462
|
-
|
463
|
-
* `Rails.application.config_for` merges shared configuration deeply.
|
464
|
-
|
465
|
-
```yaml
|
466
|
-
# config/example.yml
|
467
|
-
shared:
|
468
|
-
foo:
|
469
|
-
bar:
|
470
|
-
baz: 1
|
471
|
-
development:
|
472
|
-
foo:
|
473
|
-
bar:
|
474
|
-
qux: 2
|
475
|
-
```
|
476
|
-
|
477
|
-
```ruby
|
478
|
-
# Previously
|
479
|
-
Rails.application.config_for(:example)[:foo][:bar] #=> { qux: 2 }
|
480
|
-
|
481
|
-
# Now
|
482
|
-
Rails.application.config_for(:example)[:foo][:bar] #=> { baz: 1, qux: 2 }
|
483
|
-
```
|
484
|
-
|
485
|
-
*Yuhei Kiriyama*
|
486
|
-
|
487
|
-
* Remove access to values in nested hashes returned by `Rails.application.config_for` via String keys.
|
488
|
-
|
489
|
-
```yaml
|
490
|
-
# config/example.yml
|
491
|
-
development:
|
492
|
-
options:
|
493
|
-
key: value
|
494
|
-
```
|
495
|
-
|
496
|
-
```ruby
|
497
|
-
Rails.application.config_for(:example).options
|
498
|
-
```
|
499
|
-
|
500
|
-
This used to return a Hash on which you could access values with String keys. This was deprecated in 6.0, and now doesn't work anymore.
|
501
|
-
|
502
|
-
*Étienne Barrié*
|
503
|
-
|
504
|
-
* Configuration files for environments (`config/environments/*.rb`) are
|
505
|
-
now able to modify `autoload_paths`, `autoload_once_paths`, and
|
506
|
-
`eager_load_paths`.
|
507
|
-
|
508
|
-
As a consequence, applications cannot autoload within those files. Before, they technically could, but changes in autoloaded classes or modules had no effect anyway in the configuration because reloading does not reboot.
|
509
|
-
|
510
|
-
Ways to use application code in these files:
|
511
|
-
|
512
|
-
* Define early in the boot process a class that is not reloadable, from which the application takes configuration values that get passed to the framework.
|
513
|
-
|
514
|
-
```ruby
|
515
|
-
# In config/application.rb, for example.
|
516
|
-
require "#{Rails.root}/lib/my_app/config"
|
517
|
-
|
518
|
-
# In config/environments/development.rb, for example.
|
519
|
-
config.foo = MyApp::Config.foo
|
520
|
-
```
|
521
|
-
|
522
|
-
* If the class has to be reloadable, then wrap the configuration code in a `to_prepare` block:
|
523
|
-
|
524
|
-
```ruby
|
525
|
-
config.to_prepare do
|
526
|
-
config.foo = MyModel.foo
|
527
|
-
end
|
528
|
-
```
|
154
|
+
*Cindy Gao*
|
529
155
|
|
530
|
-
|
156
|
+
* Add support for stylesheets and ERB views to `rails stats`.
|
531
157
|
|
532
|
-
*
|
158
|
+
*Joel Hawksley*
|
533
159
|
|
534
|
-
*
|
160
|
+
* Allow appended root routes to take precedence over internal welcome controller.
|
535
161
|
|
536
|
-
*
|
162
|
+
*Gannon McGibbon*
|
537
163
|
|
538
164
|
|
539
|
-
Please check [6-
|
165
|
+
Please check [6-1-stable](https://github.com/rails/rails/blob/6-1-stable/railties/CHANGELOG.md) for previous changes.
|
data/MIT-LICENSE
CHANGED