benedikt/mongoid-tree — pull request #32 by DouweM (2012-09-09 23:37:09+00:00)
Title: I extracted ordering and sibling logic into two gems.

Hi!

I came across this gem a couple of months ago, and while I had no need for the tree functionality at that point, I did really like your solution to the age-old document ordering problem. So I did two things: I extracted `Mongoid::Tree::Ordering` into a `Mongoid::Ordering` module, and I replaced the tree-specific sibling logic by a `Mongoid::Siblings` module.

I've happily been using both for a while on a private project, but now the day has come that the rest of the world will be able benefit from this work, as I'm releasing both modules as gems, namely [mongoid-ordering](https://github.com/DouweM/mongoid-ordering) and [mongoid-siblings](https://github.com/DouweM/mongoid-siblings).

I think it would be pointless to maintain two versions of the ordering and sibling logic, one tree-specific and one generic, when the latter works perfectly in the tree-specific context as well. In fact, since both gems are 1:1 extractions of functionality of mongoid-tree, these parts of mongoid-tree could easily be replaced by the two gems. And as you might have guessed, that is what this pull request is for.

I can imagine you don't want to just let go of these pieces of code that, until just now, were yours and yours alone to manage, so if you'd like I'd be happy to give you push rights on both based-on-mongoid-tree repos.

If there are any questions or considerations, please let me know.

Cheers!

—Douwe