Agree with Andy600.
Look in the 50D thread: back then, when GregoryOfManhattan was active, he was pushing everything to main tree, and it was pretty nice, we were exchanging ideas, test results and so on. After he left, I don't remember seeing anything pushed back to the mainline. Basically, the main 50D builds seem abandoned (also EOS M, 6D, and 7D, and the 600D is not too far from that), and soon I'll probably have no other choice than disabling these nightly builds, like I already did with the EOS M.
The first is that 1% works at his own pace and is often quick to implement/change and rework ML code across several camera bodies
Okay, but more than one year without a single pull request seems a little too much for me. It no longer feels like collaboration, but like competition.
some of the TL code is classed (by a1ex) as potentially dangerous and will never be approved.
Not in the current form, but most of the stuff can be reworked in an acceptable way. For example, I'm trying hard to ensure that, when feature X is disabled, it really does nothing (not patching Canon code, not altering data structures and so on). Also, when you have to disable a Canon safety check (assert), it should be used as a last resort (so look for some alternative method first). If you really have to use it, you have to make sure it won't cause harm (write a description, something I can understand, not just obfuscated cache_fake calls that are impossible to review). Showing that it seems to work is not enough for me, because I've had enough bad experiences with problems happening with very low probability (which are hardest to diagnose). You know, race conditions, buffer overflows... stuff like that.
perhaps he just needs a little help from knowledgeable individuals who can push his work back to the main trunk, enabling him to continue doing what he does. This is something I think might be possible for someone at my level although I do need some guidance in how to do it.
I recommend taking one thing at a time (for example, display filters on camera X, or FPS override improvements on camera Y). Ideally you should be able to simply pull a changeset or a group of changesets that does just that (but this is impossible to do without the cooperation from 1% - you should try to do only one thing in a changeset, not 3 unrelated things). So, the alternative approach is to take the diff between ML and TL (easy with the rdiff extension), pull the relevant lines, apply these changes manually (or if you feel confortable to edit a huge patch directly, that's fine too), describe what that change does and submit a pull request.