You write: “if your extension is BSD-licensed and the main project is GPL-licensed, people using your code are almost by definition also using the other project, so they are already bound to the terms of the GPL, which means you're adding no extra restrictions by releasing your code under the GPL.”
This is wrong. You assume that people making a derived work of “your extension” are going to make another extension to a GPL’d “main project”. That is so totally forgetting the not rare case of people just taking one method or something from the code and using it in something totally different, because they see it, like it, it fits their needs, etc. and because the BSD’d extension is not a derived work of the GPL’d main project, this is possible.
And it saves 17K (or even 34K) in the source tarball ;-) not to mention political reasons (when being in the BSD camp, which I am).
I think it’s like this: the GPL is a weapon to create a free-as-in-RMS ecosystem by force. The BSD/MIT/… licences encourage code reuse without force. (People not giving back to BSD-ish licenced projects are pitied. Even Google publishes the source code of the non-GPL-parts of Android. People “turning” a BSD-ish licenced project into a copyleft-licenced one are frowned MUCH more than people just not releasing the source code of their derivate, as that counts as teasing and hurts.)
Re: Ecosystems
This is wrong. You assume that people making a derived work of “your extension” are going to make another extension to a GPL’d “main project”. That is so totally forgetting the not rare case of people just taking one method or something from the code and using it in something totally different, because they see it, like it, it fits their needs, etc. and because the BSD’d extension is not a derived work of the GPL’d main project, this is possible.
And it saves 17K (or even 34K) in the source tarball ;-) not to mention political reasons (when being in the BSD camp, which I am).
I think it’s like this: the GPL is a weapon to create a free-as-in-RMS ecosystem by force. The BSD/MIT/… licences encourage code reuse without force. (People not giving back to BSD-ish licenced projects are pitied. Even Google publishes the source code of the non-GPL-parts of Android. People “turning” a BSD-ish licenced project into a copyleft-licenced one are frowned MUCH more than people just not releasing the source code of their derivate, as that counts as teasing and hurts.)