Let’s say there’s Project A, I’m working on creating a new project, let’s call it Project B that uses code from Project A which has been licensed under the GPL. Now, I know that Project B has to be open source.
But lets say that in the process of writing Project B, I am working on writing Project C in which I want to use a function that I wrote for Project B. It has nothing to do with Project A except that when Project B is released it will have to be GPL’d because of Project A.
Does using the function that I wrote for Project B require me to release Project C under the GPL?
Ok, well I read over the GPL again and went over the Wikipedia article on it.
My understanding of it is that you WOULD need to GPL release Project C, not because it’s a derivitive of Project A, rather because Project B is forcibly GPL-released, any derivitive of that work (which is Project B) would need to be released (which would mean Project C). As far as I know, the standpoint legally is that the difference between Projects A and B is not unlike the difference between Projects B and C, meaning Project C would need to be released.
But Project B hasn’t been released yet, so the source hasn’t been released either, so technically it’s not GPL yet, is it?
I mean, there’s no way for anyone to know whether I made the function for Project C first before Project B and just used it in Project B. If Project C were closed source, I could still contribute the function to Project B if it was my own intellectual property, correct?
Correct, and the best part is, no one would know (if you hadn’t made this thread :jailbreak )
I wouldn’t worry about it. Honestly, even if you take from an open source project, the likelihood of someone finding out is so small it’s almost not even worth the fuss. The reality of the situation is that those who will take will take, and those who will give will give. And as far as I’m concerned, what you’re doing is fair to everyone, yourself and the open source community.