On 30/11/17 21:17, Jack Stouffer wrote:
I'm starting work on a proposal for stdx.decimal, and one of the
clearest implementations to work off of is the Python implementation.
This however, poses a problem because Python's source is under the PSFL,
a BSD-like permissive license. Any derivative work, such as a D
conversion, must have the original copyright notice, a copy of the PSFL,
as a well as a summary of changes. This is simple enough to do, but the
resulting code would be dual-licensed with the PSFL and the BSL 1.0
(dual-licensing being relatively common in other OSS projects).
My question is there any reason this could pose a problem? Could this
interfere with something like distribution or company adoption?
Also note, one of the existing Phobos modules, std.net.isemail, is
supposed to be dual-licensed because it's derived from an existing BSD
work. But, it's missing the BSD license from the top (and is technically
breaking the license because of that).
IANAL
That's not how it works.
Dual licensing means anyone can use the code under one license *or* the
other. That is not something you can do on your own.
If the PSFL license and the Boost license are *compatible*, then what
you can do is take the original Python code under the PSFL and convert
it to D, licensing *your changes* as Boost. The result should look
something like this:
This code is copyright (C) 2017 Jack Stouffer
Original Python code copyright (original copyright notice)
Python code is licensed under the PSFL
PSFL head goes here.
D code is licensed under the Boost license:
Boost license header goes here