Skip to content

Conversation

jacobo-doist
Copy link
Contributor

BSD is not enough to specify the license under which the software is released. This change specifies the license to be the 3-clause BSD license.

It also adds a LICENSE file, which was referred to but not included in the repo.

From Appendix: Mapping License Classifiers to SPDX Identifiers | peps.python.org:

Some legacy license classifiers intend to specify a particular license, but do not specify the particular version or variant, leading to a critical ambiguity as to their terms, compatibility and acceptability. Tools MUST NOT attempt to automatically infer a License-Expression when one of these classifiers is used without affirmative user action:

License :: OSI Approved :: Academic Free License (AFL)
License :: OSI Approved :: Apache Software License
License :: OSI Approved :: Apple Public Source License
License :: OSI Approved :: Artistic License
License :: OSI Approved :: BSD License
License :: OSI Approved :: GNU Affero General Public License v3
License :: OSI Approved :: GNU Free Documentation License (FDL)
License :: OSI Approved :: GNU General Public License (GPL)
License :: OSI Approved :: GNU General Public License v2 (GPLv2)
License :: OSI Approved :: GNU General Public License v3 (GPLv3)
License :: OSI Approved :: GNU Lesser General Public License v2 (LGPLv2)
License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)
License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)

A comprehensive mapping of these classifiers to their possible specific identifiers was assembled by Dustin Ingram, which tools MAY use as a reference for the identifier selection options to offer users when prompting the user to explicitly select the license identifier they intended for their project.

And then from those mappings:

BSD

- License :: OSI Approved :: BSD License
+ License :: OSI Approved :: BSD 2-Clause Plus Patent License (BSD-2-Clause-Patent)
+ License :: OSI Approved :: BSD 2-Clause "Simplified" License (BSD-2-Clause)
+ License :: OSI Approved :: BSD 3-Clause "New" or "Revised" License (BSD-3-Clause)

BSD is not enough to specify the license under which the software is released. This change specifies the license to be the 3-clause BSD license.
@jacobo-doist
Copy link
Contributor Author

@amix, please take a look at this. I've used the 3-clause BSD license here but, since the base problem is ambiguity, I'd still like to run this change by you.

The other contenders where:

Although there are more under: https://spdx.org/licenses/ I assumed, as per the source above, that "just BSD" would refer to one of these three.

Copy link
Member

@amix amix left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jacobo-doist I'm not an expert here, but this change looks good to me. Feel free to merge or modify as needed.

@jacobo-doist jacobo-doist merged commit 6e42bc5 into main Sep 11, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants