railties 3.0.0.beta3 → 3.0.0.beta4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. data/CHANGELOG +5 -0
  2. data/README +118 -123
  3. data/guides/source/3_0_release_notes.textile +13 -11
  4. data/guides/source/action_controller_overview.textile +2 -2
  5. data/guides/source/action_mailer_basics.textile +70 -26
  6. data/guides/source/action_view_overview.textile +1 -1
  7. data/guides/source/active_record_basics.textile +9 -1
  8. data/guides/source/active_record_querying.textile +2 -2
  9. data/guides/source/active_support_core_extensions.textile +377 -9
  10. data/guides/source/activerecord_validations_callbacks.textile +98 -55
  11. data/guides/source/association_basics.textile +1 -1
  12. data/guides/source/caching_with_rails.textile +1 -1
  13. data/guides/source/command_line.textile +23 -23
  14. data/guides/source/configuring.textile +1 -3
  15. data/guides/source/contribute.textile +27 -28
  16. data/guides/source/credits.html.erb +4 -4
  17. data/guides/source/debugging_rails_applications.textile +2 -2
  18. data/guides/source/form_helpers.textile +7 -6
  19. data/guides/source/generators.textile +19 -29
  20. data/guides/source/getting_started.textile +106 -49
  21. data/guides/source/i18n.textile +27 -27
  22. data/guides/source/index.html.erb +18 -8
  23. data/guides/source/initialization.textile +140 -514
  24. data/guides/source/layout.html.erb +6 -4
  25. data/guides/source/layouts_and_rendering.textile +5 -5
  26. data/guides/source/migrations.textile +7 -3
  27. data/guides/source/nested_model_forms.textile +2 -2
  28. data/guides/source/performance_testing.textile +11 -12
  29. data/guides/source/plugins.textile +30 -30
  30. data/guides/source/rails_application_templates.textile +3 -3
  31. data/guides/source/rails_on_rack.textile +3 -66
  32. data/guides/source/routing.textile +10 -4
  33. data/guides/source/security.textile +1 -1
  34. data/guides/source/testing.textile +55 -52
  35. data/guides/w3c_validator.rb +67 -0
  36. data/lib/rails.rb +1 -0
  37. data/lib/rails/application.rb +49 -13
  38. data/lib/rails/application/bootstrap.rb +7 -6
  39. data/lib/rails/application/configuration.rb +24 -47
  40. data/lib/rails/application/finisher.rb +8 -3
  41. data/lib/rails/backtrace_cleaner.rb +11 -12
  42. data/lib/rails/commands.rb +54 -54
  43. data/lib/rails/commands/application.rb +7 -2
  44. data/lib/rails/commands/{performance/benchmarker.rb → benchmarker.rb} +0 -0
  45. data/lib/rails/commands/dbconsole.rb +4 -3
  46. data/lib/rails/commands/destroy.rb +1 -0
  47. data/lib/rails/commands/generate.rb +1 -0
  48. data/lib/rails/commands/{performance/profiler.rb → profiler.rb} +0 -0
  49. data/lib/rails/commands/runner.rb +4 -2
  50. data/lib/rails/configuration.rb +36 -0
  51. data/lib/rails/engine.rb +24 -24
  52. data/lib/rails/engine/configuration.rb +0 -1
  53. data/lib/rails/generators.rb +48 -10
  54. data/lib/rails/generators/actions.rb +5 -3
  55. data/lib/rails/generators/base.rb +23 -17
  56. data/lib/rails/generators/erb/scaffold/templates/_form.html.erb +9 -8
  57. data/lib/rails/generators/erb/scaffold/templates/show.html.erb +1 -1
  58. data/lib/rails/generators/generated_attribute.rb +7 -6
  59. data/lib/rails/generators/rails/app/USAGE +2 -2
  60. data/lib/rails/generators/rails/app/app_generator.rb +242 -97
  61. data/lib/rails/generators/rails/app/templates/Gemfile +3 -0
  62. data/lib/rails/generators/rails/app/templates/README +167 -130
  63. data/lib/rails/generators/rails/app/templates/Rakefile +0 -3
  64. data/lib/rails/generators/rails/app/templates/config/boot.rb +9 -2
  65. data/lib/rails/generators/rails/app/templates/config/databases/postgresql.yml +5 -5
  66. data/lib/rails/generators/rails/app/templates/config/environments/production.rb.tt +4 -0
  67. data/lib/rails/generators/rails/app/templates/script/rails +2 -5
  68. data/lib/rails/generators/rails/generator/templates/%file_name%_generator.rb.tt +1 -3
  69. data/lib/rails/generators/rails/stylesheets/templates/scaffold.css +5 -9
  70. data/lib/rails/generators/test_case.rb +12 -0
  71. data/lib/rails/generators/test_unit/integration/templates/integration_test.rb +1 -1
  72. data/lib/rails/generators/test_unit/performance/templates/performance_test.rb +1 -1
  73. data/lib/rails/info.rb +0 -33
  74. data/lib/rails/log_subscriber.rb +13 -6
  75. data/lib/rails/rack/logger.rb +4 -3
  76. data/lib/rails/railtie.rb +4 -0
  77. data/lib/rails/railtie/configuration.rb +21 -4
  78. data/lib/rails/tasks/documentation.rake +2 -0
  79. data/lib/rails/tasks/framework.rake +22 -0
  80. data/lib/rails/tasks/middleware.rake +1 -1
  81. data/lib/rails/tasks/routes.rake +5 -1
  82. data/lib/rails/test_help.rb +3 -1
  83. data/lib/rails/test_unit/testing.rake +3 -1
  84. data/lib/rails/version.rb +1 -1
  85. metadata +12 -19
  86. data/lib/rails/application/metal_loader.rb +0 -50
  87. data/lib/rails/dispatcher.rb +0 -24
  88. data/lib/rails/generators/rails/mailer/USAGE +0 -15
  89. data/lib/rails/generators/rails/mailer/mailer_generator.rb +0 -14
  90. data/lib/rails/generators/rails/mailer/templates/mailer.rb +0 -16
  91. data/lib/rails/generators/rails/metal/USAGE +0 -8
  92. data/lib/rails/generators/rails/metal/metal_generator.rb +0 -11
  93. data/lib/rails/generators/rails/metal/templates/metal.rb +0 -12
@@ -39,4 +39,8 @@
39
39
 
40
40
  # Enable threaded mode
41
41
  # config.threadsafe!
42
+
43
+ # Enable locale fallbacks for I18n (makes lookups for any locale fall back to
44
+ # the I18n.default_locale when a translation can not be found)
45
+ config.i18n.fallbacks = true
42
46
  end
@@ -1,8 +1,5 @@
1
1
  # This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
2
2
 
3
- ENV_PATH = File.expand_path('../../config/environment', __FILE__)
4
- BOOT_PATH = File.expand_path('../../config/boot', __FILE__)
5
- APP_PATH = File.expand_path('../../config/application', __FILE__)
6
-
7
- require BOOT_PATH
3
+ APP_PATH = File.expand_path('../../config/application', __FILE__)
4
+ require File.expand_path('../../config/boot', __FILE__)
8
5
  require 'rails/commands'
@@ -1,5 +1,3 @@
1
1
  class <%= class_name %>Generator < Rails::Generators::NamedBase
2
- def self.source_root
3
- @source_root ||= File.expand_path('../templates', __FILE__)
4
- end
2
+ source_root File.expand_path('../templates', __FILE__)
5
3
  end
@@ -20,21 +20,17 @@ div.field, div.actions {
20
20
  margin-bottom: 10px;
21
21
  }
22
22
 
23
- .notice {
23
+ #notice {
24
24
  color: green;
25
25
  }
26
26
 
27
- .alert {
28
- color: red;
29
- }
30
-
31
- .fieldWithErrors {
27
+ .field_with_errors {
32
28
  padding: 2px;
33
29
  background-color: red;
34
30
  display: table;
35
31
  }
36
32
 
37
- #errorExplanation {
33
+ #error_explanation {
38
34
  width: 450px;
39
35
  border: 2px solid red;
40
36
  padding: 7px;
@@ -43,7 +39,7 @@ div.field, div.actions {
43
39
  background-color: #f0f0f0;
44
40
  }
45
41
 
46
- #errorExplanation h2 {
42
+ #error_explanation h2 {
47
43
  text-align: left;
48
44
  font-weight: bold;
49
45
  padding: 5px 5px 5px 15px;
@@ -54,7 +50,7 @@ div.field, div.actions {
54
50
  color: #fff;
55
51
  }
56
52
 
57
- #errorExplanation ul li {
53
+ #error_explanation ul li {
58
54
  font-size: 12px;
59
55
  list-style: square;
60
56
  }
@@ -189,6 +189,18 @@ module Rails
189
189
  end
190
190
  alias :assert_method :assert_instance_method
191
191
 
192
+ # Asserts the given field name gets translated to an attribute type
193
+ # properly.
194
+ #
195
+ # assert_field_type :date, :date_select
196
+ #
197
+ def assert_field_type(name, attribute_type)
198
+ assert_equal(
199
+ Rails::Generators::GeneratedAttribute.new('test', name.to_s).field_type,
200
+ attribute_type
201
+ )
202
+ end
203
+
192
204
  # Runs the generator configured for this class. The first argument is an array like
193
205
  # command line arguments:
194
206
  #
@@ -1,6 +1,6 @@
1
1
  require 'test_helper'
2
2
 
3
- class <%= class_name %>Test < ActionController::IntegrationTest
3
+ class <%= class_name %>Test < ActionDispatch::IntegrationTest
4
4
  fixtures :all
5
5
 
6
6
  # Replace this with your real tests.
@@ -1,7 +1,7 @@
1
1
  require 'test_helper'
2
2
  require 'rails/performance_test_help'
3
3
 
4
- class <%= class_name %>Test < ActionController::PerformanceTest
4
+ class <%= class_name %>Test < ActionDispatch::PerformanceTest
5
5
  # Replace this with your real tests.
6
6
  def test_homepage
7
7
  get '/'
@@ -35,20 +35,6 @@ module Rails
35
35
  end
36
36
  end
37
37
 
38
- def edge_rails_revision(info = git_info)
39
- info[/commit ([a-z0-9-]+)/, 1] || freeze_edge_version
40
- end
41
-
42
- def freeze_edge_version
43
- if File.exist?(rails_vendor_root)
44
- begin
45
- Dir[File.join(rails_vendor_root, 'REVISION_*')].first.scan(/_(\d+)$/).first.first
46
- rescue
47
- Dir[File.join(rails_vendor_root, 'TAG_*')].first.scan(/_(.+)$/).first.first rescue 'unknown'
48
- end
49
- end
50
- end
51
-
52
38
  def to_s
53
39
  column_width = properties.names.map {|name| name.length}.max
54
40
  info = properties.map do |name, value|
@@ -75,20 +61,6 @@ module Rails
75
61
  table << '</table>'
76
62
  end
77
63
  end
78
-
79
- protected
80
- def rails_vendor_root
81
- @rails_vendor_root ||= "#{Rails.root}/vendor/rails"
82
- end
83
-
84
- def git_info
85
- env_lang, ENV['LC_ALL'] = ENV['LC_ALL'], 'C'
86
- Dir.chdir(rails_vendor_root) do
87
- silence_stderr { `git log -n 1` }
88
- end
89
- ensure
90
- ENV['LC_ALL'] = env_lang
91
- end
92
64
  end
93
65
 
94
66
  # The Ruby version and platform, e.g. "1.8.2 (powerpc-darwin8.2.0)".
@@ -120,11 +92,6 @@ module Rails
120
92
  Rails.configuration.middleware.active.map(&:inspect)
121
93
  end
122
94
 
123
- # The Rails Git revision, if it's checked out into vendor/rails.
124
- property 'Edge Rails revision' do
125
- edge_rails_revision
126
- end
127
-
128
95
  # The application's location on the filesystem.
129
96
  property 'Application root' do
130
97
  File.expand_path(Rails.root)
@@ -22,7 +22,7 @@ module Rails
22
22
  #
23
23
  # Rails::LogSubscriber.add :active_record, ActiveRecord::Railtie::LogSubscriber.new
24
24
  #
25
- # So whenever a "active_record.sql" notification arrive to Rails::LogSubscriber,
25
+ # So whenever a "sql.active_record" notification arrive to Rails::LogSubscriber,
26
26
  # it will properly dispatch the event (ActiveSupport::Notifications::Event) to
27
27
  # the sql method.
28
28
  #
@@ -52,9 +52,10 @@ module Rails
52
52
 
53
53
  def self.add(namespace, log_subscriber, notifier = ActiveSupport::Notifications)
54
54
  log_subscribers << log_subscriber
55
+ @flushable_loggers = nil
55
56
 
56
57
  log_subscriber.public_methods(false).each do |event|
57
- notifier.subscribe("#{namespace}.#{event}") do |*args|
58
+ notifier.subscribe("#{event}.#{namespace}") do |*args|
58
59
  next if log_subscriber.logger.nil?
59
60
 
60
61
  begin
@@ -70,11 +71,17 @@ module Rails
70
71
  @log_subscribers ||= []
71
72
  end
72
73
 
74
+ def self.flushable_loggers
75
+ @flushable_loggers ||= begin
76
+ loggers = log_subscribers.map(&:logger)
77
+ loggers.uniq!
78
+ loggers.select { |l| l.respond_to?(:flush) }
79
+ end
80
+ end
81
+
73
82
  # Flush all log_subscribers' logger.
74
83
  def self.flush_all!
75
- loggers = log_subscribers.map(&:logger)
76
- loggers.uniq!
77
- loggers.each { |l| l.flush if l.respond_to?(:flush) }
84
+ flushable_loggers.each(&:flush)
78
85
  end
79
86
 
80
87
  # By default, we use the Rails.logger for logging.
@@ -105,4 +112,4 @@ module Rails
105
112
  "#{bold}#{color}#{text}#{CLEAR}"
106
113
  end
107
114
  end
108
- end
115
+ end
@@ -1,4 +1,5 @@
1
1
  require 'rails/log_subscriber'
2
+ require 'active_support/core_ext/time/conversions'
2
3
 
3
4
  module Rails
4
5
  module Rack
@@ -19,10 +20,10 @@ module Rails
19
20
 
20
21
  def before_dispatch(env)
21
22
  request = ActionDispatch::Request.new(env)
22
- path = request.fullpath.inspect rescue "unknown"
23
+ path = request.fullpath
23
24
 
24
- info "\n\nStarted #{request.method.to_s.upcase} #{path} " <<
25
- "for #{request.remote_ip} at #{Time.now.to_s(:db)}"
25
+ info "\n\nStarted #{env["REQUEST_METHOD"]} \"#{path}\" " \
26
+ "for #{request.ip} at #{Time.now.to_default_s}"
26
27
  end
27
28
 
28
29
  def after_dispatch(env)
@@ -1,6 +1,7 @@
1
1
  require 'rails/initializable'
2
2
  require 'rails/configuration'
3
3
  require 'active_support/inflector'
4
+ require 'active_support/deprecation'
4
5
 
5
6
  module Rails
6
7
  # Railtie is the core of the Rails Framework and provides several hooks to extend
@@ -196,6 +197,9 @@ module Rails
196
197
  end
197
198
  end
198
199
 
200
+ def eager_load!
201
+ end
202
+
199
203
  def rake_tasks
200
204
  self.class.rake_tasks
201
205
  end
@@ -7,6 +7,15 @@ module Rails
7
7
  @@options ||= {}
8
8
  end
9
9
 
10
+ # This allows you to modify the application's middlewares from Engines.
11
+ #
12
+ # All operations you run on the app_middleware will be replayed on the
13
+ # application once it is defined and the default_middlewares are
14
+ # created
15
+ def app_middleware
16
+ @@app_middleware ||= Rails::Configuration::MiddlewareStackProxy.new
17
+ end
18
+
10
19
  # Holds generators configuration:
11
20
  #
12
21
  # config.generators do |g|
@@ -28,12 +37,20 @@ module Rails
28
37
  end
29
38
  end
30
39
 
31
- def after_initialize_blocks
32
- @@after_initialize_blocks ||= []
40
+ def before_configuration(&block)
41
+ ActiveSupport.on_load(:before_configuration, :yield => true, &block)
42
+ end
43
+
44
+ def before_eager_load(&block)
45
+ ActiveSupport.on_load(:before_eager_load, :yield => true, &block)
46
+ end
47
+
48
+ def before_initialize(&block)
49
+ ActiveSupport.on_load(:before_initialize, :yield => true, &block)
33
50
  end
34
51
 
35
- def after_initialize(&blk)
36
- after_initialize_blocks << blk if blk
52
+ def after_initialize(&block)
53
+ ActiveSupport.on_load(:after_initialize, :yield => true, &block)
37
54
  end
38
55
 
39
56
  def to_prepare_blocks
@@ -1,3 +1,5 @@
1
+ require 'rake/rdoctask'
2
+
1
3
  namespace :doc do
2
4
  def gem_path(gem_name)
3
5
  path = $LOAD_PATH.grep(/#{gem_name}[\w.-]*\/lib$/).first
@@ -30,6 +30,28 @@ namespace :rails do
30
30
  generator.apply template, :verbose => false
31
31
  end
32
32
 
33
+ namespace :templates do
34
+ desc "Copy all the templates from rails to the application directory for customization. Already existing local copies will be overwritten"
35
+ task :copy do
36
+ generators_lib = File.expand_path("../../generators", __FILE__)
37
+ project_templates = "#{Rails.root}/lib/templates"
38
+
39
+ default_templates = { "erb" => %w{controller mailer scaffold},
40
+ "rails" => %w{controller helper scaffold_controller stylesheets} }
41
+
42
+ default_templates.each do |type, names|
43
+ local_template_type_dir = File.join(project_templates, type)
44
+ FileUtils.mkdir_p local_template_type_dir
45
+
46
+ names.each do |name|
47
+ dst_name = File.join(local_template_type_dir, name)
48
+ src_name = File.join(generators_lib, type, name, "templates")
49
+ FileUtils.cp_r src_name, dst_name
50
+ end
51
+ end
52
+ end
53
+ end
54
+
33
55
  namespace :update do
34
56
  def invoke_from_app_generator(method)
35
57
  app_generator.invoke(method)
@@ -1,6 +1,6 @@
1
1
  desc 'Prints out your Rack middleware stack'
2
2
  task :middleware => :environment do
3
- Rails.configuration.middleware.active.each do |middleware|
3
+ Rails.configuration.middleware.each do |middleware|
4
4
  puts "use #{middleware.inspect}"
5
5
  end
6
6
  puts "run #{Rails::Application.instance.class.name}.routes"
@@ -3,7 +3,11 @@ task :routes => :environment do
3
3
  Rails::Application.reload_routes!
4
4
  all_routes = ENV['CONTROLLER'] ? Rails.application.routes.routes.select { |route| route.defaults[:controller] == ENV['CONTROLLER'] } : Rails.application.routes.routes
5
5
  routes = all_routes.collect do |route|
6
- name = Rails.application.routes.named_routes.routes.index(route).to_s
6
+ # TODO: The :index method is deprecated in 1.9 in favor of :key
7
+ # but we don't have :key in 1.8.7. We can remove this check when
8
+ # stop supporting 1.8.x
9
+ key_method = Hash.method_defined?('key') ? 'key' : 'index'
10
+ name = Rails.application.routes.named_routes.routes.send(key_method, route).to_s
7
11
  reqs = route.requirements.empty? ? "" : route.requirements.inspect
8
12
  {:name => name, :verb => route.verb.to_s, :path => route.path, :reqs => reqs}
9
13
  end
@@ -35,7 +35,9 @@ class ActionController::TestCase
35
35
  end
36
36
 
37
37
  class ActionDispatch::IntegrationTest
38
- include Rails.application.routes.url_helpers
38
+ setup do
39
+ @routes = Rails.application.routes
40
+ end
39
41
  end
40
42
 
41
43
  begin
@@ -1,3 +1,5 @@
1
+ require 'rake/testtask'
2
+
1
3
  TEST_CHANGES_SINCE = Time.now - 600
2
4
 
3
5
  # Look up tests for recently modified sources.
@@ -30,7 +32,7 @@ end
30
32
  module Kernel
31
33
  def silence_stderr
32
34
  old_stderr = STDERR.dup
33
- STDERR.reopen(RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'NUL:' : '/dev/null')
35
+ STDERR.reopen(Config::CONFIG['host_os'] =~ /mswin|mingw/ ? 'NUL:' : '/dev/null')
34
36
  STDERR.sync = true
35
37
  yield
36
38
  ensure
@@ -3,7 +3,7 @@ module Rails
3
3
  MAJOR = 3
4
4
  MINOR = 0
5
5
  TINY = 0
6
- BUILD = "beta3"
6
+ BUILD = "beta4"
7
7
 
8
8
  STRING = [MAJOR, MINOR, TINY, BUILD].join('.')
9
9
  end
metadata CHANGED
@@ -6,8 +6,8 @@ version: !ruby/object:Gem::Version
6
6
  - 3
7
7
  - 0
8
8
  - 0
9
- - beta3
10
- version: 3.0.0.beta3
9
+ - beta4
10
+ version: 3.0.0.beta4
11
11
  platform: ruby
12
12
  authors:
13
13
  - David Heinemeier Hansson
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-04-13 00:00:00 -07:00
18
+ date: 2010-06-08 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -42,8 +42,8 @@ dependencies:
42
42
  segments:
43
43
  - 0
44
44
  - 13
45
- - 4
46
- version: 0.13.4
45
+ - 6
46
+ version: 0.13.6
47
47
  type: :runtime
48
48
  version_requirements: *id002
49
49
  - !ruby/object:Gem::Dependency
@@ -57,8 +57,8 @@ dependencies:
57
57
  - 3
58
58
  - 0
59
59
  - 0
60
- - beta3
61
- version: 3.0.0.beta3
60
+ - beta4
61
+ version: 3.0.0.beta4
62
62
  type: :runtime
63
63
  version_requirements: *id003
64
64
  - !ruby/object:Gem::Dependency
@@ -72,8 +72,8 @@ dependencies:
72
72
  - 3
73
73
  - 0
74
74
  - 0
75
- - beta3
76
- version: 3.0.0.beta3
75
+ - beta4
76
+ version: 3.0.0.beta4
77
77
  type: :runtime
78
78
  version_requirements: *id004
79
79
  description: "Rails internals: application bootup, plugins, generators, and rake tasks."
@@ -205,12 +205,12 @@ files:
205
205
  - guides/source/routing.textile
206
206
  - guides/source/security.textile
207
207
  - guides/source/testing.textile
208
+ - guides/w3c_validator.rb
208
209
  - lib/rails/all.rb
209
210
  - lib/rails/application/bootstrap.rb
210
211
  - lib/rails/application/configurable.rb
211
212
  - lib/rails/application/configuration.rb
212
213
  - lib/rails/application/finisher.rb
213
- - lib/rails/application/metal_loader.rb
214
214
  - lib/rails/application/railties.rb
215
215
  - lib/rails/application/routes_reloader.rb
216
216
  - lib/rails/application.rb
@@ -218,13 +218,13 @@ files:
218
218
  - lib/rails/cli.rb
219
219
  - lib/rails/code_statistics.rb
220
220
  - lib/rails/commands/application.rb
221
+ - lib/rails/commands/benchmarker.rb
221
222
  - lib/rails/commands/console.rb
222
223
  - lib/rails/commands/dbconsole.rb
223
224
  - lib/rails/commands/destroy.rb
224
225
  - lib/rails/commands/generate.rb
225
- - lib/rails/commands/performance/benchmarker.rb
226
- - lib/rails/commands/performance/profiler.rb
227
226
  - lib/rails/commands/plugin.rb
227
+ - lib/rails/commands/profiler.rb
228
228
  - lib/rails/commands/runner.rb
229
229
  - lib/rails/commands/server.rb
230
230
  - lib/rails/commands/update.rb
@@ -234,7 +234,6 @@ files:
234
234
  - lib/rails/console/helpers.rb
235
235
  - lib/rails/console/sandbox.rb
236
236
  - lib/rails/deprecation.rb
237
- - lib/rails/dispatcher.rb
238
237
  - lib/rails/engine/configurable.rb
239
238
  - lib/rails/engine/configuration.rb
240
239
  - lib/rails/engine.rb
@@ -314,12 +313,6 @@ files:
314
313
  - lib/rails/generators/rails/helper/USAGE
315
314
  - lib/rails/generators/rails/integration_test/integration_test_generator.rb
316
315
  - lib/rails/generators/rails/integration_test/USAGE
317
- - lib/rails/generators/rails/mailer/mailer_generator.rb
318
- - lib/rails/generators/rails/mailer/templates/mailer.rb
319
- - lib/rails/generators/rails/mailer/USAGE
320
- - lib/rails/generators/rails/metal/metal_generator.rb
321
- - lib/rails/generators/rails/metal/templates/metal.rb
322
- - lib/rails/generators/rails/metal/USAGE
323
316
  - lib/rails/generators/rails/migration/migration_generator.rb
324
317
  - lib/rails/generators/rails/migration/USAGE
325
318
  - lib/rails/generators/rails/model/model_generator.rb