A few days ago, I tried to use ActionView as a standalone dependency of
something I was writing. I ended up abandoning that attempt due to the
number of unrelated dependencies of the actionpack gem, which ActionView is
a part of:

$ gem dependency actionpack
Gem actionpack-3.1.0.rc1
  activemodel (= 3.1.0.rc1)
  activesupport (= 3.1.0.rc1)
  builder (~> 3.0.0)
  erubis (~> 2.7.0)
  i18n (~> 0.6.0beta1)
  rack (~> 1.3.0.beta2)
  rack-cache (~> 1.0.1)
  rack-mount (~> 0.8.1)
  rack-test (~> 0.6.0)
  sprockets (~> 2.0.0.beta.5)
  tzinfo (~> 0.3.27)


   - *activemodel* is used for ActiveModel::Naming for a few, mostly
   optional aspects of ActionPack related to automatically converting an
   ActiveModel compliant object into a key for params and routing. It uses only
   two methods of ActiveModel (ActiveModel::Naming.route_key and
   ActiveModel::Naming.param_key). *I think we should remove this dependency
   *, as the point of the ActiveModel API refactor in Rails 3 was to allow
   *any* object to work in AP. Additionally, only a few areas of the code use
   even the ActiveModel API.
   - *rack *is not used in ActionView *at all*.
   - *rack-cache *is not used in ActionView *at all*.
   - *rack-mount *is not used in ActionView *at all*.
   - *rack-test *is not used in ActionView *at all*. It is used only in
   ActionDispatch, and only in test helpers.
   - *sprockets* is used in ActionView, but only optionally, if asset
   compilation is desired.
   - *tzinfo *does not seem to be used at all except in a test

The short version is that ActionDispatch and ActionController use a lot of
the dependencies, but ActionView does not.

I would like to propose that we break out ActionView into its own gem with
only a few dependencies, and make ActionPack depend on it.

Yehuda Katz
Chief Technologist | Strobe
(ph) 718.877.1325

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Core" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-core?hl=en.

Reply via email to