> "This can be resolved by specifying the load order with the
> config.plugins option, but a user shouldn't have to jump through those
> hoops to get things working..."

We're still pretty skeptical about plugin dependencies on the whole.
Plugins monkeypatching plugins seems like a bit of a recipe for
disaster.  However we could do something easy like:

config.plugins = [:gems, :some_kind_of_thing, :all]

So you specify the key things at the beginning of the array, then just
use :all to mean 'then everything else in alphabetical order'.

Seems like that'll solve most of the more-common problems where a
specific plugin needs to be early on the load path.


>
> On 9/19/07, Pratik <[EMAIL PROTECTED]> wrote:
> >
> > You can actually control the order of plugin loading with
> > config.plugins array, but I'd guess that'd be PITA
> >
> > I believe require_plugin ( I'd prefer just "plugin" ) would be a good
> > to have feature.
> >
> > On 9/19/07, Andrew Kaspick <[EMAIL PROTECTED]> wrote:
> > >
> > > Hello all,
> > >
> > > The topic of plugin dependencies has come up before and it doesn't
> > > seem to have been addressed by core or core doesn't seem to think it's
> > > an issue.  I've looked at the current edge code and don't see anything
> > > new, so if I've missed something *please* let me know.
> > >
> > > The following article makes mention of a require_plugin functionality...
> > > http://www.pluginaweek.org/2006/11/05/plugin-dependencies-revisited/
> > >
> > > and the referenced article seems to make the point that such a feature
> > > may not be required...
> > > http://weblog.techno-weenie.net/2006/10/31/plugin-dependencies
> > >
> > > The reason I bring this up is that with many current core features
> > > being moved to plugins, existing plugins that have been written to
> > > improve functionality in some of those core areas may no longer work
> > > since they will now be dependent on these "core plugins" being
> > > installed... and even if they are installed, there's no guarantee that
> > > the load order will be correct.
> > >
> > > For example, I have written a plugin to improve the functionality of
> > > the in_place_editor code.  This code works just fine with the current
> > > public version of rails.  Now in edge this core code has been moved to
> > > a plugin and my plugin will no longer work as expected since the core
> > > plugin is now "required" by my plugin.  This is fine (although a more
> > > informational warning would be useful for the user) as the user simply
> > > needs to install the "core plugin" as well.  This is where problems
> > > start to occur.  Since rails loads plugins in alphabetical order by
> > > default, if my plugin comes before the core plugin in name, my plugin
> > > code is overridden.
> > >
> > > With many rails features being deprecated and being moved to plugins,
> > > this will cause many dependencies on any existing plugins.  This can
> > > be resolved by specifying the load order with the config.plugins
> > > option, but a user shouldn't have to jump through those hoops to get
> > > things working... at least not before a fair amount of possible
> > > debugging since there may be no indication of the underlying problem
> > > of an existing plugin not working (a user may believe it's their own
> > > code causing problems).  Another possible solution is making sure ones
> > > own plugin is alpabetically higher than the one it depends on to force
> > > the proper load order, but that would be rather nasty hack.
> > >
> > > So I'd like to know what people think about having a "require_plugin"
> > > type functionality in core?  Is there a valid workaround that exists
> > > already?  If there isn't, do people even consider this a problem?
> > >
> > > Thanks,
> > > Andrew
> > >
> > > >
> > >
> >
> >
> > --
> > Cheers!
> > - Pratik
> > http://m.onkey.org
> >
> > >
> >
>
> >
>


-- 
Cheers

Koz

--~--~---------~--~----~------------~-------~--~----~
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