Skip to content
  • Marcel Schilling's avatar
    6e41ea1f
    docs: Re(/sub-)license: MIT -> AGPL-3.0-or-later · 6e41ea1f
    Marcel Schilling authored
    While I am generally fine with contributing code under a permissive
    license to other projects, I prefer strong copyleft free software
    licenses for my own project.
    By forking the `calendR` package I took over the maintenance burden for
    this new project. This means I will invest more time into `calendRio`
    than I would have in `calendR`. Thus, I prefer my work (and its users)
    to be protected by a more restrictive license.
    
    The licensing terms of the upstream `calendR` package explicitly grants
    'the [right] to [...] sublicense [...] subject to the [...] conditions
    [that] [t]he [...] copyright notice and [the licensing] notice shall be
    included in all copies or substantial portions of the Software.'
    These conditions are met by the header comments of all files retained
    from the upstream `calendR` R package.
    Additionally, this is clarified once more in the README Markdown file.
    Furthermore, this licensing change was discussed and sanctioned by the
    maintainer of the upstream package (see
    https://github.com/R-CoderDotCom/calendR/issues/15
    
    ).
    
    The `NAMESPACE` file (as well as the entire `man` directory) have been
    deleted and re-generated via
    
    ```sh
    Rscript -e 'roxygen2::roxygenise()'
    ```
    
    Thus, they have been derived from source files (now) licensed under the
    terms of the GNU Affero General Public License Version 3. This requires
    these files to be distributed under the same licensing terms as well.
    
    Since this leaves no single file left under the original MIT license
    used by upstream, the REUSE specifications demand the removal of the
    corresponding license text file from the `LICENSES` directory.
    Note that the license test is still available via the README Markdown
    file as well as the header comment of every file originally released
    under those terms.
    
    Unlike the (ambiguous) `MIT` license, the `AGPL (>= 3)` does not prompt
    for a ` + LICENSE`-suffix in the `DESCRIPTION` file. Therefore,
    `devtools::check()` expects not to have a `LICENSE` file present in the
    top-level directory. While removing it would be in line with the REUSE
    specifications as well, GitLab (and GitHub) uses this file to determine
    the project's LICENSE. Thus, I decided to keep a symbolic link to the
    GNU Affero General Public License Version 3 and add it to the
    `.Rbuildignore` file to hide it from CRAN.
    
    While some minor files that are part of `calendRio` are released under
    the permissive terms of the GNU All-Permissive License, I decided to
    mention the GNU Affero General Public License Version 3 in the
    respective header comments as well. This is to stress the fact that
    while the permissive terms stated in those files do apply to those file
    specifically, the entire project is subject to more restrictive
    licensing terms.
    Note that this is redundant due to the REUSE conformity. However, REUSE
    is necessarily well-known enough to avoid confusion without these
    explicit human-readable notes.
    
    Signed-off-by: default avatarMarcel Schilling <foss@mschilli.com>
    6e41ea1f
    docs: Re(/sub-)license: MIT -> AGPL-3.0-or-later
    Marcel Schilling authored
    While I am generally fine with contributing code under a permissive
    license to other projects, I prefer strong copyleft free software
    licenses for my own project.
    By forking the `calendR` package I took over the maintenance burden for
    this new project. This means I will invest more time into `calendRio`
    than I would have in `calendR`. Thus, I prefer my work (and its users)
    to be protected by a more restrictive license.
    
    The licensing terms of the upstream `calendR` package explicitly grants
    'the [right] to [...] sublicense [...] subject to the [...] conditions
    [that] [t]he [...] copyright notice and [the licensing] notice shall be
    included in all copies or substantial portions of the Software.'
    These conditions are met by the header comments of all files retained
    from the upstream `calendR` R package.
    Additionally, this is clarified once more in the README Markdown file.
    Furthermore, this licensing change was discussed and sanctioned by the
    maintainer of the upstream package (see
    https://github.com/R-CoderDotCom/calendR/issues/15
    
    ).
    
    The `NAMESPACE` file (as well as the entire `man` directory) have been
    deleted and re-generated via
    
    ```sh
    Rscript -e 'roxygen2::roxygenise()'
    ```
    
    Thus, they have been derived from source files (now) licensed under the
    terms of the GNU Affero General Public License Version 3. This requires
    these files to be distributed under the same licensing terms as well.
    
    Since this leaves no single file left under the original MIT license
    used by upstream, the REUSE specifications demand the removal of the
    corresponding license text file from the `LICENSES` directory.
    Note that the license test is still available via the README Markdown
    file as well as the header comment of every file originally released
    under those terms.
    
    Unlike the (ambiguous) `MIT` license, the `AGPL (>= 3)` does not prompt
    for a ` + LICENSE`-suffix in the `DESCRIPTION` file. Therefore,
    `devtools::check()` expects not to have a `LICENSE` file present in the
    top-level directory. While removing it would be in line with the REUSE
    specifications as well, GitLab (and GitHub) uses this file to determine
    the project's LICENSE. Thus, I decided to keep a symbolic link to the
    GNU Affero General Public License Version 3 and add it to the
    `.Rbuildignore` file to hide it from CRAN.
    
    While some minor files that are part of `calendRio` are released under
    the permissive terms of the GNU All-Permissive License, I decided to
    mention the GNU Affero General Public License Version 3 in the
    respective header comments as well. This is to stress the fact that
    while the permissive terms stated in those files do apply to those file
    specifically, the entire project is subject to more restrictive
    licensing terms.
    Note that this is redundant due to the REUSE conformity. However, REUSE
    is necessarily well-known enough to avoid confusion without these
    explicit human-readable notes.
    
    Signed-off-by: default avatarMarcel Schilling <foss@mschilli.com>
This project is licensed under the Other. Learn more
Loading