Confusing dependencies

Hello,

I'm currently working on a plugin. To set the (minimal) testing environment for the plugin up I invoke Rails::Initializer (instead of loading config/environment.rb). As the plugin just depends on AR I tried to disable all apparently unneeded frameworks. However, it's not possible to disable more than :action_mailer and :active_resource. Loading the database config file e. g. requires ERB which again is part of ActionView. ActionController can't be disabled as ActionView depends on it in turn (AV requires html-parser 'html/document', which isn't found unless AC is loaded).

Now I wondered if these depenencies are intended (to keep complexety as low as possible), and -- if not --, whether there're plans for rather autonomous frameworks.

Cheers Peter

Now I wondered if these depenencies are intended (to keep complexety as low as possible), and -- if not --, whether there're plans for rather autonomous frameworks.

We certainly expect you to be able to turn off the frameworks where that makes sense. If it's as simple as a few missing requires for things like erb then we can definitely take patches to fix that.

Making them completely autonomous isn't a high priority goal for most people, but there's no reason to make it impossible to turn AR off for example.

This does work (or at least used to), I've got a 2.0.2 app around somewhere that doesn't use ActiveRecord (and it was as simple as using config.frameworks)

Fred

I just tried it with 2.1.0

uncommented the line; config.frameworks -= [ :active_record, :active_resource, :action_mailer ]

and nothing works unfortunately.

I imagine it does work sometimes, but given there's no test on the functionality...

http://gist.github.com/3594

Thats because you have active record mentioned in one of the initializers:

  from /Users/matthew/code/nodb/config/initializers/new_rails_defaults.rb:5

Just comment it out / remove it from there.

good point, thanks.

So it does work! BOOM.