railties 5.2.0 → 6.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (234) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +293 -89
  3. data/MIT-LICENSE +1 -1
  4. data/RDOC_MAIN.rdoc +39 -33
  5. data/README.rdoc +3 -3
  6. data/lib/minitest/rails_plugin.rb +24 -13
  7. data/lib/rails/all.rb +4 -0
  8. data/lib/rails/api/generator.rb +2 -1
  9. data/lib/rails/api/task.rb +17 -0
  10. data/lib/rails/app_loader.rb +2 -2
  11. data/lib/rails/app_updater.rb +4 -1
  12. data/lib/rails/application/bootstrap.rb +9 -17
  13. data/lib/rails/application/configuration.rb +177 -27
  14. data/lib/rails/application/default_middleware_stack.rb +7 -3
  15. data/lib/rails/application/dummy_erb_compiler.rb +18 -0
  16. data/lib/rails/application/finisher.rb +69 -2
  17. data/lib/rails/application/routes_reloader.rb +9 -19
  18. data/lib/rails/application.rb +96 -66
  19. data/lib/rails/application_controller.rb +0 -1
  20. data/lib/rails/autoloaders.rb +48 -0
  21. data/lib/rails/backtrace_cleaner.rb +14 -21
  22. data/lib/rails/code_statistics.rb +8 -6
  23. data/lib/rails/code_statistics_calculator.rb +6 -6
  24. data/lib/rails/command/actions.rb +10 -0
  25. data/lib/rails/command/base.rb +17 -5
  26. data/lib/rails/command/behavior.rb +8 -49
  27. data/lib/rails/command/environment_argument.rb +9 -16
  28. data/lib/rails/command/spellchecker.rb +57 -0
  29. data/lib/rails/command.rb +18 -11
  30. data/lib/rails/commands/console/console_command.rb +6 -0
  31. data/lib/rails/commands/credentials/USAGE +33 -0
  32. data/lib/rails/commands/credentials/credentials_command/diffing.rb +41 -0
  33. data/lib/rails/commands/credentials/credentials_command.rb +78 -21
  34. data/lib/rails/commands/db/system/change/change_command.rb +25 -0
  35. data/lib/rails/commands/dbconsole/dbconsole_command.rb +66 -51
  36. data/lib/rails/commands/dev/dev_command.rb +19 -0
  37. data/lib/rails/commands/encrypted/USAGE +28 -0
  38. data/lib/rails/commands/encrypted/encrypted_command.rb +5 -4
  39. data/lib/rails/commands/generate/generate_command.rb +1 -1
  40. data/lib/rails/commands/help/help_command.rb +1 -1
  41. data/lib/rails/commands/initializers/initializers_command.rb +23 -0
  42. data/lib/rails/commands/new/new_command.rb +2 -2
  43. data/lib/rails/commands/notes/notes_command.rb +29 -0
  44. data/lib/rails/commands/plugin/plugin_command.rb +1 -1
  45. data/lib/rails/commands/rake/rake_command.rb +9 -8
  46. data/lib/rails/commands/routes/routes_command.rb +37 -0
  47. data/lib/rails/commands/runner/runner_command.rb +13 -9
  48. data/lib/rails/commands/secrets/USAGE +6 -0
  49. data/lib/rails/commands/secrets/secrets_command.rb +3 -3
  50. data/lib/rails/commands/server/server_command.rb +92 -56
  51. data/lib/rails/commands/test/test_command.rb +2 -2
  52. data/lib/rails/configuration.rb +48 -19
  53. data/lib/rails/engine/configuration.rb +6 -2
  54. data/lib/rails/engine/updater.rb +1 -1
  55. data/lib/rails/engine.rb +63 -35
  56. data/lib/rails/gem_version.rb +2 -2
  57. data/lib/rails/generators/actions/create_migration.rb +5 -1
  58. data/lib/rails/generators/actions.rb +89 -56
  59. data/lib/rails/generators/app_base.rb +80 -108
  60. data/lib/rails/generators/app_name.rb +50 -0
  61. data/lib/rails/generators/base.rb +19 -12
  62. data/lib/rails/generators/database.rb +57 -0
  63. data/lib/rails/generators/erb/mailer/mailer_generator.rb +1 -2
  64. data/lib/rails/generators/erb/scaffold/scaffold_generator.rb +0 -1
  65. data/lib/rails/generators/erb/scaffold/templates/_form.html.erb.tt +7 -4
  66. data/lib/rails/generators/erb/scaffold/templates/index.html.erb.tt +1 -1
  67. data/lib/rails/generators/erb/scaffold/templates/show.html.erb.tt +9 -1
  68. data/lib/rails/generators/erb.rb +0 -1
  69. data/lib/rails/generators/generated_attribute.rb +50 -31
  70. data/lib/rails/generators/migration.rb +3 -3
  71. data/lib/rails/generators/model_helpers.rb +33 -2
  72. data/lib/rails/generators/named_base.rb +3 -7
  73. data/lib/rails/generators/rails/app/USAGE +2 -1
  74. data/lib/rails/generators/rails/app/app_generator.rb +127 -84
  75. data/lib/rails/generators/rails/app/templates/Gemfile.tt +18 -21
  76. data/lib/rails/generators/rails/app/templates/Rakefile.tt +1 -1
  77. data/lib/rails/generators/rails/app/templates/app/assets/config/manifest.js.tt +0 -3
  78. data/lib/rails/generators/rails/app/templates/app/javascript/channels/consumer.js +6 -0
  79. data/lib/rails/generators/rails/app/templates/app/javascript/channels/index.js +5 -0
  80. data/lib/rails/generators/rails/app/templates/app/javascript/packs/application.js.tt +23 -0
  81. data/lib/rails/generators/rails/app/templates/app/jobs/application_job.rb.tt +5 -0
  82. data/lib/rails/generators/rails/app/templates/app/views/layouts/application.html.erb.tt +6 -5
  83. data/lib/rails/generators/rails/app/templates/bin/rails.tt +5 -2
  84. data/lib/rails/generators/rails/app/templates/bin/rake.tt +5 -2
  85. data/lib/rails/generators/rails/app/templates/bin/setup.tt +9 -9
  86. data/lib/rails/generators/rails/app/templates/bin/spring.tt +9 -0
  87. data/lib/rails/generators/rails/app/templates/bin/yarn.tt +11 -3
  88. data/lib/rails/generators/rails/app/templates/config/application.rb.tt +16 -7
  89. data/lib/rails/generators/rails/app/templates/config/boot.rb.tt +2 -2
  90. data/lib/rails/generators/rails/app/templates/config/cable.yml.tt +1 -1
  91. data/lib/rails/generators/rails/app/templates/config/databases/jdbc.yml.tt +4 -5
  92. data/lib/rails/generators/rails/app/templates/config/databases/jdbcmysql.yml.tt +12 -11
  93. data/lib/rails/generators/rails/app/templates/config/databases/jdbcpostgresql.yml.tt +13 -12
  94. data/lib/rails/generators/rails/app/templates/config/databases/jdbcsqlite3.yml.tt +1 -1
  95. data/lib/rails/generators/rails/app/templates/config/databases/mysql.yml.tt +13 -12
  96. data/lib/rails/generators/rails/app/templates/config/databases/oracle.yml.tt +12 -11
  97. data/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml.tt +16 -15
  98. data/lib/rails/generators/rails/app/templates/config/databases/sqlite3.yml.tt +1 -1
  99. data/lib/rails/generators/rails/app/templates/config/databases/sqlserver.yml.tt +11 -10
  100. data/lib/rails/generators/rails/app/templates/config/environment.rb.tt +1 -1
  101. data/lib/rails/generators/rails/app/templates/config/environments/development.rb.tt +22 -5
  102. data/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt +43 -17
  103. data/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt +26 -7
  104. data/lib/rails/generators/rails/app/templates/config/initializers/assets.rb.tt +1 -1
  105. data/lib/rails/generators/rails/app/templates/config/initializers/backtrace_silencers.rb.tt +4 -3
  106. data/lib/rails/generators/rails/app/templates/config/initializers/content_security_policy.rb.tt +7 -0
  107. data/lib/rails/generators/rails/app/templates/config/initializers/filter_parameter_logging.rb.tt +3 -1
  108. data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_6_1.rb.tt +63 -0
  109. data/lib/rails/generators/rails/app/templates/config/initializers/permissions_policy.rb.tt +11 -0
  110. data/lib/rails/generators/rails/app/templates/config/locales/en.yml +1 -1
  111. data/lib/rails/generators/rails/app/templates/config/puma.rb.tt +13 -4
  112. data/lib/rails/generators/rails/app/templates/config/routes.rb.tt +1 -1
  113. data/lib/rails/generators/rails/app/templates/config/spring.rb.tt +6 -6
  114. data/lib/rails/generators/rails/app/templates/config.ru.tt +2 -1
  115. data/lib/rails/generators/rails/app/templates/db/seeds.rb.tt +1 -1
  116. data/lib/rails/generators/rails/app/templates/gitattributes.tt +14 -0
  117. data/lib/rails/generators/rails/app/templates/gitignore.tt +10 -7
  118. data/lib/rails/generators/rails/app/templates/package.json.tt +8 -2
  119. data/lib/rails/generators/rails/app/templates/public/robots.txt +1 -1
  120. data/lib/rails/generators/rails/app/templates/ruby-version.tt +1 -1
  121. data/lib/rails/generators/rails/app/templates/test/channels/application_cable/connection_test.rb.tt +11 -0
  122. data/lib/rails/generators/rails/app/templates/test/test_helper.rb.tt +9 -2
  123. data/lib/rails/generators/rails/assets/USAGE +3 -7
  124. data/lib/rails/generators/rails/assets/assets_generator.rb +0 -1
  125. data/lib/rails/generators/rails/benchmark/USAGE +19 -0
  126. data/lib/rails/generators/rails/benchmark/benchmark_generator.rb +29 -0
  127. data/lib/rails/generators/rails/benchmark/templates/benchmark.rb.tt +15 -0
  128. data/lib/rails/generators/rails/controller/USAGE +2 -2
  129. data/lib/rails/generators/rails/controller/controller_generator.rb +10 -39
  130. data/lib/rails/generators/rails/credentials/credentials_generator.rb +6 -7
  131. data/lib/rails/generators/rails/db/system/change/change_generator.rb +65 -0
  132. data/lib/rails/generators/rails/encrypted_file/encrypted_file_generator.rb +10 -7
  133. data/lib/rails/generators/rails/encryption_key_file/encryption_key_file_generator.rb +1 -0
  134. data/lib/rails/generators/rails/generator/USAGE +2 -2
  135. data/lib/rails/generators/rails/generator/generator_generator.rb +0 -1
  136. data/lib/rails/generators/rails/generator/templates/USAGE.tt +1 -1
  137. data/lib/rails/generators/rails/helper/USAGE +2 -3
  138. data/lib/rails/generators/rails/helper/helper_generator.rb +5 -0
  139. data/lib/rails/generators/rails/integration_test/USAGE +2 -2
  140. data/lib/rails/generators/rails/migration/USAGE +4 -4
  141. data/lib/rails/generators/rails/model/USAGE +15 -16
  142. data/lib/rails/generators/rails/plugin/plugin_generator.rb +32 -56
  143. data/lib/rails/generators/rails/plugin/templates/%name%.gemspec.tt +18 -18
  144. data/lib/rails/generators/rails/plugin/templates/Gemfile.tt +3 -10
  145. data/lib/rails/generators/rails/plugin/templates/Rakefile.tt +4 -18
  146. data/lib/rails/generators/rails/plugin/templates/app/controllers/%namespaced_name%/application_controller.rb.tt +1 -2
  147. data/lib/rails/generators/rails/plugin/templates/app/helpers/%namespaced_name%/application_helper.rb.tt +1 -1
  148. data/lib/rails/generators/rails/plugin/templates/app/jobs/%namespaced_name%/application_job.rb.tt +1 -1
  149. data/lib/rails/generators/rails/plugin/templates/app/mailers/%namespaced_name%/application_mailer.rb.tt +1 -1
  150. data/lib/rails/generators/rails/plugin/templates/app/models/%namespaced_name%/application_record.rb.tt +1 -1
  151. data/lib/rails/generators/rails/plugin/templates/bin/rails.tt +3 -3
  152. data/lib/rails/generators/rails/plugin/templates/gitignore.tt +14 -11
  153. data/lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/engine.rb.tt +1 -1
  154. data/lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/railtie.rb.tt +1 -1
  155. data/lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%.rb.tt +1 -0
  156. data/lib/rails/generators/rails/plugin/templates/rails/boot.rb.tt +1 -1
  157. data/lib/rails/generators/rails/plugin/templates/test/%namespaced_name%_test.rb.tt +4 -4
  158. data/lib/rails/generators/rails/plugin/templates/test/integration/navigation_test.rb.tt +1 -1
  159. data/lib/rails/generators/rails/plugin/templates/test/test_helper.rb.tt +0 -4
  160. data/lib/rails/generators/rails/resource/USAGE +4 -4
  161. data/lib/rails/generators/rails/resource_route/resource_route_generator.rb +2 -27
  162. data/lib/rails/generators/rails/scaffold/USAGE +5 -5
  163. data/lib/rails/generators/rails/scaffold_controller/USAGE +2 -2
  164. data/lib/rails/generators/rails/scaffold_controller/scaffold_controller_generator.rb +19 -0
  165. data/lib/rails/generators/rails/scaffold_controller/templates/api_controller.rb.tt +2 -2
  166. data/lib/rails/generators/rails/scaffold_controller/templates/controller.rb.tt +2 -2
  167. data/lib/rails/generators/rails/system_test/USAGE +2 -2
  168. data/lib/rails/generators/rails/task/USAGE +3 -3
  169. data/lib/rails/generators/resource_helpers.rb +1 -6
  170. data/lib/rails/generators/test_case.rb +1 -1
  171. data/lib/rails/generators/test_unit/controller/controller_generator.rb +2 -0
  172. data/lib/rails/generators/test_unit/controller/templates/functional_test.rb.tt +3 -3
  173. data/lib/rails/generators/test_unit/generator/generator_generator.rb +0 -1
  174. data/lib/rails/generators/test_unit/generator/templates/generator_test.rb.tt +2 -2
  175. data/lib/rails/generators/test_unit/integration/integration_generator.rb +5 -0
  176. data/lib/rails/generators/test_unit/integration/templates/integration_test.rb.tt +1 -1
  177. data/lib/rails/generators/test_unit/job/job_generator.rb +5 -0
  178. data/lib/rails/generators/test_unit/job/templates/unit_test.rb.tt +1 -1
  179. data/lib/rails/generators/test_unit/mailer/mailer_generator.rb +1 -1
  180. data/lib/rails/generators/test_unit/mailer/templates/functional_test.rb.tt +1 -1
  181. data/lib/rails/generators/test_unit/model/templates/fixtures.yml.tt +3 -3
  182. data/lib/rails/generators/test_unit/model/templates/unit_test.rb.tt +1 -1
  183. data/lib/rails/generators/test_unit/plugin/templates/%file_name%_test.rb.tt +1 -1
  184. data/lib/rails/generators/test_unit/plugin/templates/test_helper.rb +2 -2
  185. data/lib/rails/generators/test_unit/scaffold/scaffold_generator.rb +12 -3
  186. data/lib/rails/generators/test_unit/scaffold/templates/api_functional_test.rb.tt +1 -1
  187. data/lib/rails/generators/test_unit/scaffold/templates/functional_test.rb.tt +1 -1
  188. data/lib/rails/generators/test_unit/scaffold/templates/system_test.rb.tt +10 -2
  189. data/lib/rails/generators/test_unit/system/system_generator.rb +5 -0
  190. data/lib/rails/generators/testing/assertions.rb +2 -2
  191. data/lib/rails/generators/testing/behaviour.rb +4 -2
  192. data/lib/rails/generators.rb +38 -24
  193. data/lib/rails/info.rb +4 -4
  194. data/lib/rails/info_controller.rb +2 -3
  195. data/lib/rails/mailers_controller.rb +10 -4
  196. data/lib/rails/paths.rb +26 -10
  197. data/lib/rails/rack/logger.rb +5 -6
  198. data/lib/rails/railtie/configurable.rb +0 -1
  199. data/lib/rails/railtie/configuration.rb +3 -3
  200. data/lib/rails/railtie.rb +33 -13
  201. data/lib/rails/ruby_version_check.rb +3 -3
  202. data/lib/rails/secrets.rb +0 -1
  203. data/lib/rails/source_annotation_extractor.rb +124 -117
  204. data/lib/rails/tasks/engine.rake +1 -4
  205. data/lib/rails/tasks/framework.rake +13 -3
  206. data/lib/rails/tasks/log.rake +0 -1
  207. data/lib/rails/tasks/misc.rake +1 -1
  208. data/lib/rails/tasks/statistics.rake +5 -1
  209. data/lib/rails/tasks/yarn.rake +14 -1
  210. data/lib/rails/tasks/zeitwerk.rake +69 -0
  211. data/lib/rails/tasks.rb +1 -4
  212. data/lib/rails/templates/rails/mailers/email.html.erb +11 -7
  213. data/lib/rails/templates/rails/welcome/index.html.erb +3 -3
  214. data/lib/rails/test_help.rb +11 -9
  215. data/lib/rails/test_unit/reporter.rb +3 -2
  216. data/lib/rails/test_unit/runner.rb +25 -8
  217. data/lib/rails/test_unit/testing.rake +7 -1
  218. data/lib/rails.rb +10 -8
  219. metadata +45 -39
  220. data/lib/rails/generators/js/assets/assets_generator.rb +0 -15
  221. data/lib/rails/generators/js/assets/templates/javascript.js +0 -2
  222. data/lib/rails/generators/rails/app/templates/app/assets/javascripts/application.js.tt +0 -22
  223. data/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.js.tt +0 -13
  224. data/lib/rails/generators/rails/app/templates/bin/bundle.tt +0 -2
  225. data/lib/rails/generators/rails/app/templates/bin/update.tt +0 -34
  226. data/lib/rails/generators/rails/app/templates/config/databases/frontbase.yml.tt +0 -50
  227. data/lib/rails/generators/rails/app/templates/config/databases/ibm_db.yml.tt +0 -86
  228. data/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_5_2.rb.tt +0 -35
  229. data/lib/rails/generators/rails/assets/templates/javascript.js +0 -2
  230. data/lib/rails/generators/rails/plugin/templates/rails/application.rb.tt +0 -23
  231. data/lib/rails/tasks/annotations.rake +0 -22
  232. data/lib/rails/tasks/dev.rake +0 -10
  233. data/lib/rails/tasks/initializers.rake +0 -8
  234. data/lib/rails/tasks/routes.rake +0 -31
@@ -20,27 +20,29 @@ if defined?(ActiveRecord::Base)
20
20
  exit 1
21
21
  end
22
22
 
23
- module ActiveSupport
24
- class TestCase
25
- include ActiveRecord::TestFixtures
26
- self.fixture_path = "#{Rails.root}/test/fixtures/"
27
- self.file_fixture_path = fixture_path + "files"
28
- end
23
+ ActiveSupport.on_load(:active_support_test_case) do
24
+ include ActiveRecord::TestDatabases
25
+ include ActiveRecord::TestFixtures
26
+
27
+ self.fixture_path = "#{Rails.root}/test/fixtures/"
28
+ self.file_fixture_path = fixture_path + "files"
29
29
  end
30
30
 
31
- ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
31
+ ActiveSupport.on_load(:action_dispatch_integration_test) do
32
+ self.fixture_path = ActiveSupport::TestCase.fixture_path
33
+ end
32
34
  end
33
35
 
34
36
  # :enddoc:
35
37
 
36
- class ActionController::TestCase
38
+ ActiveSupport.on_load(:action_controller_test_case) do
37
39
  def before_setup # :nodoc:
38
40
  @routes = Rails.application.routes
39
41
  super
40
42
  end
41
43
  end
42
44
 
43
- class ActionDispatch::IntegrationTest
45
+ ActiveSupport.on_load(:action_dispatch_integration_test) do
44
46
  def before_setup # :nodoc:
45
47
  @routes = Rails.application.routes
46
48
  super
@@ -5,7 +5,8 @@ require "minitest"
5
5
 
6
6
  module Rails
7
7
  class TestUnitReporter < Minitest::StatisticsReporter
8
- class_attribute :executable, default: "bin/rails test"
8
+ class_attribute :app_root
9
+ class_attribute :executable, default: "rails test"
9
10
 
10
11
  def record(result)
11
12
  super
@@ -79,7 +80,7 @@ module Rails
79
80
  end
80
81
 
81
82
  def app_root
82
- @app_root ||=
83
+ @app_root ||= self.class.app_root ||
83
84
  if defined?(ENGINE_ROOT)
84
85
  ENGINE_ROOT
85
86
  elsif Rails.respond_to?(:root)
@@ -12,8 +12,8 @@ module Rails
12
12
 
13
13
  class << self
14
14
  def attach_before_load_options(opts)
15
- opts.on("--warnings", "-w", "Run with Ruby warnings enabled") {}
16
- opts.on("-e", "--environment ENV", "Run tests in the ENV environment") {}
15
+ opts.on("--warnings", "-w", "Run with Ruby warnings enabled") { }
16
+ opts.on("-e", "--environment ENV", "Run tests in the ENV environment") { }
17
17
  end
18
18
 
19
19
  def parse_options(argv)
@@ -44,8 +44,8 @@ module Rails
44
44
  def load_tests(argv)
45
45
  patterns = extract_filters(argv)
46
46
 
47
- tests = Rake::FileList[patterns.any? ? patterns : "test/**/*_test.rb"]
48
- tests.exclude("test/system/**/*") if patterns.empty?
47
+ tests = Rake::FileList[patterns.any? ? patterns : default_test_glob]
48
+ tests.exclude(default_test_exclude_glob) if patterns.empty?
49
49
 
50
50
  tests.to_a.each { |path| require File.expand_path(path) }
51
51
  end
@@ -61,9 +61,10 @@ module Rails
61
61
  private
62
62
  def extract_filters(argv)
63
63
  # Extract absolute and relative paths but skip -n /.*/ regexp filters.
64
- argv.select { |arg| arg =~ %r%^/?\w+/% && !arg.end_with?("/") }.map do |path|
64
+ argv.select { |arg| path_argument?(arg) && !regexp_filter?(arg) }.map do |path|
65
+ path = path.tr("\\", "/")
65
66
  case
66
- when path =~ /(:\d+)+$/
67
+ when /(:\d+)+$/.match?(path)
67
68
  file, *lines = path.split(":")
68
69
  filters << [ file, lines ]
69
70
  file
@@ -75,6 +76,22 @@ module Rails
75
76
  end
76
77
  end
77
78
  end
79
+
80
+ def default_test_glob
81
+ ENV["DEFAULT_TEST"] || "test/**/*_test.rb"
82
+ end
83
+
84
+ def default_test_exclude_glob
85
+ ENV["DEFAULT_TEST_EXCLUDE"] || "test/{system,dummy}/**/*_test.rb"
86
+ end
87
+
88
+ def regexp_filter?(arg)
89
+ arg.start_with?("/") && arg.end_with?("/")
90
+ end
91
+
92
+ def path_argument?(arg)
93
+ %r"^[/\\]?\w+[/\\]".match?(arg)
94
+ end
78
95
  end
79
96
  end
80
97
 
@@ -87,7 +104,7 @@ module Rails
87
104
  @filters = [ @named_filter, *derive_line_filters(patterns) ].compact
88
105
  end
89
106
 
90
- # Minitest uses === to find matching filters.
107
+ # minitest uses === to find matching filters.
91
108
  def ===(method)
92
109
  @filters.any? { |filter| filter === method }
93
110
  end
@@ -96,7 +113,7 @@ module Rails
96
113
  def derive_named_filter(filter)
97
114
  if filter.respond_to?(:named_filter)
98
115
  filter.named_filter
99
- elsif filter =~ %r%/(.*)/% # Regexp filtering copied from Minitest.
116
+ elsif filter =~ %r%/(.*)/% # Regexp filtering copied from minitest.
100
117
  Regexp.new $1
101
118
  elsif filter.is_a?(String)
102
119
  filter
@@ -28,13 +28,19 @@ namespace :test do
28
28
  desc "Run tests quickly, but also reset db"
29
29
  task db: %w[db:test:prepare test]
30
30
 
31
- ["models", "helpers", "controllers", "mailers", "integration", "jobs"].each do |name|
31
+ ["models", "helpers", "channels", "controllers", "mailers", "integration", "jobs", "mailboxes"].each do |name|
32
32
  task name => "test:prepare" do
33
33
  $: << "test"
34
34
  Rails::TestUnit::Runner.rake_run(["test/#{name}"])
35
35
  end
36
36
  end
37
37
 
38
+ desc "Runs all tests, including system tests"
39
+ task all: "test:prepare" do
40
+ $: << "test"
41
+ Rails::TestUnit::Runner.rake_run(["test/**/*_test.rb"])
42
+ end
43
+
38
44
  task generators: "test:prepare" do
39
45
  $: << "test"
40
46
  Rails::TestUnit::Runner.rake_run(["test/lib/generators"])
data/lib/rails.rb CHANGED
@@ -5,7 +5,6 @@ require "rails/ruby_version_check"
5
5
  require "pathname"
6
6
 
7
7
  require "active_support"
8
- require "active_support/dependencies/autoload"
9
8
  require "active_support/core_ext/kernel/reporting"
10
9
  require "active_support/core_ext/module/delegation"
11
10
  require "active_support/core_ext/array/extract_options"
@@ -13,6 +12,7 @@ require "active_support/core_ext/object/blank"
13
12
 
14
13
  require "rails/application"
15
14
  require "rails/version"
15
+ require "rails/autoloaders"
16
16
 
17
17
  require "active_support/railtie"
18
18
  require "action_dispatch/railtie"
@@ -70,14 +70,14 @@ module Rails
70
70
  # Rails.env.development? # => true
71
71
  # Rails.env.production? # => false
72
72
  def env
73
- @_env ||= ActiveSupport::StringInquirer.new(ENV["RAILS_ENV"].presence || ENV["RACK_ENV"].presence || "development")
73
+ @_env ||= ActiveSupport::EnvironmentInquirer.new(ENV["RAILS_ENV"].presence || ENV["RACK_ENV"].presence || "development")
74
74
  end
75
75
 
76
76
  # Sets the Rails environment.
77
77
  #
78
78
  # Rails.env = "staging" # => "staging"
79
79
  def env=(environment)
80
- @_env = ActiveSupport::StringInquirer.new(environment)
80
+ @_env = ActiveSupport::EnvironmentInquirer.new(environment)
81
81
  end
82
82
 
83
83
  # Returns all Rails groups for loading based on:
@@ -86,11 +86,9 @@ module Rails
86
86
  # * The environment variable RAILS_GROUPS;
87
87
  # * The optional envs given as argument and the hash with group dependencies;
88
88
  #
89
- # groups assets: [:development, :test]
90
- #
91
- # # Returns
92
- # # => [:default, "development", :assets] for Rails.env == "development"
93
- # # => [:default, "production"] for Rails.env == "production"
89
+ # Rails.groups assets: [:development, :test]
90
+ # # => [:default, "development", :assets] for Rails.env == "development"
91
+ # # => [:default, "production"] for Rails.env == "production"
94
92
  def groups(*groups)
95
93
  hash = groups.extract_options!
96
94
  env = Rails.env
@@ -110,5 +108,9 @@ module Rails
110
108
  def public_path
111
109
  application && Pathname.new(application.paths["public"].first)
112
110
  end
111
+
112
+ def autoloaders
113
+ Autoloaders
114
+ end
113
115
  end
114
116
  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: 5.2.0
4
+ version: 6.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-04-09 00:00:00.000000000 Z
11
+ date: 2020-12-09 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: 5.2.0
19
+ version: 6.1.0
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: 5.2.0
26
+ version: 6.1.0
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: 5.2.0
33
+ version: 6.1.0
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: 5.2.0
40
+ version: 6.1.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -56,22 +56,16 @@ dependencies:
56
56
  name: thor
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: 0.18.1
62
- - - "<"
59
+ - - "~>"
63
60
  - !ruby/object:Gem::Version
64
- version: '2.0'
61
+ version: '1.0'
65
62
  type: :runtime
66
63
  prerelease: false
67
64
  version_requirements: !ruby/object:Gem::Requirement
68
65
  requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- version: 0.18.1
72
- - - "<"
66
+ - - "~>"
73
67
  - !ruby/object:Gem::Version
74
- version: '2.0'
68
+ version: '1.0'
75
69
  - !ruby/object:Gem::Dependency
76
70
  name: method_source
77
71
  requirement: !ruby/object:Gem::Requirement
@@ -92,14 +86,14 @@ dependencies:
92
86
  requirements:
93
87
  - - '='
94
88
  - !ruby/object:Gem::Version
95
- version: 5.2.0
89
+ version: 6.1.0
96
90
  type: :development
97
91
  prerelease: false
98
92
  version_requirements: !ruby/object:Gem::Requirement
99
93
  requirements:
100
94
  - - '='
101
95
  - !ruby/object:Gem::Version
102
- version: 5.2.0
96
+ version: 6.1.0
103
97
  description: 'Rails internals: application bootup, plugins, generators, and rake tasks.'
104
98
  email: david@loudthinking.com
105
99
  executables:
@@ -123,9 +117,11 @@ files:
123
117
  - lib/rails/application/bootstrap.rb
124
118
  - lib/rails/application/configuration.rb
125
119
  - lib/rails/application/default_middleware_stack.rb
120
+ - lib/rails/application/dummy_erb_compiler.rb
126
121
  - lib/rails/application/finisher.rb
127
122
  - lib/rails/application/routes_reloader.rb
128
123
  - lib/rails/application_controller.rb
124
+ - lib/rails/autoloaders.rb
129
125
  - lib/rails/backtrace_cleaner.rb
130
126
  - lib/rails/cli.rb
131
127
  - lib/rails/code_statistics.rb
@@ -136,20 +132,28 @@ files:
136
132
  - lib/rails/command/behavior.rb
137
133
  - lib/rails/command/environment_argument.rb
138
134
  - lib/rails/command/helpers/editor.rb
135
+ - lib/rails/command/spellchecker.rb
139
136
  - lib/rails/commands.rb
140
137
  - lib/rails/commands/application/application_command.rb
141
138
  - lib/rails/commands/console/console_command.rb
142
139
  - lib/rails/commands/credentials/USAGE
143
140
  - lib/rails/commands/credentials/credentials_command.rb
141
+ - lib/rails/commands/credentials/credentials_command/diffing.rb
142
+ - lib/rails/commands/db/system/change/change_command.rb
144
143
  - lib/rails/commands/dbconsole/dbconsole_command.rb
145
144
  - lib/rails/commands/destroy/destroy_command.rb
145
+ - lib/rails/commands/dev/dev_command.rb
146
+ - lib/rails/commands/encrypted/USAGE
146
147
  - lib/rails/commands/encrypted/encrypted_command.rb
147
148
  - lib/rails/commands/generate/generate_command.rb
148
149
  - lib/rails/commands/help/USAGE
149
150
  - lib/rails/commands/help/help_command.rb
151
+ - lib/rails/commands/initializers/initializers_command.rb
150
152
  - lib/rails/commands/new/new_command.rb
153
+ - lib/rails/commands/notes/notes_command.rb
151
154
  - lib/rails/commands/plugin/plugin_command.rb
152
155
  - lib/rails/commands/rake/rake_command.rb
156
+ - lib/rails/commands/routes/routes_command.rb
153
157
  - lib/rails/commands/runner/USAGE
154
158
  - lib/rails/commands/runner/runner_command.rb
155
159
  - lib/rails/commands/secrets/USAGE
@@ -172,10 +176,12 @@ files:
172
176
  - lib/rails/generators/actions/create_migration.rb
173
177
  - lib/rails/generators/active_model.rb
174
178
  - lib/rails/generators/app_base.rb
179
+ - lib/rails/generators/app_name.rb
175
180
  - lib/rails/generators/base.rb
176
181
  - lib/rails/generators/css/assets/assets_generator.rb
177
182
  - lib/rails/generators/css/assets/templates/stylesheet.css
178
183
  - lib/rails/generators/css/scaffold/scaffold_generator.rb
184
+ - lib/rails/generators/database.rb
179
185
  - lib/rails/generators/erb.rb
180
186
  - lib/rails/generators/erb/controller/controller_generator.rb
181
187
  - lib/rails/generators/erb/controller/templates/view.html.erb.tt
@@ -191,8 +197,6 @@ files:
191
197
  - lib/rails/generators/erb/scaffold/templates/new.html.erb.tt
192
198
  - lib/rails/generators/erb/scaffold/templates/show.html.erb.tt
193
199
  - lib/rails/generators/generated_attribute.rb
194
- - lib/rails/generators/js/assets/assets_generator.rb
195
- - lib/rails/generators/js/assets/templates/javascript.js
196
200
  - lib/rails/generators/migration.rb
197
201
  - lib/rails/generators/model_helpers.rb
198
202
  - lib/rails/generators/named_base.rb
@@ -202,31 +206,29 @@ files:
202
206
  - lib/rails/generators/rails/app/templates/README.md.tt
203
207
  - lib/rails/generators/rails/app/templates/Rakefile.tt
204
208
  - lib/rails/generators/rails/app/templates/app/assets/config/manifest.js.tt
205
- - lib/rails/generators/rails/app/templates/app/assets/javascripts/application.js.tt
206
- - lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.js.tt
207
209
  - lib/rails/generators/rails/app/templates/app/assets/stylesheets/application.css.tt
208
210
  - lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb.tt
209
211
  - lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb.tt
210
212
  - lib/rails/generators/rails/app/templates/app/controllers/application_controller.rb.tt
211
213
  - lib/rails/generators/rails/app/templates/app/helpers/application_helper.rb.tt
214
+ - lib/rails/generators/rails/app/templates/app/javascript/channels/consumer.js
215
+ - lib/rails/generators/rails/app/templates/app/javascript/channels/index.js
216
+ - lib/rails/generators/rails/app/templates/app/javascript/packs/application.js.tt
212
217
  - lib/rails/generators/rails/app/templates/app/jobs/application_job.rb.tt
213
218
  - lib/rails/generators/rails/app/templates/app/mailers/application_mailer.rb.tt
214
219
  - lib/rails/generators/rails/app/templates/app/models/application_record.rb.tt
215
220
  - lib/rails/generators/rails/app/templates/app/views/layouts/application.html.erb.tt
216
221
  - lib/rails/generators/rails/app/templates/app/views/layouts/mailer.html.erb.tt
217
222
  - lib/rails/generators/rails/app/templates/app/views/layouts/mailer.text.erb.tt
218
- - lib/rails/generators/rails/app/templates/bin/bundle.tt
219
223
  - lib/rails/generators/rails/app/templates/bin/rails.tt
220
224
  - lib/rails/generators/rails/app/templates/bin/rake.tt
221
225
  - lib/rails/generators/rails/app/templates/bin/setup.tt
222
- - lib/rails/generators/rails/app/templates/bin/update.tt
226
+ - lib/rails/generators/rails/app/templates/bin/spring.tt
223
227
  - lib/rails/generators/rails/app/templates/bin/yarn.tt
224
228
  - lib/rails/generators/rails/app/templates/config.ru.tt
225
229
  - lib/rails/generators/rails/app/templates/config/application.rb.tt
226
230
  - lib/rails/generators/rails/app/templates/config/boot.rb.tt
227
231
  - lib/rails/generators/rails/app/templates/config/cable.yml.tt
228
- - lib/rails/generators/rails/app/templates/config/databases/frontbase.yml.tt
229
- - lib/rails/generators/rails/app/templates/config/databases/ibm_db.yml.tt
230
232
  - lib/rails/generators/rails/app/templates/config/databases/jdbc.yml.tt
231
233
  - lib/rails/generators/rails/app/templates/config/databases/jdbcmysql.yml.tt
232
234
  - lib/rails/generators/rails/app/templates/config/databases/jdbcpostgresql.yml.tt
@@ -249,7 +251,8 @@ files:
249
251
  - lib/rails/generators/rails/app/templates/config/initializers/filter_parameter_logging.rb.tt
250
252
  - lib/rails/generators/rails/app/templates/config/initializers/inflections.rb.tt
251
253
  - lib/rails/generators/rails/app/templates/config/initializers/mime_types.rb.tt
252
- - lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_5_2.rb.tt
254
+ - lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults_6_1.rb.tt
255
+ - lib/rails/generators/rails/app/templates/config/initializers/permissions_policy.rb.tt
253
256
  - lib/rails/generators/rails/app/templates/config/initializers/wrap_parameters.rb.tt
254
257
  - lib/rails/generators/rails/app/templates/config/locales/en.yml
255
258
  - lib/rails/generators/rails/app/templates/config/puma.rb.tt
@@ -257,6 +260,7 @@ files:
257
260
  - lib/rails/generators/rails/app/templates/config/spring.rb.tt
258
261
  - lib/rails/generators/rails/app/templates/config/storage.yml.tt
259
262
  - lib/rails/generators/rails/app/templates/db/seeds.rb.tt
263
+ - lib/rails/generators/rails/app/templates/gitattributes.tt
260
264
  - lib/rails/generators/rails/app/templates/gitignore.tt
261
265
  - lib/rails/generators/rails/app/templates/package.json.tt
262
266
  - lib/rails/generators/rails/app/templates/public/404.html
@@ -268,16 +272,20 @@ files:
268
272
  - lib/rails/generators/rails/app/templates/public/robots.txt
269
273
  - lib/rails/generators/rails/app/templates/ruby-version.tt
270
274
  - lib/rails/generators/rails/app/templates/test/application_system_test_case.rb.tt
275
+ - lib/rails/generators/rails/app/templates/test/channels/application_cable/connection_test.rb.tt
271
276
  - lib/rails/generators/rails/app/templates/test/test_helper.rb.tt
272
277
  - lib/rails/generators/rails/application_record/application_record_generator.rb
273
278
  - lib/rails/generators/rails/assets/USAGE
274
279
  - lib/rails/generators/rails/assets/assets_generator.rb
275
- - lib/rails/generators/rails/assets/templates/javascript.js
276
280
  - lib/rails/generators/rails/assets/templates/stylesheet.css
281
+ - lib/rails/generators/rails/benchmark/USAGE
282
+ - lib/rails/generators/rails/benchmark/benchmark_generator.rb
283
+ - lib/rails/generators/rails/benchmark/templates/benchmark.rb.tt
277
284
  - lib/rails/generators/rails/controller/USAGE
278
285
  - lib/rails/generators/rails/controller/controller_generator.rb
279
286
  - lib/rails/generators/rails/controller/templates/controller.rb.tt
280
287
  - lib/rails/generators/rails/credentials/credentials_generator.rb
288
+ - lib/rails/generators/rails/db/system/change/change_generator.rb
281
289
  - lib/rails/generators/rails/encrypted_file/encrypted_file_generator.rb
282
290
  - lib/rails/generators/rails/encryption_key_file/encryption_key_file_generator.rb
283
291
  - lib/rails/generators/rails/generator/USAGE
@@ -317,7 +325,6 @@ files:
317
325
  - lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/railtie.rb.tt
318
326
  - lib/rails/generators/rails/plugin/templates/lib/%namespaced_name%/version.rb.tt
319
327
  - lib/rails/generators/rails/plugin/templates/lib/tasks/%namespaced_name%_tasks.rake.tt
320
- - lib/rails/generators/rails/plugin/templates/rails/application.rb.tt
321
328
  - lib/rails/generators/rails/plugin/templates/rails/boot.rb.tt
322
329
  - lib/rails/generators/rails/plugin/templates/rails/dummy_manifest.js.tt
323
330
  - lib/rails/generators/rails/plugin/templates/rails/engine_manifest.js.tt
@@ -389,19 +396,16 @@ files:
389
396
  - lib/rails/secrets.rb
390
397
  - lib/rails/source_annotation_extractor.rb
391
398
  - lib/rails/tasks.rb
392
- - lib/rails/tasks/annotations.rake
393
- - lib/rails/tasks/dev.rake
394
399
  - lib/rails/tasks/engine.rake
395
400
  - lib/rails/tasks/framework.rake
396
- - lib/rails/tasks/initializers.rake
397
401
  - lib/rails/tasks/log.rake
398
402
  - lib/rails/tasks/middleware.rake
399
403
  - lib/rails/tasks/misc.rake
400
404
  - lib/rails/tasks/restart.rake
401
- - lib/rails/tasks/routes.rake
402
405
  - lib/rails/tasks/statistics.rake
403
406
  - lib/rails/tasks/tmp.rake
404
407
  - lib/rails/tasks/yarn.rake
408
+ - lib/rails/tasks/zeitwerk.rake
405
409
  - lib/rails/templates/layouts/application.html.erb
406
410
  - lib/rails/templates/rails/info/properties.html.erb
407
411
  - lib/rails/templates/rails/info/routes.html.erb
@@ -417,12 +421,15 @@ files:
417
421
  - lib/rails/test_unit/testing.rake
418
422
  - lib/rails/version.rb
419
423
  - lib/rails/welcome_controller.rb
420
- homepage: http://rubyonrails.org
424
+ homepage: https://rubyonrails.org
421
425
  licenses:
422
426
  - MIT
423
427
  metadata:
424
- source_code_uri: https://github.com/rails/rails/tree/v5.2.0/railties
425
- changelog_uri: https://github.com/rails/rails/blob/v5.2.0/railties/CHANGELOG.md
428
+ bug_tracker_uri: https://github.com/rails/rails/issues
429
+ changelog_uri: https://github.com/rails/rails/blob/v6.1.0/railties/CHANGELOG.md
430
+ documentation_uri: https://api.rubyonrails.org/v6.1.0/
431
+ mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
432
+ source_code_uri: https://github.com/rails/rails/tree/v6.1.0/railties
426
433
  post_install_message:
427
434
  rdoc_options:
428
435
  - "--exclude"
@@ -433,15 +440,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
433
440
  requirements:
434
441
  - - ">="
435
442
  - !ruby/object:Gem::Version
436
- version: 2.2.2
443
+ version: 2.5.0
437
444
  required_rubygems_version: !ruby/object:Gem::Requirement
438
445
  requirements:
439
446
  - - ">="
440
447
  - !ruby/object:Gem::Version
441
448
  version: '0'
442
449
  requirements: []
443
- rubyforge_project:
444
- rubygems_version: 2.7.6
450
+ rubygems_version: 3.1.4
445
451
  signing_key:
446
452
  specification_version: 4
447
453
  summary: Tools for creating, working with, and running Rails applications.
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "rails/generators/named_base"
4
-
5
- module Js # :nodoc:
6
- module Generators # :nodoc:
7
- class AssetsGenerator < Rails::Generators::NamedBase # :nodoc:
8
- source_root File.expand_path("templates", __dir__)
9
-
10
- def copy_javascript
11
- copy_file "javascript.js", File.join("app/assets/javascripts", class_path, "#{file_name}.js")
12
- end
13
- end
14
- end
15
- end
@@ -1,2 +0,0 @@
1
- // Place all the behaviors and hooks related to the matching controller here.
2
- // All this logic will automatically be available in application.js.
@@ -1,22 +0,0 @@
1
- // This is a manifest file that'll be compiled into application.js, which will include all the files
2
- // listed below.
3
- //
4
- // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, or any plugin's
5
- // vendor/assets/javascripts directory can be referenced here using a relative path.
6
- //
7
- // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
- // compiled file. JavaScript code in this file should be added after the last require_* statement.
9
- //
10
- // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11
- // about supported directives.
12
- //
13
- <% unless options[:skip_javascript] -%>
14
- //= require rails-ujs
15
- <% unless skip_active_storage? -%>
16
- //= require activestorage
17
- <% end -%>
18
- <% unless options[:skip_turbolinks] -%>
19
- //= require turbolinks
20
- <% end -%>
21
- <% end -%>
22
- //= require_tree .
@@ -1,13 +0,0 @@
1
- // Action Cable provides the framework to deal with WebSockets in Rails.
2
- // You can generate new channels where WebSocket features live using the `rails generate channel` command.
3
- //
4
- //= require action_cable
5
- //= require_self
6
- //= require_tree ./channels
7
-
8
- (function() {
9
- this.App || (this.App = {});
10
-
11
- App.cable = ActionCable.createConsumer();
12
-
13
- }).call(this);
@@ -1,2 +0,0 @@
1
- ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)
2
- load Gem.bin_path('bundler', 'bundle')
@@ -1,34 +0,0 @@
1
- require 'fileutils'
2
- include FileUtils
3
-
4
- # path to your application root.
5
- APP_ROOT = File.expand_path('..', __dir__)
6
-
7
- def system!(*args)
8
- system(*args) || abort("\n== Command #{args} failed ==")
9
- end
10
-
11
- chdir APP_ROOT do
12
- # This script is a way to update your development environment automatically.
13
- # Add necessary update steps to this file.
14
-
15
- puts '== Installing dependencies =='
16
- system! 'gem install bundler --conservative'
17
- system('bundle check') || system!('bundle install')
18
- <% unless options.skip_yarn? -%>
19
-
20
- # Install JavaScript dependencies if using Yarn
21
- # system('bin/yarn')
22
- <% end -%>
23
- <% unless options.skip_active_record? -%>
24
-
25
- puts "\n== Updating database =="
26
- system! 'bin/rails db:migrate'
27
- <% end -%>
28
-
29
- puts "\n== Removing old logs and tempfiles =="
30
- system! 'bin/rails log:clear tmp:clear'
31
-
32
- puts "\n== Restarting application server =="
33
- system! 'bin/rails restart'
34
- end
@@ -1,50 +0,0 @@
1
- # FrontBase versions 4.x
2
- #
3
- # Get the bindings:
4
- # gem install ruby-frontbase
5
- #
6
- # Configure Using Gemfile
7
- # gem 'ruby-frontbase'
8
- #
9
- default: &default
10
- adapter: frontbase
11
- pool: <%%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
12
- host: localhost
13
- username: <%= app_name %>
14
- password: ''
15
-
16
- development:
17
- <<: *default
18
- database: <%= app_name %>_development
19
-
20
- # Warning: The database defined as "test" will be erased and
21
- # re-generated from your development database when you run "rake".
22
- # Do not set this db to the same as development or production.
23
- test:
24
- <<: *default
25
- database: <%= app_name %>_test
26
-
27
- # As with config/secrets.yml, you never want to store sensitive information,
28
- # like your database password, in your source code. If your source code is
29
- # ever seen by anyone, they now have access to your database.
30
- #
31
- # Instead, provide the password as a unix environment variable when you boot
32
- # the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database
33
- # for a full rundown on how to provide these environment variables in a
34
- # production deployment.
35
- #
36
- # On Heroku and other platform providers, you may have a full connection URL
37
- # available as an environment variable. For example:
38
- #
39
- # DATABASE_URL="frontbase://myuser:mypass@localhost/somedatabase"
40
- #
41
- # You can use this database configuration with:
42
- #
43
- # production:
44
- # url: <%%= ENV['DATABASE_URL'] %>
45
- #
46
- production:
47
- <<: *default
48
- database: <%= app_name %>_production
49
- username: <%= app_name %>
50
- password: <%%= ENV['<%= app_name.upcase %>_DATABASE_PASSWORD'] %>