irfu / irfu-matlab

Matlab routines to work with space data, particularly with MMS and Cluster/CAA data. Also some general plasma routines.
59 stars 46 forks source link

Missing license information #85

Closed Grimler91 closed 2 years ago

Grimler91 commented 2 years ago

Step 1: Latest code?

Step 2: Describe your environment

Step 3: Describe the problem

There seem to be several scripts in the repo what there is no license information available, both for scripts like irf*.m, and also for third party scripts in contrib/matlab_central/.

Expected behavior

Typically a License.md file in the root of the repository is used to state what or which licenses apply to what parts of the repository. For at least some of the files in contrib/matlab_central the license file needs to be included when distributing the script. txt2mat and axescoord2figurecoord for example are licensed under BSD-3 Clause and BSD-2 Clause, respectively. For these licenses, the license file, with copyright information, is suppose to be distributed together with the file:

    * Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in
      the documentation and/or other materials provided with the distribution

Actual behavior

Only some parts of the repository contains license information.

Steps to reproduce:

Relevant code:

thomas-nilsson-irfu commented 2 years ago

Dear @Grimler91, thank you for reporting this issue.

While it is true that we do not currently have one single point of reference for the licenses of all individual functions included in irfu-matlab in such a root folder License.md file you suggests, we do try to respect the copyright conditions of each contributed file. And for files where the original author have stated an explicit license it should be included with the file in question (be it simply a "beer-ware license" which Yuri is fond of using in his code or a more "recognized" license like BSD-3).

As for the specific files you gave as an example, I would (initially at least) simply point you to: https://github.com/irfu/irfu-matlab/blob/master/contrib/matlab_central/txt2mat.m#L677-L703 and https://github.com/irfu/irfu-matlab/blob/master/contrib/matlab_central/axescoord2figurecoord.m#L29-L54 which does in fact already contain the required copyright/license notice since a number of years (added in commits like b1ae5f8156430ad6ff05128914dd0cd1785d75de). My understanding, (while not trained in the law), is that for instance BSD-3 does not require the license to be given in an explicit file along with the source code only that it is retained in each copy made of the file.

If you find some third party file, which does not already contain the correct license (as required by the original author) please let me know (with some reference to where the author specified it) and I will correct it immediately.

Grimler91 commented 2 years ago

Dear Thomas,

Is it safe to assume that all irfu scripts are licensed under "THE BEER-WARE LICENSE" (unless specified otherwise)?

I would (initially at least) simply point you to: https://github.com/irfu/irfu-matlab/blob/master/contrib/matlab_central/txt2mat.m#L677-L703

I completely missed that the license was part of the file there, thanks for pointing that out. I would guess that you are right and that this is enough to comply with the license.

Will let you know if I encounter any other ambiguities, thanks!