Skip to content

Commit 60a3190

Browse files
committed
Merge pull request rails#1460 from SAP-Oxygen/27d7083addd1bc8ecf0ef258a50c5e36eb980060
[3.1.0.rc1] Plugins inside engines not eager-loaded properly and their rake tasks ignored
2 parents 014008d + 27d7083 commit 60a3190

File tree

2 files changed

+14
-9
lines changed

2 files changed

+14
-9
lines changed

railties/lib/rails/application.rb

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -78,10 +78,6 @@ def require_environment! #:nodoc:
7878
require environment if environment
7979
end
8080

81-
def eager_load! #:nodoc:
82-
railties.all(&:eager_load!)
83-
super
84-
end
8581

8682
def reload_routes!
8783
routes_reloader.reload!
@@ -100,22 +96,18 @@ def initialize!
10096

10197
def load_tasks(app=self)
10298
initialize_tasks
103-
railties.all { |r| r.load_tasks(app) }
10499
super
105100
self
106101
end
107102

108103
def load_generators(app=self)
109104
initialize_generators
110-
railties.all { |r| r.load_generators(app) }
111-
112105
super
113106
self
114107
end
115108

116109
def load_console(app=self)
117110
initialize_console
118-
railties.all { |r| r.load_console(app) }
119111
super
120112
self
121113
end

railties/lib/rails/engine.rb

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -387,12 +387,25 @@ def find(path)
387387
delegate :middleware, :root, :paths, :to => :config
388388
delegate :engine_name, :isolated?, :to => "self.class"
389389

390-
def load_tasks(*)
390+
def load_tasks(app=self)
391+
railties.all { |r| r.load_tasks(app) }
391392
super
392393
paths["lib/tasks"].existent.sort.each { |ext| load(ext) }
393394
end
395+
396+
def load_generators(app=self)
397+
railties.all { |r| r.load_generators(app) }
398+
super
399+
end
394400

401+
def load_console(app=self)
402+
railties.all { |r| r.load_console(app) }
403+
super
404+
end
405+
395406
def eager_load!
407+
railties.all(&:eager_load!)
408+
396409
config.eager_load_paths.each do |load_path|
397410
matcher = /\A#{Regexp.escape(load_path)}\/(.*)\.rb\Z/
398411
Dir.glob("#{load_path}/**/*.rb").sort.each do |file|

0 commit comments

Comments
 (0)