Re: Better Attribution License (Formerly Berkeley-Artistic License)
Lucy Ada Randall via License-discuss <[email protected]> Tue, 15 Apr 2025 03:15:29 +0000
| Newsgroups | gmane.comp.licenses.open-source.general |
|---|---|
| Message-ID | <[email protected]> |
On 2025-04-15 00:15, Josh Berkus wrote: > On 3/22/25 23:15, Lucy Ada Randall via License-discuss wrote: >> Standard Version: The project which is the basis for modified >> versions, also known as upstream. >> Modified Versions: versions of the source code distributed by the >> project that have been modified, which can be distributed as >> executables, downstream. > > I'm aware that this language has been used in other licenses. It is > not an OSD violation in my opinion. However, since this is a new > license it's worth discussing doing better. > > One thing which has always been awkward about this language in those > licenses is: what happens when someone only wants to use *part* of your > code? For example, a single file, and not any of the rest of the > project? What's the Standard Version in that case, and what happens > when later projects fork and re-re-share that one file? What if the > file was actually borrowed under the MIT license from another project, > with the BAL wrapped on top? > > Pam discussed this at greater length in one of her comments. While > you've revised the license to remove a lot of the other issues with it, > it still does have this fundamental assumption that it's applied to > software with a single origin point which will never change, and that > the software will be forked *as a whole* rather than being pieced up. > > The goal here is to make sure that there's credit given to the > "original creator" of the code, correct? Yes, while the goal is to create and maintain attribution to an original project, the secondary goal, like with all copyleft licenses, is to spread the license. How this affects partial code reuse is a reasonable question, but the answer is “Like the gpl, partial code use converts the whole project to this license or the snippet of code is sufficiently simple to not be protectable under copyright.” The partial code would be a modified version of the project, thus anything relating to a modified version within the license would automatically apply to the project that the partial code is used in. This is my understanding of licenses like this. I understand your hypothetical scenario is specifically constructed to break the attribution requirements of this license in particular, but it immediately demonstrates the lack of consideration for such things in the Copyleft space. The GPL, for example, has an issue of attribution with a full code fork of a GPL or permissively licensed project. This license seeks to fix that at the very least. In my non-expert, non-lawyer opinion, MIT licensed code used by the BAL licensed project would still be licensed under the MIT license. Due to how the MIT license works, licensed files would retain their MIT license headers and all code within would remain MIT licensed unless sufficiently delineated. That would remain the case until the files are or the substantial amount of MIT licensed code is replaced. It is up to individual projects as to how code licensed under other licenses are attributed to their respective developers, outside of them needing to be attributed to them at all, and it likewise falls on their shoulders as to how they should handle such code, but it has been taken as standard by myself that the above mentioned protocol is to be used in similar instances where differently licensed projects use MIT licensed files or code. A file under the MIT license should not be a vector for “license infection” via its sublicense but despite my opinion on if it should, it legally would be if it can be proven that it has been significantly altered by a project under a stronger copyleft license. This is a side-effect of how these licenses work, and it isn’t a surprise that some assume that partial code use exempts them from following the terms of the license, which isn’t even close to the case. In addition, I agree that this might not have to be explained in as much detail if the license itself explicitly states partial code use requires that the license of the project which uses parts of the standard version must be converted to the BAL, I’ll revise the definitions of the license to incorporate mentions of partial code. How’s this? I also removed the mention of being distributable as an executable which I think should not apply. Standard Version: The project which is the basis for modified versions, also known as upstream. Modified Versions: Partial or whole versions of the source code distributed by the project that have been modified, downstream. _______________________________________________ The opinions expressed in this email are those of the sender and not necessarily those of the Open Source Initiative. Official statements by the Open Source Initiative will be sent from an opensource.org email address. License-discuss mailing list [email protected] http://lists.opensource.org/mailman/listinfo/license-discuss_lists.opensource.org