Licensing explanation


I’m not a lawyer — I don’t even play one on TV — but here’s a summary of how I managed to confuse myself, and others who read the small print, with XML::Writer.

David Megginson’s original license for XML::Writer is brief: “No warranty. Commercial and non-commercial use freely permitted.” It’s been there at the head of the code since the first release in 1999. It allows any use, without even the obligation to redistribute under the same license.

Placing something you’ve created in the public domain is not generally possible, so a liberal licence is the best available option.

(It also carried the “under the same terms as Perl itself” license in its README. Under the circumstances, this was a more restrictive license than the main one: a fairly redundant form of dual licensing.)

For the next nine years, and three maintainers, it included the same text. However, it’s not OSI-approved, nor is it likely to be: licence-tracking systems (e.g., META.yaml’s license field) won’t know about it. So, at the end of 2008 I switched to the MIT licence. This permits any use with the requirement that the same notice is included in any copies.

When I got a question a year later about commercial use and some licence inconsistencies, I was concerned. Amongst my mistakes, I didn’t include the MIT notice in the source text, left in the ‘same terms as Perl’ remark and declared it as GPL on its source hosting site. Not ideal.

The first step was to create a clear history, hence the migration to Git. I then confirmed with all contributors that they placed their work under the original license along with its ‘anything permitted’ interpretation.

Thanks; almost everyone immediately confirmed. (Update: as of 2010-07, all contributors have given permission.)

As part of the resolution, I decided to respect David’s choice of licence and to remove the ‘same terms as Perl’ notice to avoid confusion. This allows anyone receiving the code to combine it with any license they wish, including simply putting it under the MIT license themselves.

So, there’s the current state: do anything, with a public history if you need an audit. I learned a lot more about licensing and hopefully managed to resolve any inconvenience that I caused.

Update, 2010-04-22:

After the reversion, debian-legal had this suggestion for a licence that does exactly what I want and addresses their concerns:

Redistribution and use in source and compiled forms, with or without modification, are permitted under any circumstances. No warranty.

I like it. Final change?

(Music: TV On The Radio, “DLZ”)
(More from this year, or the front page? [K])