Currently the templates all have a "license": "ISC" field in their package.json. This is mostly invisible to developers, meaning they run the risk of publishing code under this license without ever thinking through it as a choice.
If we want to change something here, we have three options:
- Choose a different license, e.g. Apache 2.0
- Make the license a template parameter which has to be chosen explicitly
- Remove the license altogether
The last option is what the other language templates over in the spin repo do, and might make most sense.
The downside is that code published with that default doesn't come with any license, but that at least retains full control for the author.
Though now I just realize that the templates themselves contain code that we need to assign a license to. If we just remove the license field, that makes it inherit the containing repo's license—in this case Apache 2.0+LLVM exception. Which in turn means it'd be invalid to publish it without any license information at all.
We can work around that by explicitly making it public domain, but that is non-trivial in and of itself.
Currently the templates all have a
"license": "ISC"field in theirpackage.json. This is mostly invisible to developers, meaning they run the risk of publishing code under this license without ever thinking through it as a choice.If we want to change something here, we have three options:
The last option is what the other language templates over in the
spinrepo do, and might make most sense.The downside is that code published with that default doesn't come with any license, but that at least retains full control for the author.
Though now I just realize that the templates themselves contain code that we need to assign a license to. If we just remove the license field, that makes it inherit the containing repo's license—in this case Apache 2.0+LLVM exception. Which in turn means it'd be invalid to publish it without any license information at all.
We can work around that by explicitly making it public domain, but that is non-trivial in and of itself.