How deep the changes in the API should be?

14.8% 18
13.9% 17
13.9% 17
57.4% 70

122 Datum 20. April 2009, 03:09

Foren / Cotonti / Core Labs / Archive / Umfrage: Plugin API changes

How far can we go?

Trustmaster
#11605 20. April 2009, 03:09
As you know new Module and Plugin APIs are planned for Renaissance. As for Modularization, I'm going to tell my opinion in its topic a little bit later, it is not really much we should do with the API, it's mostly about changing file structure.

In this topic I'd like to ask about Plugin API. We want plugins to be a little bit more flexible, hook into multiple places, etc. There is a really interesting idea of implementing plugins as event handlers and making a move towards event-driven behavior. But what worries me before I start to make API concepts is how far plugin developers are ready to go.

So I wonder how much backwards compatibility there should be. Here I explain poll options:
  • Brand new - the API is something revolutionary, but all the existing plugins will have to be rewritten. Almost no backwards compatibility at all.
  • Major upgrade - event-driven design, flexibility benefits. Will require changes in interface part of all the plugins, but the actual code will stay the same. It's about changing 10-30% of code in plugins.
  • Minor update - just try to add multiple hooks keeping current design. Will require changes in plugin headers (currently known as SED_BEGIN_EXTPLUGIN). 3-5% of changes in code and old plugins should work too.
  • No changes - just leave the plugins alone.

Please explain your choice, especially if you are a Team member.
May the Source be with you!