railties 7.2.0 → 8.0.0.beta1

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 (106) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +111 -254
  3. data/lib/minitest/rails_plugin.rb +1 -1
  4. data/lib/rails/application/configuration.rb +15 -2
  5. data/lib/rails/application/default_middleware_stack.rb +4 -0
  6. data/lib/rails/application/finisher.rb +2 -2
  7. data/lib/rails/application/routes_reloader.rb +11 -1
  8. data/lib/rails/application.rb +12 -0
  9. data/lib/rails/code_statistics.rb +128 -86
  10. data/lib/rails/code_statistics_calculator.rb +78 -76
  11. data/lib/rails/command/helpers/editor.rb +1 -1
  12. data/lib/rails/commands/app/update_command.rb +10 -9
  13. data/lib/rails/commands/console/irb_console.rb +1 -2
  14. data/lib/rails/commands/credentials/USAGE +4 -4
  15. data/lib/rails/commands/credentials/credentials_command.rb +5 -1
  16. data/lib/rails/commands/dev/dev_command.rb +1 -1
  17. data/lib/rails/commands/devcontainer/devcontainer_command.rb +1 -1
  18. data/lib/rails/commands/stats/stats_command.rb +19 -0
  19. data/lib/rails/dev_caching.rb +2 -2
  20. data/lib/rails/engine/configuration.rb +3 -1
  21. data/lib/rails/engine/lazy_route_set.rb +109 -0
  22. data/lib/rails/engine.rb +10 -5
  23. data/lib/rails/gem_version.rb +3 -3
  24. data/lib/rails/generators/app_base.rb +46 -24
  25. data/lib/rails/generators/database.rb +102 -68
  26. data/lib/rails/generators/erb/authentication/authentication_generator.rb +15 -0
  27. data/lib/rails/generators/erb/authentication/templates/views/passwords/edit.html.erb +9 -0
  28. data/lib/rails/generators/erb/authentication/templates/views/passwords/new.html.erb +8 -0
  29. data/lib/rails/generators/erb/authentication/templates/views/sessions/new.html.erb +11 -0
  30. data/lib/rails/generators/generated_attribute.rb +16 -11
  31. data/lib/rails/generators/rails/app/app_generator.rb +22 -32
  32. data/lib/rails/generators/rails/app/templates/Dockerfile.tt +12 -3
  33. data/lib/rails/generators/rails/app/templates/Gemfile.tt +23 -8
  34. data/lib/rails/generators/rails/app/templates/app/assets/stylesheets/application.css.tt +6 -11
  35. data/lib/rails/generators/rails/app/templates/app/views/layouts/application.html.erb.tt +10 -3
  36. data/lib/rails/generators/rails/app/templates/app/views/pwa/service-worker.js +3 -3
  37. data/lib/rails/generators/rails/app/templates/bin/dev.tt +1 -0
  38. data/lib/rails/generators/rails/app/templates/bin/setup.tt +5 -7
  39. data/lib/rails/generators/rails/app/templates/bin/thrust.tt +4 -0
  40. data/lib/rails/generators/rails/app/templates/config/databases/mysql.yml.tt +23 -0
  41. data/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml.tt +23 -0
  42. data/lib/rails/generators/rails/app/templates/config/databases/sqlite3.yml.tt +40 -0
  43. data/lib/rails/generators/rails/app/templates/config/databases/trilogy.yml.tt +23 -0
  44. data/lib/rails/generators/rails/app/templates/config/deploy.yml.tt +124 -0
  45. data/lib/rails/generators/rails/app/templates/config/environments/development.rb.tt +12 -23
  46. data/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt +34 -51
  47. data/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt +5 -19
  48. data/lib/rails/generators/rails/app/templates/config/initializers/assets.rb.tt +0 -7
  49. data/lib/rails/generators/rails/app/templates/config/initializers/filter_parameter_logging.rb.tt +1 -1
  50. data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_8_0.rb.tt +25 -0
  51. data/lib/rails/generators/rails/app/templates/config/puma.rb.tt +13 -3
  52. data/lib/rails/generators/rails/app/templates/config/routes.rb.tt +5 -3
  53. data/lib/rails/generators/rails/app/templates/docker-entrypoint.tt +4 -3
  54. data/lib/rails/generators/rails/app/templates/dockerignore.tt +1 -2
  55. data/lib/rails/generators/rails/app/templates/github/ci.yml.tt +1 -1
  56. data/lib/rails/generators/rails/app/templates/gitignore.tt +1 -2
  57. data/lib/rails/generators/rails/app/templates/kamal-secrets.tt +17 -0
  58. data/lib/rails/generators/rails/app/templates/public/400.html +114 -0
  59. data/lib/rails/generators/rails/app/templates/public/404.html +113 -66
  60. data/lib/rails/generators/rails/app/templates/public/406-unsupported-browser.html +113 -65
  61. data/lib/rails/generators/rails/app/templates/public/422.html +113 -66
  62. data/lib/rails/generators/rails/app/templates/public/500.html +113 -65
  63. data/lib/rails/generators/rails/app/templates/public/icon.png +0 -0
  64. data/lib/rails/generators/rails/app/templates/public/icon.svg +2 -2
  65. data/lib/rails/generators/rails/authentication/USAGE +6 -0
  66. data/lib/rails/generators/rails/authentication/authentication_generator.rb +54 -0
  67. data/lib/rails/generators/rails/authentication/templates/controllers/concerns/authentication.rb +55 -0
  68. data/lib/rails/generators/rails/authentication/templates/controllers/passwords_controller.rb +33 -0
  69. data/lib/rails/generators/rails/authentication/templates/controllers/sessions_controller.rb +21 -0
  70. data/lib/rails/generators/rails/authentication/templates/mailers/passwords_mailer.rb +6 -0
  71. data/lib/rails/generators/rails/authentication/templates/models/current.rb +4 -0
  72. data/lib/rails/generators/rails/authentication/templates/models/session.rb +3 -0
  73. data/lib/rails/generators/rails/authentication/templates/models/user.rb +6 -0
  74. data/lib/rails/generators/rails/authentication/templates/test/mailers/previews/passwords_mailer_preview.rb +7 -0
  75. data/lib/rails/generators/rails/authentication/templates/views/passwords_mailer/reset.html.erb +4 -0
  76. data/lib/rails/generators/rails/authentication/templates/views/passwords_mailer/reset.text.erb +2 -0
  77. data/lib/rails/generators/rails/credentials/templates/credentials.yml.tt +4 -0
  78. data/lib/rails/generators/rails/db/system/change/change_generator.rb +1 -1
  79. data/lib/rails/generators/rails/devcontainer/devcontainer_generator.rb +5 -3
  80. data/lib/rails/generators/rails/devcontainer/templates/devcontainer/devcontainer.json.tt +1 -1
  81. data/lib/rails/generators/rails/plugin/plugin_generator.rb +11 -11
  82. data/lib/rails/generators/rails/plugin/templates/github/ci.yml.tt +1 -1
  83. data/lib/rails/generators/rails/plugin/templates/test/test_helper.rb.tt +2 -2
  84. data/lib/rails/generators/rails/scaffold_controller/templates/api_controller.rb.tt +2 -2
  85. data/lib/rails/generators/rails/scaffold_controller/templates/controller.rb.tt +3 -3
  86. data/lib/rails/generators/rails/script/USAGE +18 -0
  87. data/lib/rails/generators/rails/script/script_generator.rb +18 -0
  88. data/lib/rails/generators/rails/script/templates/script.rb.tt +3 -0
  89. data/lib/rails/generators.rb +7 -2
  90. data/lib/rails/info_controller.rb +10 -2
  91. data/lib/rails/rack/silence_request.rb +33 -0
  92. data/lib/rails/rack.rb +1 -0
  93. data/lib/rails/railtie.rb +13 -13
  94. data/lib/rails/source_annotation_extractor.rb +31 -14
  95. data/lib/rails/tasks/statistics.rake +13 -28
  96. data/lib/rails/templates/rails/info/notes.html.erb +65 -0
  97. metadata +45 -25
  98. data/lib/rails/generators/rails/app/templates/app/assets/config/manifest.js.tt +0 -2
  99. data/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb.tt +0 -4
  100. data/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb.tt +0 -4
  101. data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_2.rb.tt +0 -70
  102. data/lib/rails/generators/rails/app/templates/config/initializers/permissions_policy.rb.tt +0 -13
  103. data/lib/rails/generators/rails/app/templates/test/channels/application_cable/connection_test.rb.tt +0 -13
  104. data/lib/rails/generators/rails/plugin/templates/rails/dummy_manifest.js.tt +0 -10
  105. data/lib/rails/generators/rails/plugin/templates/rails/engine_manifest.js.tt +0 -6
  106. data/lib/rails/generators/rails/plugin/templates/rails/javascripts.js.tt +0 -17
@@ -23,7 +23,6 @@ module Rails
23
23
  autoload :NamedBase, "rails/generators/named_base"
24
24
  autoload :ResourceHelpers, "rails/generators/resource_helpers"
25
25
  autoload :TestCase, "rails/generators/test_case"
26
- autoload :Devcontainer, "rails/generators/devcontainer"
27
26
 
28
27
  mattr_accessor :namespace
29
28
 
@@ -61,6 +60,10 @@ module Rails
61
60
  }
62
61
  }
63
62
 
63
+ # We need to store the RAILS_DEV_PATH in a constant, otherwise the path
64
+ # can change when we FileUtils.cd.
65
+ RAILS_DEV_PATH = File.expand_path("../../..", __dir__) # :nodoc:
66
+
64
67
  class << self
65
68
  def configure!(config) # :nodoc:
66
69
  api_only! if config.api_only
@@ -152,7 +155,8 @@ module Rails
152
155
  "#{template}:scaffold",
153
156
  "#{template}:mailer",
154
157
  "action_text:install",
155
- "action_mailbox:install"
158
+ "action_mailbox:install",
159
+ "devcontainer"
156
160
  ]
157
161
  end
158
162
  end
@@ -268,6 +272,7 @@ module Rails
268
272
  #{error.detailed_message}
269
273
  Run `bin/rails generate --help` for more options.
270
274
  MSG
275
+ exit 1
271
276
  end
272
277
  end
273
278
 
@@ -20,7 +20,7 @@ class Rails::InfoController < Rails::ApplicationController # :nodoc:
20
20
 
21
21
  def routes
22
22
  if query = params[:query]
23
- query = URI::DEFAULT_PARSER.escape query
23
+ query = URI::RFC2396_PARSER.escape query
24
24
 
25
25
  render json: {
26
26
  exact: matching_routes(query: query, exact_match: true),
@@ -32,6 +32,14 @@ class Rails::InfoController < Rails::ApplicationController # :nodoc:
32
32
  end
33
33
  end
34
34
 
35
+ def notes
36
+ @annotations = Rails::SourceAnnotationExtractor.new(
37
+ Rails::SourceAnnotationExtractor::Annotation.tags.join("|")
38
+ ).find(
39
+ Rails::SourceAnnotationExtractor::Annotation.directories
40
+ )
41
+ end
42
+
35
43
  private
36
44
  def matching_routes(query:, exact_match:)
37
45
  return [] if query.blank?
@@ -53,7 +61,7 @@ class Rails::InfoController < Rails::ApplicationController # :nodoc:
53
61
  match ||= (query === route_wrapper.verb)
54
62
 
55
63
  unless match
56
- controller_action = URI::DEFAULT_PARSER.escape(route_wrapper.reqs)
64
+ controller_action = URI::RFC2396_PARSER.escape(route_wrapper.reqs)
57
65
  match = exact_match ? (query === controller_action) : controller_action.include?(query)
58
66
  end
59
67
 
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ # :markup: markdown
4
+
5
+ require "active_support/logger_silence"
6
+
7
+ module Rails
8
+ module Rack
9
+ # Allows you to silence requests made to a specific path.
10
+ # This is useful for preventing recurring requests like health checks from clogging the logging.
11
+ # This middleware is used to do just that against the path /up in production by default.
12
+ #
13
+ # Example:
14
+ #
15
+ # config.middleware.insert_before \
16
+ # Rails::Rack::Logger, Rails::Rack::SilenceRequest, path: "/up"
17
+ #
18
+ # This middleware can also be configured using `config.silence_healthcheck_path = "/up"` in Rails.
19
+ class SilenceRequest
20
+ def initialize(app, path:)
21
+ @app, @path = app, path
22
+ end
23
+
24
+ def call(env)
25
+ if env["PATH_INFO"] == @path
26
+ Rails.logger.silence { @app.call(env) }
27
+ else
28
+ @app.call(env)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
data/lib/rails/rack.rb CHANGED
@@ -3,5 +3,6 @@
3
3
  module Rails
4
4
  module Rack
5
5
  autoload :Logger, "rails/rack/logger"
6
+ autoload :SilenceRequest, "rails/rack/silence_request"
6
7
  end
7
8
  end
data/lib/rails/railtie.rb CHANGED
@@ -50,8 +50,8 @@ module Rails
50
50
  # To add an initialization step to the \Rails boot process from your railtie, just
51
51
  # define the initialization code with the +initializer+ macro:
52
52
  #
53
- # class MyRailtie < Rails::Railtie
54
- # initializer "my_railtie.configure_rails_initialization" do
53
+ # class MyGem::Railtie < Rails::Railtie
54
+ # initializer "my_gem.configure_rails_initialization" do
55
55
  # # some initialization behavior
56
56
  # end
57
57
  # end
@@ -59,9 +59,9 @@ module Rails
59
59
  # If specified, the block can also receive the application object, in case you
60
60
  # need to access some application-specific configuration, like middleware:
61
61
  #
62
- # class MyRailtie < Rails::Railtie
63
- # initializer "my_railtie.configure_rails_initialization" do |app|
64
- # app.middleware.use MyRailtie::Middleware
62
+ # class MyGem::Railtie < Rails::Railtie
63
+ # initializer "my_gem.configure_rails_initialization" do |app|
64
+ # app.middleware.use MyGem::Middleware
65
65
  # end
66
66
  # end
67
67
  #
@@ -74,14 +74,14 @@ module Rails
74
74
  # Railties can access a config object which contains configuration shared by all
75
75
  # railties and the application:
76
76
  #
77
- # class MyRailtie < Rails::Railtie
77
+ # class MyGem::Railtie < Rails::Railtie
78
78
  # # Customize the ORM
79
- # config.app_generators.orm :my_railtie_orm
79
+ # config.app_generators.orm :my_gem_orm
80
80
  #
81
81
  # # Add a to_prepare block which is executed once in production
82
82
  # # and before each request in development.
83
83
  # config.to_prepare do
84
- # MyRailtie.setup!
84
+ # MyGem.setup!
85
85
  # end
86
86
  # end
87
87
  #
@@ -90,9 +90,9 @@ module Rails
90
90
  # If your railtie has Rake tasks, you can tell \Rails to load them through the method
91
91
  # +rake_tasks+:
92
92
  #
93
- # class MyRailtie < Rails::Railtie
93
+ # class MyGem::Railtie < Rails::Railtie
94
94
  # rake_tasks do
95
- # load "path/to/my_railtie.tasks"
95
+ # load "path/to/my_gem.tasks"
96
96
  # end
97
97
  # end
98
98
  #
@@ -100,9 +100,9 @@ module Rails
100
100
  # your generators at a different location, you can specify in your railtie a block which
101
101
  # will load them during normal generators lookup:
102
102
  #
103
- # class MyRailtie < Rails::Railtie
103
+ # class MyGem::Railtie < Rails::Railtie
104
104
  # generators do
105
- # require "path/to/my_railtie_generator"
105
+ # require "path/to/my_gem_generator"
106
106
  # end
107
107
  # end
108
108
  #
@@ -120,7 +120,7 @@ module Rails
120
120
  # this less confusing for everyone.
121
121
  # It can be used like this:
122
122
  #
123
- # class MyRailtie < Rails::Railtie
123
+ # class MyGem::Railtie < Rails::Railtie
124
124
  # server do
125
125
  # WebpackServer.start
126
126
  # end
@@ -1,6 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "ripper"
3
+ begin
4
+ require "prism"
5
+ rescue LoadError
6
+ # If Prism isn't available (because of using an older Ruby version) then we'll
7
+ # define a fallback for the ParserExtractor using ripper.
8
+ require "ripper"
9
+ end
4
10
 
5
11
  module Rails
6
12
  # Implements the logic behind +Rails::Command::NotesCommand+. See <tt>rails notes --help</tt> for usage information.
@@ -16,24 +22,35 @@ module Rails
16
22
  # Wraps a regular expression that will be tested against each of the source
17
23
  # file's comments.
18
24
  class ParserExtractor < Struct.new(:pattern)
19
- class Parser < Ripper
20
- attr_reader :comments, :pattern
25
+ if defined?(Prism)
26
+ def annotations(file)
27
+ result = Prism.parse_file(file)
28
+ return [] unless result.success?
21
29
 
22
- def initialize(source, pattern:)
23
- super(source)
24
- @pattern = pattern
25
- @comments = []
30
+ result.comments.filter_map do |comment|
31
+ Annotation.new(comment.location.start_line, $1, $2) if comment.location.slice =~ pattern
32
+ end
26
33
  end
34
+ else
35
+ class Parser < Ripper
36
+ attr_reader :comments, :pattern
37
+
38
+ def initialize(source, pattern:)
39
+ super(source)
40
+ @pattern = pattern
41
+ @comments = []
42
+ end
27
43
 
28
- def on_comment(value)
29
- @comments << Annotation.new(lineno, $1, $2) if value =~ pattern
44
+ def on_comment(value)
45
+ @comments << Annotation.new(lineno, $1, $2) if value =~ pattern
46
+ end
30
47
  end
31
- end
32
48
 
33
- def annotations(file)
34
- contents = File.read(file, encoding: Encoding::BINARY)
35
- parser = Parser.new(contents, pattern: pattern).tap(&:parse)
36
- parser.error? ? [] : parser.comments
49
+ def annotations(file)
50
+ contents = File.read(file, encoding: Encoding::BINARY)
51
+ parser = Parser.new(contents, pattern: pattern).tap(&:parse)
52
+ parser.error? ? [] : parser.comments
53
+ end
37
54
  end
38
55
  end
39
56
 
@@ -1,32 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # While global constants are bad, many 3rd party tools depend on this one (e.g
4
- # rspec-rails & cucumber-rails). So a deprecation warning is needed if we want
5
- # to remove it.
6
- STATS_DIRECTORIES ||= [
7
- %w(Controllers app/controllers),
8
- %w(Helpers app/helpers),
9
- %w(Jobs app/jobs),
10
- %w(Models app/models),
11
- %w(Mailers app/mailers),
12
- %w(Mailboxes app/mailboxes),
13
- %w(Channels app/channels),
14
- %w(Views app/views),
15
- %w(JavaScripts app/assets/javascripts),
16
- %w(Stylesheets app/assets/stylesheets),
17
- %w(JavaScript app/javascript),
18
- %w(Libraries lib/),
19
- %w(APIs app/apis),
20
- %w(Controller\ tests test/controllers),
21
- %w(Helper\ tests test/helpers),
22
- %w(Job\ tests test/jobs),
23
- %w(Model\ tests test/models),
24
- %w(Mailer\ tests test/mailers),
25
- %w(Mailbox\ tests test/mailboxes),
26
- %w(Channel\ tests test/channels),
27
- %w(Integration\ tests test/integration),
28
- %w(System\ tests test/system),
29
- ]
3
+ require "rails/code_statistics"
4
+ STATS_DIRECTORIES = ActiveSupport::Deprecation::DeprecatedObjectProxy.new(
5
+ Rails::CodeStatistics::DIRECTORIES,
6
+ "`STATS_DIRECTORIES` is deprecated and will be removed in Rails 8.1! Use `Rails::CodeStatistics.register_directory('My Directory', 'path/to/dir)` instead.",
7
+ Rails.deprecator
8
+ )
30
9
 
31
10
  desc "Report code statistics (KLOCs, etc) from the application or engine"
32
11
  task :stats do
@@ -34,5 +13,11 @@ task :stats do
34
13
  stat_directories = STATS_DIRECTORIES.collect do |name, dir|
35
14
  [ name, "#{File.dirname(Rake.application.rakefile_location)}/#{dir}" ]
36
15
  end.select { |name, dir| File.directory?(dir) }
37
- CodeStatistics.new(*stat_directories).to_s
16
+
17
+ $stderr.puts Rails.deprecator.warn(<<~MSG, caller_locations(0..1))
18
+ `bin/rake stats` has been deprecated and will be removed in Rails 8.1.
19
+ Please use `bin/rails stats` as Rails command instead.\n
20
+ MSG
21
+
22
+ Rails::CodeStatistics.new(*stat_directories).to_s
38
23
  end
@@ -0,0 +1,65 @@
1
+ <style>
2
+ h2, p {
3
+ padding-left: 30px;
4
+ }
5
+ table {
6
+ margin: 0;
7
+ border-collapse: collapse;
8
+ word-wrap:break-word;
9
+ table-layout: fixed;
10
+ width:100%;
11
+ }
12
+ table thead tr {
13
+ border-bottom: 2px solid #ddd;
14
+ }
15
+ table th {
16
+ padding-left: 30px;
17
+ text-align: left;
18
+ }
19
+ table thead th.tag, table thead th.line-no {
20
+ width: 10%;
21
+ }
22
+ table tbody tr {
23
+ border-bottom: 1px solid #ddd;
24
+ }
25
+ table tbody tr:nth-child(odd) {
26
+ background: #f2f2f2;
27
+ }
28
+ table td {
29
+ padding: 4px 30px;
30
+ }
31
+ @media (prefers-color-scheme: dark) {
32
+ table tbody tr:nth-child(odd) {
33
+ background: #282828;
34
+ }
35
+ }
36
+ </style>
37
+
38
+ <h2>
39
+ Notes
40
+ </h2>
41
+
42
+ <table id="route_table" class="table">
43
+ <thead>
44
+ <th>File Name</th>
45
+ <th class="line-no">Line No.</th>
46
+ <th class="tag">Tag</th>
47
+ <th>Description</th>
48
+ </thead>
49
+ <tbody>
50
+ <% @annotations.each do |file, annotations| %>
51
+ <% annotations.each.with_index do |annotation, index| %>
52
+ <tr>
53
+ <% if index == 0 %>
54
+ <th rowspan="<%= annotations.size %>">
55
+ <%= file %>
56
+ </th>
57
+ <% end %>
58
+ <td class="line-no"><%= annotation.line %></td>
59
+ <td class="tag"><%= annotation.tag %></td>
60
+ <td><%= annotation.text %></td>
61
+ </tr>
62
+ <% end %>
63
+ <% end %>
64
+ </tbody>
65
+ </table>
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.2.0
4
+ version: 8.0.0.beta1
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-08-09 00:00:00.000000000 Z
11
+ date: 2024-09-26 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.2.0
19
+ version: 8.0.0.beta1
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.2.0
26
+ version: 8.0.0.beta1
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.2.0
33
+ version: 8.0.0.beta1
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.2.0
40
+ version: 8.0.0.beta1
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rackup
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -120,14 +120,14 @@ dependencies:
120
120
  requirements:
121
121
  - - '='
122
122
  - !ruby/object:Gem::Version
123
- version: 7.2.0
123
+ version: 8.0.0.beta1
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.2.0
130
+ version: 8.0.0.beta1
131
131
  description: 'Rails internals: application bootup, plugins, generators, and rake tasks.'
132
132
  email: david@loudthinking.com
133
133
  executables:
@@ -200,6 +200,7 @@ files:
200
200
  - lib/rails/commands/runner/runner_command.rb
201
201
  - lib/rails/commands/secret/secret_command.rb
202
202
  - lib/rails/commands/server/server_command.rb
203
+ - lib/rails/commands/stats/stats_command.rb
203
204
  - lib/rails/commands/test/USAGE
204
205
  - lib/rails/commands/test/test_command.rb
205
206
  - lib/rails/commands/unused_routes/unused_routes_command.rb
@@ -213,6 +214,7 @@ files:
213
214
  - lib/rails/engine.rb
214
215
  - lib/rails/engine/commands.rb
215
216
  - lib/rails/engine/configuration.rb
217
+ - lib/rails/engine/lazy_route_set.rb
216
218
  - lib/rails/engine/railties.rb
217
219
  - lib/rails/engine/updater.rb
218
220
  - lib/rails/gem_version.rb
@@ -225,6 +227,10 @@ files:
225
227
  - lib/rails/generators/base.rb
226
228
  - lib/rails/generators/database.rb
227
229
  - lib/rails/generators/erb.rb
230
+ - lib/rails/generators/erb/authentication/authentication_generator.rb
231
+ - lib/rails/generators/erb/authentication/templates/views/passwords/edit.html.erb
232
+ - lib/rails/generators/erb/authentication/templates/views/passwords/new.html.erb
233
+ - lib/rails/generators/erb/authentication/templates/views/sessions/new.html.erb
228
234
  - lib/rails/generators/erb/controller/controller_generator.rb
229
235
  - lib/rails/generators/erb/controller/templates/view.html.erb.tt
230
236
  - lib/rails/generators/erb/mailer/mailer_generator.rb
@@ -249,10 +255,7 @@ files:
249
255
  - lib/rails/generators/rails/app/templates/Gemfile.tt
250
256
  - lib/rails/generators/rails/app/templates/README.md.tt
251
257
  - lib/rails/generators/rails/app/templates/Rakefile.tt
252
- - lib/rails/generators/rails/app/templates/app/assets/config/manifest.js.tt
253
258
  - lib/rails/generators/rails/app/templates/app/assets/stylesheets/application.css.tt
254
- - lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb.tt
255
- - lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb.tt
256
259
  - lib/rails/generators/rails/app/templates/app/controllers/application_controller.rb.tt
257
260
  - lib/rails/generators/rails/app/templates/app/helpers/application_helper.rb.tt
258
261
  - lib/rails/generators/rails/app/templates/app/jobs/application_job.rb.tt
@@ -264,10 +267,12 @@ files:
264
267
  - lib/rails/generators/rails/app/templates/app/views/pwa/manifest.json.erb.tt
265
268
  - lib/rails/generators/rails/app/templates/app/views/pwa/service-worker.js
266
269
  - lib/rails/generators/rails/app/templates/bin/brakeman.tt
270
+ - lib/rails/generators/rails/app/templates/bin/dev.tt
267
271
  - lib/rails/generators/rails/app/templates/bin/rails.tt
268
272
  - lib/rails/generators/rails/app/templates/bin/rake.tt
269
273
  - lib/rails/generators/rails/app/templates/bin/rubocop.tt
270
274
  - lib/rails/generators/rails/app/templates/bin/setup.tt
275
+ - lib/rails/generators/rails/app/templates/bin/thrust.tt
271
276
  - lib/rails/generators/rails/app/templates/config.ru.tt
272
277
  - lib/rails/generators/rails/app/templates/config/application.rb.tt
273
278
  - lib/rails/generators/rails/app/templates/config/boot.rb.tt
@@ -276,6 +281,7 @@ files:
276
281
  - lib/rails/generators/rails/app/templates/config/databases/postgresql.yml.tt
277
282
  - lib/rails/generators/rails/app/templates/config/databases/sqlite3.yml.tt
278
283
  - lib/rails/generators/rails/app/templates/config/databases/trilogy.yml.tt
284
+ - lib/rails/generators/rails/app/templates/config/deploy.yml.tt
279
285
  - lib/rails/generators/rails/app/templates/config/environment.rb.tt
280
286
  - lib/rails/generators/rails/app/templates/config/environments/development.rb.tt
281
287
  - lib/rails/generators/rails/app/templates/config/environments/production.rb.tt
@@ -285,8 +291,7 @@ files:
285
291
  - lib/rails/generators/rails/app/templates/config/initializers/cors.rb.tt
286
292
  - lib/rails/generators/rails/app/templates/config/initializers/filter_parameter_logging.rb.tt
287
293
  - lib/rails/generators/rails/app/templates/config/initializers/inflections.rb.tt
288
- - lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_7_2.rb.tt
289
- - lib/rails/generators/rails/app/templates/config/initializers/permissions_policy.rb.tt
294
+ - lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_8_0.rb.tt
290
295
  - lib/rails/generators/rails/app/templates/config/locales/en.yml
291
296
  - lib/rails/generators/rails/app/templates/config/puma.rb.tt
292
297
  - lib/rails/generators/rails/app/templates/config/routes.rb.tt
@@ -298,7 +303,9 @@ files:
298
303
  - lib/rails/generators/rails/app/templates/github/ci.yml.tt
299
304
  - lib/rails/generators/rails/app/templates/github/dependabot.yml
300
305
  - lib/rails/generators/rails/app/templates/gitignore.tt
306
+ - lib/rails/generators/rails/app/templates/kamal-secrets.tt
301
307
  - lib/rails/generators/rails/app/templates/node-version.tt
308
+ - lib/rails/generators/rails/app/templates/public/400.html
302
309
  - lib/rails/generators/rails/app/templates/public/404.html
303
310
  - lib/rails/generators/rails/app/templates/public/406-unsupported-browser.html
304
311
  - lib/rails/generators/rails/app/templates/public/422.html
@@ -309,9 +316,20 @@ files:
309
316
  - lib/rails/generators/rails/app/templates/rubocop.yml.tt
310
317
  - lib/rails/generators/rails/app/templates/ruby-version.tt
311
318
  - lib/rails/generators/rails/app/templates/test/application_system_test_case.rb.tt
312
- - lib/rails/generators/rails/app/templates/test/channels/application_cable/connection_test.rb.tt
313
319
  - lib/rails/generators/rails/app/templates/test/test_helper.rb.tt
314
320
  - lib/rails/generators/rails/application_record/application_record_generator.rb
321
+ - lib/rails/generators/rails/authentication/USAGE
322
+ - lib/rails/generators/rails/authentication/authentication_generator.rb
323
+ - lib/rails/generators/rails/authentication/templates/controllers/concerns/authentication.rb
324
+ - lib/rails/generators/rails/authentication/templates/controllers/passwords_controller.rb
325
+ - lib/rails/generators/rails/authentication/templates/controllers/sessions_controller.rb
326
+ - lib/rails/generators/rails/authentication/templates/mailers/passwords_mailer.rb
327
+ - lib/rails/generators/rails/authentication/templates/models/current.rb
328
+ - lib/rails/generators/rails/authentication/templates/models/session.rb
329
+ - lib/rails/generators/rails/authentication/templates/models/user.rb
330
+ - lib/rails/generators/rails/authentication/templates/test/mailers/previews/passwords_mailer_preview.rb
331
+ - lib/rails/generators/rails/authentication/templates/views/passwords_mailer/reset.html.erb
332
+ - lib/rails/generators/rails/authentication/templates/views/passwords_mailer/reset.text.erb
315
333
  - lib/rails/generators/rails/benchmark/USAGE
316
334
  - lib/rails/generators/rails/benchmark/benchmark_generator.rb
317
335
  - lib/rails/generators/rails/benchmark/templates/benchmark.rb.tt
@@ -367,9 +385,6 @@ files:
367
385
  - lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/version.rb.tt
368
386
  - lib/rails/generators/rails/plugin/templates/lib/tasks/%namespaced_name%_tasks.rake.tt
369
387
  - lib/rails/generators/rails/plugin/templates/rails/boot.rb.tt
370
- - lib/rails/generators/rails/plugin/templates/rails/dummy_manifest.js.tt
371
- - lib/rails/generators/rails/plugin/templates/rails/engine_manifest.js.tt
372
- - lib/rails/generators/rails/plugin/templates/rails/javascripts.js.tt
373
388
  - lib/rails/generators/rails/plugin/templates/rails/routes.rb.tt
374
389
  - lib/rails/generators/rails/plugin/templates/rails/stylesheets.css
375
390
  - lib/rails/generators/rails/plugin/templates/rubocop.yml.tt
@@ -386,6 +401,9 @@ files:
386
401
  - lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb
387
402
  - lib/rails/generators/rails/scaffold_controller/templates/api_controller.rb.tt
388
403
  - lib/rails/generators/rails/scaffold_controller/templates/controller.rb.tt
404
+ - lib/rails/generators/rails/script/USAGE
405
+ - lib/rails/generators/rails/script/script_generator.rb
406
+ - lib/rails/generators/rails/script/templates/script.rb.tt
389
407
  - lib/rails/generators/rails/system_test/USAGE
390
408
  - lib/rails/generators/rails/system_test/system_test_generator.rb
391
409
  - lib/rails/generators/rails/task/USAGE
@@ -432,6 +450,7 @@ files:
432
450
  - lib/rails/pwa_controller.rb
433
451
  - lib/rails/rack.rb
434
452
  - lib/rails/rack/logger.rb
453
+ - lib/rails/rack/silence_request.rb
435
454
  - lib/rails/rackup/server.rb
436
455
  - lib/rails/railtie.rb
437
456
  - lib/rails/railtie/configurable.rb
@@ -447,6 +466,7 @@ files:
447
466
  - lib/rails/tasks/yarn.rake
448
467
  - lib/rails/tasks/zeitwerk.rake
449
468
  - lib/rails/templates/layouts/application.html.erb
469
+ - lib/rails/templates/rails/info/notes.html.erb
450
470
  - lib/rails/templates/rails/info/properties.html.erb
451
471
  - lib/rails/templates/rails/info/routes.html.erb
452
472
  - lib/rails/templates/rails/mailers/email.html.erb
@@ -469,12 +489,12 @@ licenses:
469
489
  - MIT
470
490
  metadata:
471
491
  bug_tracker_uri: https://github.com/rails/rails/issues
472
- changelog_uri: https://github.com/rails/rails/blob/v7.2.0/railties/CHANGELOG.md
473
- documentation_uri: https://api.rubyonrails.org/v7.2.0/
492
+ changelog_uri: https://github.com/rails/rails/blob/v8.0.0.beta1/railties/CHANGELOG.md
493
+ documentation_uri: https://api.rubyonrails.org/v8.0.0.beta1/
474
494
  mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
475
- source_code_uri: https://github.com/rails/rails/tree/v7.2.0/railties
495
+ source_code_uri: https://github.com/rails/rails/tree/v8.0.0.beta1/railties
476
496
  rubygems_mfa_required: 'true'
477
- post_install_message:
497
+ post_install_message:
478
498
  rdoc_options:
479
499
  - "--exclude"
480
500
  - "."
@@ -484,15 +504,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
484
504
  requirements:
485
505
  - - ">="
486
506
  - !ruby/object:Gem::Version
487
- version: 3.1.0
507
+ version: 3.2.0
488
508
  required_rubygems_version: !ruby/object:Gem::Requirement
489
509
  requirements:
490
510
  - - ">="
491
511
  - !ruby/object:Gem::Version
492
512
  version: '0'
493
513
  requirements: []
494
- rubygems_version: 3.5.11
495
- signing_key:
514
+ rubygems_version: 3.5.16
515
+ signing_key:
496
516
  specification_version: 4
497
517
  summary: Tools for creating, working with, and running Rails applications.
498
518
  test_files: []
@@ -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