Hello, Recently I made a blog post about the Desert framework.
http://pivots.pivotallabs.com/users/brian/blog/articles/459-build-your-own-rails-plugin-platform-with-desert
In the comments, I learned that Desert is very similar to Rails
Engines. Both projects have independently evolved along a similar path
for the past 1 1/2 years.
Anyways, one difference is the multi-file loading on const_missing,
require, and load. Desert keeps a separate load path from Ruby. This
load path includes all Rails app & plugin directories.
When requiring a file, Desert will load all matches. If there was at
least one match, then the require is finished. If there was not a
match from the Desert load path, then Desert will delegate to Ruby’s
standard require method implementation, which loads the first file
match.
This allows models to be included in the multi-file loading sequence.
Have you thought of such an approach? Do you think this would improve
Rails Engines? If yes, I’d be happy with submitting a patch.
Anyways, I think its possible that we may want to deprecate Desert in
favor of Rails Engines. I’m wondering if there are fundamental
differences between these two libraries, or if these projects are
trying to solve the same problems with the same approaches.
Thanks,
Brian