We've never thought much about this. Extensions are only linked to a
LGPL library, but that is a very thin API that redirects to the
implementation which is mainly GPL. I think this means that the
extensions have to be GPL or at least GPL compatible, but IANAL.
Since this is a public integration point, it seems the documentation
should make this a bit more clear. At the very least, it should be
documented that extensions link against LGPL, so a plugin shouldn't
be written with a LGPL incompatible license seems the sort of minimal
documentation that would be useful. Should there be something like
a COPYING.PLUGINS file that could make this more clear?