[ANN] CommonLicenses.jl

New Package

I just wrote ~Licenses.jl~CommonLicenses.jl! ~And I need help with naming…~

Overview

I’ve found myself cutting and pasting an MIT license into my Pluto notebooks. We’ll all be writing more executable documents in 2023, so I wrote a simple package which queries https://spdx.org/licenses for a requested SPDX identifier. It also queries the GitHub License API to see if more information is available there (hints for permissins, conditions, limitations). Then, a License type is constructed which displays with MIME types, like any other Julia type.

The end result is: you can type the following into your Pluto notebook to conveniently license your executable document.

using Licenses: MIT

MIT(copyright="Joe(y)")

Naming

Edit: Went with CommonLicenses!

I like the name Licenses, but I feel conspicuous taking a package name that is such a common / general word. That said, I do not think SPDXLicenses is appropriate, because SPDX files are their own thing: see SPDX.jl.

What do folks think?

4 Likes

what about SoftwareLicenses?

3 Likes

Yeah that’s definitely an option. I thought of OpenSourceLicenses, but this works for Creative Commons and other licenses too. I felt like the CC licenses are separate from software, but maybe that’s wrong?

The spicy matrix has spoken, and I rather like OpenLicenses.

4 Likes

That may be the best use for CharGPT I’ve seen. I’m terrible at naming things. Just ask my children, One and Two

13 Likes

So cute! But Base.eachindex is highly recommended here. :wink:

2 Likes

Can’t find anything wrong with “Licences”…

2 Likes

Yeah I now think open may be misleading.

Ended up going with CommonLicenses, thanks all!

7 Likes