resolve/refinerycms — comment on commit 66768878772c669ecad2153d4dc00492f482ed8c
File: core/app/views/refinery/admin/_form_actions.html.erb line 39
By dmoose:

I understand this and use it myself. The problem I am having is the extent to which things are being interleaved in the master branch. I normally branch a repo to work on a specific new feature and then merge that back in. At times I have several branches running in parallel as different things are developed and I merge them as needed after I have confidence in the new feature.

My opinion is that something as complicated as re-namespacing the engines should not be running over a period of weeks in the master branch. That feature should be branched until you are happy with the namespacing and routing design. Because you are changing the namespace in multiple locations, by multiple people, over several weeks, and ultimately in all the engines, it is guaranteed that the main project and the separate engines will not play nicely together until the feature is finished.

This would mean all the users of the edge code would need to keep track of when the namespacing changes are made in each of the engines they are using and find a reference that is compatible in each project. This seems like undue work when there are only a couple of developers working on the namespacing and branching is so easy.

I agree that no one should expect the master branch to remain stable, but I also think that feature changes should not make it intrinsically unstable for long periods of time. You have a situation where you have been making the major upgrade to rails 3.1 for a very long time. There are those of us that must use rails 3.1. I really think that an effort should be made to tag a stable combination of rails 3.1 compatible engines so that people can begin using the code in production. Something like --pre. New features added in edge, but --pre only gets bugfixes. I thing it would really improve the quality of the bug reports you get back since they would be actual bugs rather than reports of incomplete features. I could probably find a dozen broken things across all the different available engines that are just routes not matching. This really doesn't help you until you decide exactly how you want the routes to look.