Adding a license to an existing module

Matts on 2006-02-21T17:29:43

I maintain the CDB_File module which I took over after the original author was MIA. Someone asked me today if he could use it in his project and I was surprised at the question, thinking surely you checked the license first?

Well it appears to have no license.

So now can I retro-actively apply the perl Artistic/GPL to it, or do I have to get full copyright first?

Help!


Can't

ChrisDolan on 2006-02-21T18:20:27

I believe that you cannot retroactively apply a license. The best you can do is to continue to release it without a license and hope the original author doesn't come after you for copyright violation. This module should be listed as "restrictive" as per Module::Build's classification system

Obviously, you should put some commentary about this issue in the POD.

Re:Can't

jonasbn on 2006-02-21T18:52:01

I agree with Chris Dolan - the difficult thing however is defining what the restrictive license should be. Apparently distribution is somewhat free, but perhaps limited to CPAN. The source code is available and the software is free to download and use.

It would be nice if the CPAN had a default license, that modules not specifying a particular license would fall back to. At least this would get CPAN contributors to think the subject over.

Agreeing on a common CPAN license could take some time though :)

Re:Can't

Matts on 2006-02-21T19:04:01

Well the de-facto license on CPAN seems to be "same as perl" which I think is what everyone assumes anyway...

I guess maybe I'll try and track down the original author again.

Re:Can't

jonasbn on 2006-02-21T20:33:42

Hehe I am in an agreeing mood and yes I agree with you, but still many modules does not have license specified and therefor unknown is listed, an example, my own actually :-/

So yes the defacto license might have been chosen, but CPAN should apply it automatically, then we would not end up with the situation you are in now.

Re:Can't

ChrisDolan on 2006-02-22T05:34:45

No, CPAN should not declare a license simply because CPAN is software and can't understand the complexities of licensing. When software is open sourced, the author is granting rights beyond what is required by law or convention. That grant requires that the author controls the intellectual property behind the software and that s/he really has the right to assign those more liberal rights. That HAS to be opt-in, not opt-out.

Re:Can't

Alias on 2006-02-22T13:29:27

Well, you can't just go applying license to things that aren't yours.

HOWEVER, CPAN _requires_ the use of an open source license, and the lack of a license (in the META.yaml I guess) should probably be grounds for PAUSE refusing to allow a distribution to be uploaded. For that matter, so should "restrictive".

Re:Can't

ChrisDolan on 2006-02-22T05:28:38

Sorry, but I disagree. Yes, the most common license on CPAN is probably "same as perl" but any default license must respect some sort of copyright laws which likely already provides some default (like "fair use" in the Unied States)

Sure, the author *probably* meant it to be Artistic/GPL and you're *probably* not going to have problems redistributing or reusing the code, but when actually stating a license, I say you have to be conservative in this case and let the end user know that the code has not actually been declared as open source. Therefore the end user bears responsibility if a conflict arises and hopefully Matt can stay out of it!

On a side note, I've been harrassing Michael Schwern lately because his Archive::Any module is similarly unlicensed. He has been ignoring me, and I'm not sure why. It seems like a critical issue to me...

ask the author?

jmason on 2006-02-21T21:27:41

can you find the original author? they can retroactively define the license for the parts they wrote (and therefore own copyright on).