Re: MU 2.9.1 Upgrade … What broke?
I don’t think that bp 1.1.3 has a bp_init action, just to clarify. In fact I don’t think 1.1.3 has any do_actions that fire as the plugin is being loaded, before plugins_loaded, although I could be wrong.
If I am correct, it means that in bp < 1.2, there is no add_action that can hook your plugin into loading classes or other code on a Buddypress load event.
In 1.2, bp_init solves this by firing at the end of the load of the buddypress files. bp_init does not depend on any WP action to fire. If you hook into bp_init, your plugin will have instant access to all Buddypress classes and functions.
As far as I can tell, the best way to make your groups API plugin work in BP 1.1.3 is to force BP to load at the beginning of your plugin. As to why 2.9.1 brings these issues to the forefront, I have absolutely no idea, but I have tested this as well and it definitely seems to be the culprit. There may be a performance it if you load BP this way, but I have checked and it at least does not load things twice.