Re: [Rails-core] can't run: rake gems:install if application.rb depends on initializers

4 views
Skip to first unread message

Michael Koziarski

unread,
Oct 10, 2008, 7:00:02 AM10/10/08
to rubyonra...@googlegroups.com
> In general a task that installs a gem shouldn't need to rely on much.

The gem tasks depend on the initializer firing up because they allow
things like config.gem 'rspec' in test.rb but not development.rb. Can
you reproduce this in an empty test app?

So unless I'm misreading this, it seems we're requiring application.rb
before we try to run the gem installs, but we *haven't* fired the
initializers yet?

Is it perhaps caused by one of your plugins (rspec f.ex) requiring
application.rb?
--
Cheers

Koz

Stephen Bannasch

unread,
Oct 10, 2008, 3:08:28 PM10/10/08
to rubyonra...@googlegroups.com
At 1:00 PM +0200 10/10/08, Michael Koziarski wrote:
> > In general a task that installs a gem shouldn't need to rely on much.
>
>The gem tasks depend on the initializer firing up because they allow
>things like config.gem 'rspec' in test.rb but not development.rb. Can
>you reproduce this in an empty test app?

This problem is NOT reproducible in a simple test app:

rails test2_1_1
cd rails2_1_1
echo 'MY_CONSTANT = true' > config/initializers/test2_1_1.rb

add:

if MY_CONSTANT
puts "MY_CONSTANT exists"
end

to app/application.rb

add to end of Rails::Initializer.run do |config| block:

config.gem "rspec-rails", :lib => "spec"

$ rake gems:install
(in /Users/stephen/dev/rails/test2_1_1)
MY_CONSTANT exists

$ rake gems:unpack
(in /Users/stephen/dev/rails/test2_1_1)
MY_CONSTANT exists
Unpacked gem: '/Users/stephen/dev/rails/test2_1_1/vendor/gems/rspec-rails-1.1.8'

>So unless I'm misreading this, it seems we're requiring application.rb
>before we try to run the gem installs, but we *haven't* fired the
>initializers yet?
>
>Is it perhaps caused by one of your plugins (rspec f.ex) requiring
>application.rb?
>--

There's something different between the apps -- -- I will investigate further -- if I find anything further that might indicate a rails problem I'll update this thread.

Thanks for your response.

Kenneth Kalmer

unread,
Nov 24, 2008, 7:38:45 AM11/24/08
to rubyonra...@googlegroups.com
On Fri, Oct 10, 2008 at 9:08 PM, Stephen Bannasch
<stephen....@deanbrook.org> wrote:
>>So unless I'm misreading this, it seems we're requiring application.rb
>>before we try to run the gem installs, but we *haven't* fired the
>>initializers yet?
>>
>>Is it perhaps caused by one of your plugins (rspec f.ex) requiring
>>application.rb?
>>--
>
> There's something different between the apps -- -- I will investigate further -- if I find anything further that might indicate a rails problem I'll update this thread.

Stephen, did you ever figure out what caused the issue? Battling with
it now and trying to find the offending piece of code loading
application.rb

Best

--
Kenneth Kalmer
kenneth...@gmail.com
http://opensourcery.co.za

Chris Cruft

unread,
Nov 25, 2008, 8:26:07 AM11/25/08
to Ruby on Rails: Core
I've seen this behavior as well: my initializers were not being run
during a gem install, but application.rb was being required. Inside
initializer.rb, the "gems_dependencies_loaded" test was not being met
and so the "load_application_initializers" method had no effect.

In my case, the initializers were defining some constants needed for
application.rb. I resorted to installing the gem manually.

-Chris

matthewr...@gmail.com

unread,
Nov 25, 2008, 6:31:50 PM11/25/08
to Ruby on Rails: Core
I've seen something similar,
where application.rb gets required when I'm trying to run rake
db:migrate.

I guess there's some plugin we're all using.

Kenneth Kalmer

unread,
Nov 26, 2008, 12:49:23 AM11/26/08
to rubyonra...@googlegroups.com
Please have a look at
http://groups.google.com/group/rubyonrails-core/browse_thread/thread/73f21c47d114b88e

I managed to split this thread when changing the subject. On edge,
application.rb won't be loaded by default anymore (Matt did give the
details), so it's not a plugin issue at all.

Best
Reply all
Reply to author
Forward
0 new messages