railties 7.1.3.4 → 8.0.1

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.
Files changed (193) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +128 -775
  3. data/lib/minitest/rails_plugin.rb +6 -3
  4. data/lib/rails/all.rb +1 -3
  5. data/lib/rails/api/task.rb +6 -4
  6. data/lib/rails/application/bootstrap.rb +5 -7
  7. data/lib/rails/application/configuration.rb +81 -43
  8. data/lib/rails/application/default_middleware_stack.rb +4 -0
  9. data/lib/rails/application/dummy_config.rb +2 -2
  10. data/lib/rails/application/finisher.rb +9 -3
  11. data/lib/rails/application/routes_reloader.rb +16 -2
  12. data/lib/rails/application.rb +27 -86
  13. data/lib/rails/backtrace_cleaner.rb +19 -4
  14. data/lib/rails/cli.rb +0 -1
  15. data/lib/rails/code_statistics.rb +128 -86
  16. data/lib/rails/code_statistics_calculator.rb +78 -76
  17. data/lib/rails/command/helpers/editor.rb +1 -1
  18. data/lib/rails/command.rb +0 -6
  19. data/lib/rails/commands/app/update_command.rb +94 -0
  20. data/lib/rails/commands/boot/boot_command.rb +14 -0
  21. data/lib/rails/commands/console/console_command.rb +2 -21
  22. data/lib/rails/commands/console/irb_console.rb +128 -0
  23. data/lib/rails/commands/credentials/USAGE +4 -4
  24. data/lib/rails/commands/credentials/credentials_command.rb +7 -3
  25. data/lib/rails/commands/dbconsole/dbconsole_command.rb +21 -30
  26. data/lib/rails/commands/dev/dev_command.rb +1 -1
  27. data/lib/rails/commands/devcontainer/devcontainer_command.rb +40 -0
  28. data/lib/rails/commands/rake/rake_command.rb +1 -1
  29. data/lib/rails/commands/runner/runner_command.rb +14 -3
  30. data/lib/rails/commands/server/server_command.rb +5 -3
  31. data/lib/rails/commands/stats/stats_command.rb +19 -0
  32. data/lib/rails/commands/test/test_command.rb +2 -0
  33. data/lib/rails/configuration.rb +10 -1
  34. data/lib/rails/console/methods.rb +7 -0
  35. data/lib/rails/dev_caching.rb +2 -2
  36. data/lib/rails/engine/configuration.rb +3 -1
  37. data/lib/rails/engine/lazy_route_set.rb +114 -0
  38. data/lib/rails/engine.rb +16 -12
  39. data/lib/rails/gem_version.rb +4 -4
  40. data/lib/rails/generators/actions.rb +3 -3
  41. data/lib/rails/generators/app_base.rb +115 -68
  42. data/lib/rails/generators/base.rb +1 -1
  43. data/lib/rails/generators/database.rb +263 -71
  44. data/lib/rails/generators/erb/authentication/authentication_generator.rb +15 -0
  45. data/lib/rails/generators/erb/authentication/templates/app/views/passwords/edit.html.erb +9 -0
  46. data/lib/rails/generators/erb/authentication/templates/app/views/passwords/new.html.erb +8 -0
  47. data/lib/rails/generators/erb/authentication/templates/app/views/sessions/new.html.erb +11 -0
  48. data/lib/rails/generators/erb/scaffold/templates/edit.html.erb.tt +2 -0
  49. data/lib/rails/generators/erb/scaffold/templates/index.html.erb.tt +2 -0
  50. data/lib/rails/generators/erb/scaffold/templates/new.html.erb.tt +2 -0
  51. data/lib/rails/generators/generated_attribute.rb +42 -12
  52. data/lib/rails/generators/migration.rb +3 -3
  53. data/lib/rails/generators/rails/app/app_generator.rb +75 -54
  54. data/lib/rails/generators/rails/app/templates/Dockerfile.tt +33 -17
  55. data/lib/rails/generators/rails/app/templates/Gemfile.tt +38 -23
  56. data/lib/rails/generators/rails/app/templates/app/assets/stylesheets/application.css.tt +6 -11
  57. data/lib/rails/generators/rails/app/templates/app/controllers/application_controller.rb.tt +4 -0
  58. data/lib/rails/generators/rails/app/templates/app/views/layouts/application.html.erb.tt +17 -3
  59. data/lib/rails/generators/rails/app/templates/app/views/pwa/manifest.json.erb.tt +22 -0
  60. data/lib/rails/generators/rails/app/templates/app/views/pwa/service-worker.js +26 -0
  61. data/lib/rails/generators/rails/app/templates/bin/brakeman.tt +6 -0
  62. data/lib/rails/generators/rails/app/templates/bin/dev.tt +1 -0
  63. data/lib/rails/generators/rails/app/templates/bin/rubocop.tt +7 -0
  64. data/lib/rails/generators/rails/app/templates/bin/setup.tt +6 -5
  65. data/lib/rails/generators/rails/app/templates/bin/thrust.tt +4 -0
  66. data/lib/rails/generators/rails/app/templates/config/application.rb.tt +1 -1
  67. data/lib/rails/generators/rails/app/templates/config/databases/mysql.yml.tt +26 -3
  68. data/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml.tt +30 -0
  69. data/lib/rails/generators/rails/app/templates/config/databases/sqlite3.yml.tt +47 -0
  70. data/lib/rails/generators/rails/app/templates/config/databases/trilogy.yml.tt +26 -3
  71. data/lib/rails/generators/rails/app/templates/config/deploy.yml.tt +128 -0
  72. data/lib/rails/generators/rails/app/templates/config/environments/development.rb.tt +22 -26
  73. data/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt +36 -48
  74. data/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt +7 -18
  75. data/lib/rails/generators/rails/app/templates/config/initializers/assets.rb.tt +0 -7
  76. data/lib/rails/generators/rails/app/templates/config/initializers/filter_parameter_logging.rb.tt +1 -1
  77. data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_8_0.rb.tt +30 -0
  78. data/lib/rails/generators/rails/app/templates/config/puma.rb.tt +35 -27
  79. data/lib/rails/generators/rails/app/templates/config/routes.rb.tt +6 -0
  80. data/lib/rails/generators/rails/app/templates/docker-entrypoint.tt +7 -1
  81. data/lib/rails/generators/rails/app/templates/dockerignore.tt +20 -2
  82. data/lib/rails/generators/rails/app/templates/github/ci.yml.tt +144 -0
  83. data/lib/rails/generators/rails/app/templates/github/dependabot.yml +12 -0
  84. data/lib/rails/generators/rails/app/templates/gitignore.tt +4 -5
  85. data/lib/rails/generators/rails/app/templates/kamal-secrets.tt +17 -0
  86. data/lib/rails/generators/rails/app/templates/public/400.html +114 -0
  87. data/lib/rails/generators/rails/app/templates/public/404.html +113 -66
  88. data/lib/rails/generators/rails/app/templates/public/406-unsupported-browser.html +114 -0
  89. data/lib/rails/generators/rails/app/templates/public/422.html +113 -66
  90. data/lib/rails/generators/rails/app/templates/public/500.html +113 -65
  91. data/lib/rails/generators/rails/app/templates/public/icon.png +0 -0
  92. data/lib/rails/generators/rails/app/templates/public/icon.svg +3 -0
  93. data/lib/rails/generators/rails/app/templates/rubocop.yml.tt +8 -0
  94. data/lib/rails/generators/rails/app/templates/test/application_system_test_case.rb.tt +1 -1
  95. data/lib/rails/generators/rails/authentication/USAGE +6 -0
  96. data/lib/rails/generators/rails/authentication/authentication_generator.rb +58 -0
  97. data/lib/rails/generators/rails/authentication/templates/app/channels/application_cable/connection.rb.tt +16 -0
  98. data/lib/rails/generators/rails/authentication/templates/app/controllers/concerns/authentication.rb.tt +52 -0
  99. data/lib/rails/generators/rails/authentication/templates/app/controllers/passwords_controller.rb.tt +33 -0
  100. data/lib/rails/generators/rails/authentication/templates/app/controllers/sessions_controller.rb.tt +21 -0
  101. data/lib/rails/generators/rails/authentication/templates/app/mailers/passwords_mailer.rb.tt +6 -0
  102. data/lib/rails/generators/rails/authentication/templates/app/models/current.rb.tt +4 -0
  103. data/lib/rails/generators/rails/authentication/templates/app/models/session.rb.tt +3 -0
  104. data/lib/rails/generators/rails/authentication/templates/app/models/user.rb.tt +6 -0
  105. data/lib/rails/generators/rails/authentication/templates/app/views/passwords_mailer/reset.html.erb.tt +4 -0
  106. data/lib/rails/generators/rails/authentication/templates/app/views/passwords_mailer/reset.text.erb.tt +2 -0
  107. data/lib/rails/generators/rails/authentication/templates/test/mailers/previews/passwords_mailer_preview.rb.tt +7 -0
  108. data/lib/rails/generators/rails/controller/controller_generator.rb +1 -1
  109. data/lib/rails/generators/rails/credentials/templates/credentials.yml.tt +4 -0
  110. data/lib/rails/generators/rails/db/system/change/change_generator.rb +132 -21
  111. data/lib/rails/generators/rails/devcontainer/devcontainer_generator.rb +176 -0
  112. data/lib/rails/generators/rails/devcontainer/templates/devcontainer/Dockerfile.tt +3 -0
  113. data/lib/rails/generators/rails/devcontainer/templates/devcontainer/compose.yaml.tt +47 -0
  114. data/lib/rails/generators/rails/devcontainer/templates/devcontainer/devcontainer.json.tt +37 -0
  115. data/lib/rails/generators/rails/migration/migration_generator.rb +4 -0
  116. data/lib/rails/generators/rails/plugin/plugin_generator.rb +47 -16
  117. data/lib/rails/generators/rails/plugin/templates/%name%.gemspec.tt +2 -2
  118. data/lib/rails/generators/rails/plugin/templates/Gemfile.tt +6 -2
  119. data/lib/rails/generators/rails/plugin/templates/app/views/layouts/%namespaced_name%/application.html.erb.tt +2 -0
  120. data/lib/rails/generators/rails/plugin/templates/bin/rubocop.tt +7 -0
  121. data/lib/rails/generators/rails/plugin/templates/github/ci.yml.tt +103 -0
  122. data/lib/rails/generators/rails/plugin/templates/github/dependabot.yml +12 -0
  123. data/lib/rails/generators/rails/plugin/templates/rubocop.yml.tt +8 -0
  124. data/lib/rails/generators/rails/plugin/templates/test/application_system_test_case.rb.tt +1 -1
  125. data/lib/rails/generators/rails/plugin/templates/test/test_helper.rb.tt +2 -2
  126. data/lib/rails/generators/rails/scaffold_controller/templates/api_controller.rb.tt +2 -2
  127. data/lib/rails/generators/rails/scaffold_controller/templates/controller.rb.tt +3 -3
  128. data/lib/rails/generators/rails/script/USAGE +18 -0
  129. data/lib/rails/generators/rails/script/script_generator.rb +18 -0
  130. data/lib/rails/generators/rails/script/templates/script.rb.tt +3 -0
  131. data/lib/rails/generators/test_unit/authentication/authentication_generator.rb +14 -0
  132. data/lib/rails/generators/test_unit/authentication/templates/test/fixtures/users.yml.tt +9 -0
  133. data/lib/rails/generators/test_unit/authentication/templates/test/models/user_test.rb.tt +7 -0
  134. data/lib/rails/generators/test_unit/mailer/templates/functional_test.rb.tt +6 -4
  135. data/lib/rails/generators/test_unit/mailer/templates/preview.rb.tt +3 -2
  136. data/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb +15 -1
  137. data/lib/rails/generators/test_unit/scaffold/templates/api_functional_test.rb.tt +2 -2
  138. data/lib/rails/generators/test_unit/scaffold/templates/functional_test.rb.tt +2 -2
  139. data/lib/rails/generators/test_unit/scaffold/templates/system_test.rb.tt +2 -0
  140. data/lib/rails/generators/test_unit/system/templates/application_system_test_case.rb.tt +1 -1
  141. data/lib/rails/generators/testing/assertions.rb +20 -0
  142. data/lib/rails/generators/testing/behavior.rb +7 -6
  143. data/lib/rails/generators.rb +7 -2
  144. data/lib/rails/health_controller.rb +1 -1
  145. data/lib/rails/info.rb +2 -2
  146. data/lib/rails/info_controller.rb +10 -2
  147. data/lib/rails/mailers_controller.rb +14 -1
  148. data/lib/rails/paths.rb +2 -2
  149. data/lib/rails/pwa_controller.rb +15 -0
  150. data/lib/rails/rack/logger.rb +15 -7
  151. data/lib/rails/rack/silence_request.rb +33 -0
  152. data/lib/rails/rack.rb +1 -0
  153. data/lib/rails/railtie/configurable.rb +2 -2
  154. data/lib/rails/railtie.rb +15 -16
  155. data/lib/rails/source_annotation_extractor.rb +31 -14
  156. data/lib/rails/tasks/framework.rake +0 -26
  157. data/lib/rails/tasks/statistics.rake +13 -28
  158. data/lib/rails/tasks/tmp.rake +1 -1
  159. data/lib/rails/templates/layouts/application.html.erb +1 -1
  160. data/lib/rails/templates/rails/info/notes.html.erb +65 -0
  161. data/lib/rails/templates/rails/mailers/email.html.erb +12 -8
  162. data/lib/rails/templates/rails/welcome/index.html.erb +4 -2
  163. data/lib/rails/test_help.rb +2 -4
  164. data/lib/rails/test_unit/reporter.rb +8 -2
  165. data/lib/rails/test_unit/runner.rb +27 -2
  166. data/lib/rails/test_unit/test_parser.rb +48 -0
  167. data/lib/rails.rb +7 -4
  168. metadata +77 -45
  169. data/lib/rails/app_updater.rb +0 -40
  170. data/lib/rails/commands/secrets/USAGE +0 -61
  171. data/lib/rails/commands/secrets/secrets_command.rb +0 -47
  172. data/lib/rails/console/app.rb +0 -35
  173. data/lib/rails/console/helpers.rb +0 -19
  174. data/lib/rails/generators/rails/app/templates/app/assets/config/manifest.js.tt +0 -2
  175. data/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb.tt +0 -4
  176. data/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb.tt +0 -4
  177. data/lib/rails/generators/rails/app/templates/config/databases/jdbc.yml.tt +0 -68
  178. data/lib/rails/generators/rails/app/templates/config/databases/jdbcmysql.yml.tt +0 -54
  179. data/lib/rails/generators/rails/app/templates/config/databases/jdbcpostgresql.yml.tt +0 -70
  180. data/lib/rails/generators/rails/app/templates/config/databases/jdbcsqlite3.yml.tt +0 -24
  181. data/lib/rails/generators/rails/app/templates/config/databases/oracle.yml.tt +0 -62
  182. data/lib/rails/generators/rails/app/templates/config/databases/sqlserver.yml.tt +0 -53
  183. data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_1.rb.tt +0 -284
  184. data/lib/rails/generators/rails/app/templates/config/initializers/permissions_policy.rb.tt +0 -13
  185. data/lib/rails/generators/rails/app/templates/public/apple-touch-icon-precomposed.png +0 -0
  186. data/lib/rails/generators/rails/app/templates/public/apple-touch-icon.png +0 -0
  187. data/lib/rails/generators/rails/app/templates/public/favicon.ico +0 -0
  188. data/lib/rails/generators/rails/app/templates/test/channels/application_cable/connection_test.rb.tt +0 -13
  189. data/lib/rails/generators/rails/plugin/templates/rails/dummy_manifest.js.tt +0 -10
  190. data/lib/rails/generators/rails/plugin/templates/rails/engine_manifest.js.tt +0 -6
  191. data/lib/rails/generators/rails/plugin/templates/rails/javascripts.js.tt +0 -17
  192. data/lib/rails/ruby_version_check.rb +0 -17
  193. data/lib/rails/secrets.rb +0 -110
data/lib/rails.rb CHANGED
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "rails/ruby_version_check"
4
-
5
3
  require "pathname"
6
4
 
7
5
  require "active_support"
@@ -24,17 +22,21 @@ silence_warnings do
24
22
  Encoding.default_internal = Encoding::UTF_8
25
23
  end
26
24
 
27
- # :include: railties/README.rdoc
25
+ # :include: ../README.rdoc
28
26
  module Rails
29
27
  extend ActiveSupport::Autoload
30
28
  extend ActiveSupport::Benchmarkable
31
29
 
32
- autoload :HealthController
33
30
  autoload :Info
34
31
  autoload :InfoController
35
32
  autoload :MailersController
36
33
  autoload :WelcomeController
37
34
 
35
+ eager_autoload do
36
+ autoload :HealthController
37
+ autoload :PwaController
38
+ end
39
+
38
40
  class << self
39
41
  @application = @app_class = nil
40
42
 
@@ -69,6 +71,7 @@ module Rails
69
71
  # Rails.env # => "development"
70
72
  # Rails.env.development? # => true
71
73
  # Rails.env.production? # => false
74
+ # Rails.env.local? # => true true for "development" and "test", false for anything else
72
75
  def env
73
76
  @_env ||= ActiveSupport::EnvironmentInquirer.new(ENV["RAILS_ENV"].presence || ENV["RACK_ENV"].presence || "development")
74
77
  end
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.1.3.4
4
+ version: 8.0.1
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: 2024-06-04 00:00:00.000000000 Z
11
+ date: 2024-12-13 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.1.3.4
19
+ version: 8.0.1
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.1.3.4
26
+ version: 8.0.1
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.1.3.4
33
+ version: 8.0.1
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.1.3.4
40
+ version: 8.0.1
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rackup
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -104,30 +104,30 @@ dependencies:
104
104
  name: irb
105
105
  requirement: !ruby/object:Gem::Requirement
106
106
  requirements:
107
- - - ">="
107
+ - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: '0'
109
+ version: '1.13'
110
110
  type: :runtime
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
- - - ">="
114
+ - - "~>"
115
115
  - !ruby/object:Gem::Version
116
- version: '0'
116
+ version: '1.13'
117
117
  - !ruby/object:Gem::Dependency
118
118
  name: actionview
119
119
  requirement: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - '='
122
122
  - !ruby/object:Gem::Version
123
- version: 7.1.3.4
123
+ version: 8.0.1
124
124
  type: :development
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - '='
129
129
  - !ruby/object:Gem::Version
130
- version: 7.1.3.4
130
+ version: 8.0.1
131
131
  description: 'Rails internals: application bootup, plugins, generators, and rake tasks.'
132
132
  email: david@loudthinking.com
133
133
  executables:
@@ -146,7 +146,6 @@ files:
146
146
  - lib/rails/api/generator.rb
147
147
  - lib/rails/api/task.rb
148
148
  - lib/rails/app_loader.rb
149
- - lib/rails/app_updater.rb
150
149
  - lib/rails/application.rb
151
150
  - lib/rails/application/bootstrap.rb
152
151
  - lib/rails/application/configuration.rb
@@ -169,8 +168,11 @@ files:
169
168
  - lib/rails/command/helpers/editor.rb
170
169
  - lib/rails/commands.rb
171
170
  - lib/rails/commands/about/about_command.rb
171
+ - lib/rails/commands/app/update_command.rb
172
172
  - lib/rails/commands/application/application_command.rb
173
+ - lib/rails/commands/boot/boot_command.rb
173
174
  - lib/rails/commands/console/console_command.rb
175
+ - lib/rails/commands/console/irb_console.rb
174
176
  - lib/rails/commands/credentials/USAGE
175
177
  - lib/rails/commands/credentials/credentials_command.rb
176
178
  - lib/rails/commands/credentials/credentials_command/diffing.rb
@@ -178,6 +180,7 @@ files:
178
180
  - lib/rails/commands/dbconsole/dbconsole_command.rb
179
181
  - lib/rails/commands/destroy/destroy_command.rb
180
182
  - lib/rails/commands/dev/dev_command.rb
183
+ - lib/rails/commands/devcontainer/devcontainer_command.rb
181
184
  - lib/rails/commands/encrypted/USAGE
182
185
  - lib/rails/commands/encrypted/encrypted_command.rb
183
186
  - lib/rails/commands/gem_help/USAGE
@@ -196,21 +199,20 @@ files:
196
199
  - lib/rails/commands/runner/USAGE
197
200
  - lib/rails/commands/runner/runner_command.rb
198
201
  - lib/rails/commands/secret/secret_command.rb
199
- - lib/rails/commands/secrets/USAGE
200
- - lib/rails/commands/secrets/secrets_command.rb
201
202
  - lib/rails/commands/server/server_command.rb
203
+ - lib/rails/commands/stats/stats_command.rb
202
204
  - lib/rails/commands/test/USAGE
203
205
  - lib/rails/commands/test/test_command.rb
204
206
  - lib/rails/commands/unused_routes/unused_routes_command.rb
205
207
  - lib/rails/commands/version/version_command.rb
206
208
  - lib/rails/configuration.rb
207
- - lib/rails/console/app.rb
208
- - lib/rails/console/helpers.rb
209
+ - lib/rails/console/methods.rb
209
210
  - lib/rails/deprecator.rb
210
211
  - lib/rails/dev_caching.rb
211
212
  - lib/rails/engine.rb
212
213
  - lib/rails/engine/commands.rb
213
214
  - lib/rails/engine/configuration.rb
215
+ - lib/rails/engine/lazy_route_set.rb
214
216
  - lib/rails/engine/railties.rb
215
217
  - lib/rails/engine/updater.rb
216
218
  - lib/rails/gem_version.rb
@@ -223,6 +225,10 @@ files:
223
225
  - lib/rails/generators/base.rb
224
226
  - lib/rails/generators/database.rb
225
227
  - lib/rails/generators/erb.rb
228
+ - lib/rails/generators/erb/authentication/authentication_generator.rb
229
+ - lib/rails/generators/erb/authentication/templates/app/views/passwords/edit.html.erb
230
+ - lib/rails/generators/erb/authentication/templates/app/views/passwords/new.html.erb
231
+ - lib/rails/generators/erb/authentication/templates/app/views/sessions/new.html.erb
226
232
  - lib/rails/generators/erb/controller/controller_generator.rb
227
233
  - lib/rails/generators/erb/controller/templates/view.html.erb.tt
228
234
  - lib/rails/generators/erb/mailer/mailer_generator.rb
@@ -247,10 +253,7 @@ files:
247
253
  - lib/rails/generators/rails/app/templates/Gemfile.tt
248
254
  - lib/rails/generators/rails/app/templates/README.md.tt
249
255
  - lib/rails/generators/rails/app/templates/Rakefile.tt
250
- - lib/rails/generators/rails/app/templates/app/assets/config/manifest.js.tt
251
256
  - lib/rails/generators/rails/app/templates/app/assets/stylesheets/application.css.tt
252
- - lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb.tt
253
- - lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb.tt
254
257
  - lib/rails/generators/rails/app/templates/app/controllers/application_controller.rb.tt
255
258
  - lib/rails/generators/rails/app/templates/app/helpers/application_helper.rb.tt
256
259
  - lib/rails/generators/rails/app/templates/app/jobs/application_job.rb.tt
@@ -259,23 +262,24 @@ files:
259
262
  - lib/rails/generators/rails/app/templates/app/views/layouts/application.html.erb.tt
260
263
  - lib/rails/generators/rails/app/templates/app/views/layouts/mailer.html.erb.tt
261
264
  - lib/rails/generators/rails/app/templates/app/views/layouts/mailer.text.erb.tt
265
+ - lib/rails/generators/rails/app/templates/app/views/pwa/manifest.json.erb.tt
266
+ - lib/rails/generators/rails/app/templates/app/views/pwa/service-worker.js
267
+ - lib/rails/generators/rails/app/templates/bin/brakeman.tt
268
+ - lib/rails/generators/rails/app/templates/bin/dev.tt
262
269
  - lib/rails/generators/rails/app/templates/bin/rails.tt
263
270
  - lib/rails/generators/rails/app/templates/bin/rake.tt
271
+ - lib/rails/generators/rails/app/templates/bin/rubocop.tt
264
272
  - lib/rails/generators/rails/app/templates/bin/setup.tt
273
+ - lib/rails/generators/rails/app/templates/bin/thrust.tt
265
274
  - lib/rails/generators/rails/app/templates/config.ru.tt
266
275
  - lib/rails/generators/rails/app/templates/config/application.rb.tt
267
276
  - lib/rails/generators/rails/app/templates/config/boot.rb.tt
268
277
  - lib/rails/generators/rails/app/templates/config/cable.yml.tt
269
- - lib/rails/generators/rails/app/templates/config/databases/jdbc.yml.tt
270
- - lib/rails/generators/rails/app/templates/config/databases/jdbcmysql.yml.tt
271
- - lib/rails/generators/rails/app/templates/config/databases/jdbcpostgresql.yml.tt
272
- - lib/rails/generators/rails/app/templates/config/databases/jdbcsqlite3.yml.tt
273
278
  - lib/rails/generators/rails/app/templates/config/databases/mysql.yml.tt
274
- - lib/rails/generators/rails/app/templates/config/databases/oracle.yml.tt
275
279
  - lib/rails/generators/rails/app/templates/config/databases/postgresql.yml.tt
276
280
  - lib/rails/generators/rails/app/templates/config/databases/sqlite3.yml.tt
277
- - lib/rails/generators/rails/app/templates/config/databases/sqlserver.yml.tt
278
281
  - lib/rails/generators/rails/app/templates/config/databases/trilogy.yml.tt
282
+ - lib/rails/generators/rails/app/templates/config/deploy.yml.tt
279
283
  - lib/rails/generators/rails/app/templates/config/environment.rb.tt
280
284
  - lib/rails/generators/rails/app/templates/config/environments/development.rb.tt
281
285
  - lib/rails/generators/rails/app/templates/config/environments/production.rb.tt
@@ -285,8 +289,7 @@ files:
285
289
  - lib/rails/generators/rails/app/templates/config/initializers/cors.rb.tt
286
290
  - lib/rails/generators/rails/app/templates/config/initializers/filter_parameter_logging.rb.tt
287
291
  - lib/rails/generators/rails/app/templates/config/initializers/inflections.rb.tt
288
- - lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_1.rb.tt
289
- - lib/rails/generators/rails/app/templates/config/initializers/permissions_policy.rb.tt
292
+ - lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_8_0.rb.tt
290
293
  - lib/rails/generators/rails/app/templates/config/locales/en.yml
291
294
  - lib/rails/generators/rails/app/templates/config/puma.rb.tt
292
295
  - lib/rails/generators/rails/app/templates/config/routes.rb.tt
@@ -295,20 +298,37 @@ files:
295
298
  - lib/rails/generators/rails/app/templates/docker-entrypoint.tt
296
299
  - lib/rails/generators/rails/app/templates/dockerignore.tt
297
300
  - lib/rails/generators/rails/app/templates/gitattributes.tt
301
+ - lib/rails/generators/rails/app/templates/github/ci.yml.tt
302
+ - lib/rails/generators/rails/app/templates/github/dependabot.yml
298
303
  - lib/rails/generators/rails/app/templates/gitignore.tt
304
+ - lib/rails/generators/rails/app/templates/kamal-secrets.tt
299
305
  - lib/rails/generators/rails/app/templates/node-version.tt
306
+ - lib/rails/generators/rails/app/templates/public/400.html
300
307
  - lib/rails/generators/rails/app/templates/public/404.html
308
+ - lib/rails/generators/rails/app/templates/public/406-unsupported-browser.html
301
309
  - lib/rails/generators/rails/app/templates/public/422.html
302
310
  - lib/rails/generators/rails/app/templates/public/500.html
303
- - lib/rails/generators/rails/app/templates/public/apple-touch-icon-precomposed.png
304
- - lib/rails/generators/rails/app/templates/public/apple-touch-icon.png
305
- - lib/rails/generators/rails/app/templates/public/favicon.ico
311
+ - lib/rails/generators/rails/app/templates/public/icon.png
312
+ - lib/rails/generators/rails/app/templates/public/icon.svg
306
313
  - lib/rails/generators/rails/app/templates/public/robots.txt
314
+ - lib/rails/generators/rails/app/templates/rubocop.yml.tt
307
315
  - lib/rails/generators/rails/app/templates/ruby-version.tt
308
316
  - lib/rails/generators/rails/app/templates/test/application_system_test_case.rb.tt
309
- - lib/rails/generators/rails/app/templates/test/channels/application_cable/connection_test.rb.tt
310
317
  - lib/rails/generators/rails/app/templates/test/test_helper.rb.tt
311
318
  - lib/rails/generators/rails/application_record/application_record_generator.rb
319
+ - lib/rails/generators/rails/authentication/USAGE
320
+ - lib/rails/generators/rails/authentication/authentication_generator.rb
321
+ - lib/rails/generators/rails/authentication/templates/app/channels/application_cable/connection.rb.tt
322
+ - lib/rails/generators/rails/authentication/templates/app/controllers/concerns/authentication.rb.tt
323
+ - lib/rails/generators/rails/authentication/templates/app/controllers/passwords_controller.rb.tt
324
+ - lib/rails/generators/rails/authentication/templates/app/controllers/sessions_controller.rb.tt
325
+ - lib/rails/generators/rails/authentication/templates/app/mailers/passwords_mailer.rb.tt
326
+ - lib/rails/generators/rails/authentication/templates/app/models/current.rb.tt
327
+ - lib/rails/generators/rails/authentication/templates/app/models/session.rb.tt
328
+ - lib/rails/generators/rails/authentication/templates/app/models/user.rb.tt
329
+ - lib/rails/generators/rails/authentication/templates/app/views/passwords_mailer/reset.html.erb.tt
330
+ - lib/rails/generators/rails/authentication/templates/app/views/passwords_mailer/reset.text.erb.tt
331
+ - lib/rails/generators/rails/authentication/templates/test/mailers/previews/passwords_mailer_preview.rb.tt
312
332
  - lib/rails/generators/rails/benchmark/USAGE
313
333
  - lib/rails/generators/rails/benchmark/benchmark_generator.rb
314
334
  - lib/rails/generators/rails/benchmark/templates/benchmark.rb.tt
@@ -318,6 +338,10 @@ files:
318
338
  - lib/rails/generators/rails/credentials/credentials_generator.rb
319
339
  - lib/rails/generators/rails/credentials/templates/credentials.yml.tt
320
340
  - lib/rails/generators/rails/db/system/change/change_generator.rb
341
+ - lib/rails/generators/rails/devcontainer/devcontainer_generator.rb
342
+ - lib/rails/generators/rails/devcontainer/templates/devcontainer/Dockerfile.tt
343
+ - lib/rails/generators/rails/devcontainer/templates/devcontainer/compose.yaml.tt
344
+ - lib/rails/generators/rails/devcontainer/templates/devcontainer/devcontainer.json.tt
321
345
  - lib/rails/generators/rails/encrypted_file/encrypted_file_generator.rb
322
346
  - lib/rails/generators/rails/encryption_key_file/encryption_key_file_generator.rb
323
347
  - lib/rails/generators/rails/generator/USAGE
@@ -348,8 +372,11 @@ files:
348
372
  - lib/rails/generators/rails/plugin/templates/app/models/%namespaced_name%/application_record.rb.tt
349
373
  - lib/rails/generators/rails/plugin/templates/app/views/layouts/%namespaced_name%/application.html.erb.tt
350
374
  - lib/rails/generators/rails/plugin/templates/bin/rails.tt
375
+ - lib/rails/generators/rails/plugin/templates/bin/rubocop.tt
351
376
  - lib/rails/generators/rails/plugin/templates/bin/test.tt
352
377
  - lib/rails/generators/rails/plugin/templates/config/routes.rb.tt
378
+ - lib/rails/generators/rails/plugin/templates/github/ci.yml.tt
379
+ - lib/rails/generators/rails/plugin/templates/github/dependabot.yml
353
380
  - lib/rails/generators/rails/plugin/templates/gitignore.tt
354
381
  - lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%.rb.tt
355
382
  - lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/engine.rb.tt
@@ -357,11 +384,9 @@ files:
357
384
  - lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/version.rb.tt
358
385
  - lib/rails/generators/rails/plugin/templates/lib/tasks/%namespaced_name%_tasks.rake.tt
359
386
  - lib/rails/generators/rails/plugin/templates/rails/boot.rb.tt
360
- - lib/rails/generators/rails/plugin/templates/rails/dummy_manifest.js.tt
361
- - lib/rails/generators/rails/plugin/templates/rails/engine_manifest.js.tt
362
- - lib/rails/generators/rails/plugin/templates/rails/javascripts.js.tt
363
387
  - lib/rails/generators/rails/plugin/templates/rails/routes.rb.tt
364
388
  - lib/rails/generators/rails/plugin/templates/rails/stylesheets.css
389
+ - lib/rails/generators/rails/plugin/templates/rubocop.yml.tt
365
390
  - lib/rails/generators/rails/plugin/templates/test/%namespaced_name%_test.rb.tt
366
391
  - lib/rails/generators/rails/plugin/templates/test/application_system_test_case.rb.tt
367
392
  - lib/rails/generators/rails/plugin/templates/test/integration/navigation_test.rb.tt
@@ -375,6 +400,9 @@ files:
375
400
  - lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb
376
401
  - lib/rails/generators/rails/scaffold_controller/templates/api_controller.rb.tt
377
402
  - lib/rails/generators/rails/scaffold_controller/templates/controller.rb.tt
403
+ - lib/rails/generators/rails/script/USAGE
404
+ - lib/rails/generators/rails/script/script_generator.rb
405
+ - lib/rails/generators/rails/script/templates/script.rb.tt
378
406
  - lib/rails/generators/rails/system_test/USAGE
379
407
  - lib/rails/generators/rails/system_test/system_test_generator.rb
380
408
  - lib/rails/generators/rails/task/USAGE
@@ -383,6 +411,9 @@ files:
383
411
  - lib/rails/generators/resource_helpers.rb
384
412
  - lib/rails/generators/test_case.rb
385
413
  - lib/rails/generators/test_unit.rb
414
+ - lib/rails/generators/test_unit/authentication/authentication_generator.rb
415
+ - lib/rails/generators/test_unit/authentication/templates/test/fixtures/users.yml.tt
416
+ - lib/rails/generators/test_unit/authentication/templates/test/models/user_test.rb.tt
386
417
  - lib/rails/generators/test_unit/controller/controller_generator.rb
387
418
  - lib/rails/generators/test_unit/controller/templates/functional_test.rb.tt
388
419
  - lib/rails/generators/test_unit/generator/generator_generator.rb
@@ -418,14 +449,14 @@ files:
418
449
  - lib/rails/mailers_controller.rb
419
450
  - lib/rails/paths.rb
420
451
  - lib/rails/plugin/test.rb
452
+ - lib/rails/pwa_controller.rb
421
453
  - lib/rails/rack.rb
422
454
  - lib/rails/rack/logger.rb
455
+ - lib/rails/rack/silence_request.rb
423
456
  - lib/rails/rackup/server.rb
424
457
  - lib/rails/railtie.rb
425
458
  - lib/rails/railtie/configurable.rb
426
459
  - lib/rails/railtie/configuration.rb
427
- - lib/rails/ruby_version_check.rb
428
- - lib/rails/secrets.rb
429
460
  - lib/rails/source_annotation_extractor.rb
430
461
  - lib/rails/tasks.rb
431
462
  - lib/rails/tasks/engine.rake
@@ -437,6 +468,7 @@ files:
437
468
  - lib/rails/tasks/yarn.rake
438
469
  - lib/rails/tasks/zeitwerk.rake
439
470
  - lib/rails/templates/layouts/application.html.erb
471
+ - lib/rails/templates/rails/info/notes.html.erb
440
472
  - lib/rails/templates/rails/info/properties.html.erb
441
473
  - lib/rails/templates/rails/info/routes.html.erb
442
474
  - lib/rails/templates/rails/mailers/email.html.erb
@@ -459,12 +491,12 @@ licenses:
459
491
  - MIT
460
492
  metadata:
461
493
  bug_tracker_uri: https://github.com/rails/rails/issues
462
- changelog_uri: https://github.com/rails/rails/blob/v7.1.3.4/railties/CHANGELOG.md
463
- documentation_uri: https://api.rubyonrails.org/v7.1.3.4/
494
+ changelog_uri: https://github.com/rails/rails/blob/v8.0.1/railties/CHANGELOG.md
495
+ documentation_uri: https://api.rubyonrails.org/v8.0.1/
464
496
  mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
465
- source_code_uri: https://github.com/rails/rails/tree/v7.1.3.4/railties
497
+ source_code_uri: https://github.com/rails/rails/tree/v8.0.1/railties
466
498
  rubygems_mfa_required: 'true'
467
- post_install_message:
499
+ post_install_message:
468
500
  rdoc_options:
469
501
  - "--exclude"
470
502
  - "."
@@ -474,15 +506,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
474
506
  requirements:
475
507
  - - ">="
476
508
  - !ruby/object:Gem::Version
477
- version: 2.7.0
509
+ version: 3.2.0
478
510
  required_rubygems_version: !ruby/object:Gem::Requirement
479
511
  requirements:
480
512
  - - ">="
481
513
  - !ruby/object:Gem::Version
482
514
  version: '0'
483
515
  requirements: []
484
- rubygems_version: 3.3.27
485
- signing_key:
516
+ rubygems_version: 3.5.22
517
+ signing_key:
486
518
  specification_version: 4
487
519
  summary: Tools for creating, working with, and running Rails applications.
488
520
  test_files: []
@@ -1,40 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "rails/generators"
4
- require "rails/generators/rails/app/app_generator"
5
-
6
- module Rails
7
- class AppUpdater # :nodoc:
8
- class << self
9
- def invoke_from_app_generator(method)
10
- app_generator.send(method)
11
- end
12
-
13
- def app_generator
14
- @app_generator ||= begin
15
- gen = Rails::Generators::AppGenerator.new ["rails"], generator_options, destination_root: Rails.root
16
- gen.send(:valid_const?) unless File.exist?(Rails.root.join("config", "application.rb"))
17
- gen
18
- end
19
- end
20
-
21
- private
22
- def generator_options
23
- options = { api: !!Rails.application.config.api_only, update: true }
24
- options[:name] = Rails.application.class.name.chomp("::Application").underscore
25
- options[:skip_active_job] = !defined?(ActiveJob::Railtie)
26
- options[:skip_active_record] = !defined?(ActiveRecord::Railtie)
27
- options[:skip_active_storage] = !defined?(ActiveStorage::Engine)
28
- options[:skip_action_mailer] = !defined?(ActionMailer::Railtie)
29
- options[:skip_action_mailbox] = !defined?(ActionMailbox::Engine)
30
- options[:skip_action_text] = !defined?(ActionText::Engine)
31
- options[:skip_action_cable] = !defined?(ActionCable::Engine)
32
- options[:skip_test] = !defined?(Rails::TestUnitRailtie)
33
- options[:skip_system_test] = Rails.application.config.generators.system_tests.nil?
34
- options[:skip_asset_pipeline] = !defined?(Sprockets::Railtie) && !defined?(Propshaft::Railtie)
35
- options[:skip_bootsnap] = !defined?(Bootsnap)
36
- options
37
- end
38
- end
39
- end
40
- end
@@ -1,61 +0,0 @@
1
- Description:
2
- ** DEPRECATED **
3
- Rails 5.2 has introduced a new `credentials` API that replaces Rails secrets.
4
- Please use the Rails `credentials` commands instead.
5
- Run `bin/rails credentials:help` for more information.
6
-
7
- The Rails `secrets` commands helps encrypting secrets to slim a production
8
- environment's `ENV` hash. It's also useful for atomic deploys: no need to
9
- coordinate key changes to get everything working as the keys are shipped
10
- with the code.
11
-
12
- Setup:
13
- Run `<%= executable(:setup) %>` to opt in and generate the `config/secrets.yml.key`
14
- and `config/secrets.yml.enc` files.
15
-
16
- The latter contains all the keys to be encrypted while the former holds the
17
- encryption key.
18
-
19
- Don't lose the key! Put it in a password manager your team can access.
20
- Should you lose it no one, including you, will be able to access any encrypted
21
- secrets.
22
- Don't commit the key! Add `config/secrets.yml.key` to your source control's
23
- ignore file. If you use Git, Rails handles this for you.
24
-
25
- Rails also looks for the key in `ENV["RAILS_MASTER_KEY"]` if that's easier to
26
- manage.
27
-
28
- You could prepend that to your server's start command like this:
29
-
30
- RAILS_MASTER_KEY="im-the-master-now-hahaha" bin/rails server
31
-
32
- The `config/secrets.yml.enc` has much the same format as `config/secrets.yml`:
33
-
34
- production:
35
- secret_key_base: so-secret-very-hidden-wow
36
- payment_processing_gateway_key: much-safe-very-gaedwey-wow
37
-
38
- But that's where the similarities between `secrets.yml` and `secrets.yml.enc`
39
- end, e.g. no keys from `secrets.yml` will be moved to `secrets.yml.enc` and
40
- be encrypted.
41
-
42
- A `shared:` top level key is also supported such that any keys there is merged
43
- into the other environments.
44
-
45
- Additionally, Rails won't read encrypted secrets out of the box even if you have
46
- the key. Add this:
47
-
48
- config.read_encrypted_secrets = true
49
-
50
- to the environment you'd like to read encrypted secrets. `<%= executable(:setup) %>`
51
- inserts this into the production environment by default.
52
-
53
- Editing Secrets:
54
- After `<%= executable(:setup) %>`, run `<%= executable(:edit) %>`.
55
-
56
- That command opens a temporary file in `$VISUAL` or `$EDITOR` with the decrypted
57
- contents of `config/secrets.yml.enc` to edit the encrypted secrets.
58
-
59
- When the temporary file is next saved the contents are encrypted and written to
60
- `config/secrets.yml.enc` while the file itself is destroyed to prevent secrets
61
- from leaking.
@@ -1,47 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "active_support"
4
- require "active_support/core_ext/string/filters"
5
- require "rails/secrets"
6
- require "rails/command/helpers/editor"
7
-
8
- module Rails
9
- module Command
10
- class SecretsCommand < Rails::Command::Base # :nodoc:
11
- include Helpers::Editor
12
-
13
- desc "edit", "**deprecated** Open the secrets in `$VISUAL` or `$EDITOR` for editing"
14
- def edit
15
- Rails.deprecator.warn(<<~MSG.squish)
16
- `bin/rails secrets:edit` is deprecated in favor of credentials and will be removed in Rails 7.2.
17
- Run `bin/rails credentials:help` for more information.
18
- MSG
19
-
20
- boot_application!
21
-
22
- using_system_editor do
23
- Rails::Secrets.read_for_editing { |tmp_path| system_editor(tmp_path) }
24
- say "File encrypted and saved."
25
- end
26
- rescue Rails::Secrets::MissingKeyError => error
27
- say error.message
28
- rescue Errno::ENOENT => error
29
- if error.message.include?("secrets.yml.enc")
30
- exit 1
31
- else
32
- raise
33
- end
34
- end
35
-
36
- desc "show", "**deprecated** Show the decrypted secrets"
37
- def show
38
- Rails.deprecator.warn(<<~MSG.squish)
39
- `bin/rails secrets:show` is deprecated in favor of credentials and will be removed in Rails 7.2.
40
- Run `bin/rails credentials:help` for more information.
41
- MSG
42
-
43
- say Rails::Secrets.read
44
- end
45
- end
46
- end
47
- end
@@ -1,35 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "active_support/all"
4
- require "action_controller"
5
-
6
- module Rails
7
- module ConsoleMethods
8
- # reference the global "app" instance, created on demand. To recreate the
9
- # instance, pass a non-false value as the parameter.
10
- def app(create = false)
11
- @app_integration_instance = nil if create
12
- @app_integration_instance ||= new_session
13
- end
14
-
15
- # create a new session. If a block is given, the new session will be yielded
16
- # to the block before being returned.
17
- def new_session
18
- app = Rails.application
19
- session = ActionDispatch::Integration::Session.new(app)
20
-
21
- # This makes app.url_for and app.foo_path available in the console
22
- session.extend(app.routes.url_helpers)
23
- session.extend(app.routes.mounted_helpers)
24
-
25
- session
26
- end
27
-
28
- # reloads the environment
29
- def reload!(print = true)
30
- puts "Reloading..." if print
31
- Rails.application.reloader.reload!
32
- true
33
- end
34
- end
35
- end
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Rails
4
- module ConsoleMethods
5
- # Gets the helper methods available to the controller.
6
- #
7
- # This method assumes an +ApplicationController+ exists, and that it extends ActionController::Base.
8
- def helper
9
- ApplicationController.helpers
10
- end
11
-
12
- # Gets a new instance of a controller object.
13
- #
14
- # This method assumes an +ApplicationController+ exists, and that it extends ActionController::Base.
15
- def controller
16
- @controller ||= ApplicationController.new
17
- end
18
- end
19
- end
@@ -1,2 +0,0 @@
1
- //= link_tree ../images
2
- //= link_directory ../stylesheets .css
@@ -1,4 +0,0 @@
1
- module ApplicationCable
2
- class Channel < ActionCable::Channel::Base
3
- end
4
- end
@@ -1,4 +0,0 @@
1
- module ApplicationCable
2
- class Connection < ActionCable::Connection::Base
3
- end
4
- end