I probably should have checked first - are you ok for this and your future stem patches to be in the public domain? Here's an explanation of why I need to ask...
No, I prefer LGPLv3 for my submissions. However, I am willing to assign my copyright on stem submissions to the Tor Project, if the project has a method to accept such assignments.
Drats. On one hand I'm glad to see you say this. All of my projects (stem, arm, and prior work) have been under the GPL/LGPL and it's nice to see you take an interest in your work staying in that space. On the other hand I'm the only tor developer that puts his stuff under the GPL with the exception of vidalia, so this complicates things.
Personally I'd love to just ignore licensing concerns. They're a headache and soak up time I'd rather be coding. But the rest of the tor project uses BSD, and unforeseen future projects that might want to borrow our code could be Apache or something else. After talking with Wendy, a lawyer with the tor project, it sounds like the simplest method of keeping flexibility in the future is for an individual to have the copyright over the whole codebase. That can be done either by copyright assignment, putting stuff into the public domain, or the CC0...
However, I am willing to assign my copyright on stem submissions to the Tor Project, if the project has a method to accept such assignments.
I'd like for the tor project to have stem's copyright if one of these Seattle buses finally do me in. However, I'm not really sure how that would work in practice (would decision making require waiting for tor's board? executive director? something else?). I presently have the copyright, both to keep it simple and since... well, I wrote 99% of the codebase. I certainly understand if you don't want to assign copyright to me. But until someone steps up to really co-author the project (which I'd really, really love to see happen!) I'd rather avoid the headache of complicating the project's copyright.
How would you like to proceed? I can revert your patches if you'd like, but I'd really hate to see legal stuff get in the way of making the library better.
Is it really a problem, for now, to share copyright among the multiple contributors? I have been involved with prior projects that changed the license after years of development. Each project sent me an email requesting my consent (along with the 10s-100s of other contributors) and both successfully changed licenses.
I agree that the, "simplest method of keeping flexibility in the future is for an individual to have the copyright over the whole codebase." However, simplest does not always cover the ethical space one hopes to encourage. I encourage you to keep your code licensed as LGPLv3 and accept LGPLv3 (or public domain or CC0) from others, now. Wait to worry about future license changes till that future, possibly, arrives.
Having said all that, I looked at my development process for these two patches and it is apparent that I did not do much original work. close_circuit is a copy-and-paste with minor edits from repurpose_circuit in the same class. And the same is true for test_close_circuit as a minor adaptation from test_repurpose_circuit.
So, I am transferring my copyright on these two patches to you, Damian Johnson, and I relinquish any ownership and control of these patches to you. However, I may have other ideas for other patches.
The Stem codebase is elegantly beautiful and I have enjoyed poking around in it. I plan to make other contributions to Stem, in the future, so I would like to hear what your copyright/licensing/code-sharing plans are going forward.
Is it really a problem, for now, to share copyright among the multiple contributors?
In the short term no, though it could be down the line. Email addresses become obsolete and people are often unresponsive. If we want to reuse stem code and can't contact a contributor then I'd need to rewrite those contributions. This isn't the end of the world, but it's a nice thing to avoid if they're fine for their patches to be in the public domain or CC0.
Thus far you're the first contributor to strongly desire for his patches to remain as LGPLv3. In general I'd like to avoid this since most people don't stick around long. Stem has had nine contributors and only five are still around...
That said, going forward I'm fine for your contributions to be LGPLv3. You're a fantastic developer and I remember your TorCtl contributions, so it seems unlikely that you'll completely go incommunicado. :)
Resolving this ticket, though I'm happy to discuss this more if you'd like.
The Stem codebase is elegantly beautiful and I have enjoyed poking around in it.
Thanks! I'm glad you like it.
Trac: Status: new to closed Resolution: N/Ato implemented