Giter Site home page Giter Site logo

Licence question about rstantools HOT 9 CLOSED

stan-dev avatar stan-dev commented on June 7, 2024
Licence question

from rstantools.

Comments (9)

jgabry avatar jgabry commented on June 7, 2024

@jan-glx Very sorry for the slow response. Wasn't ignoring this question, it just got lost in the tons of issues and emails! Anyway, the issue with the license fundamentally has to do with the license for the Rcpp package. @bgoodri told me that https://github.com/facebook/prophet (which uses RStan and hence Rcpp) gets around this somehow, but I'm not sure exactly what they do.

from rstantools.

jan-glx avatar jan-glx commented on June 7, 2024

I have almost no legal education, but as far as I understand, the Rcpp library and the Libraries are only linked against when a user installs my package so there is no need for me to license my code under GPL because of this (I would need to for binary builds and my lincence would need to be GPL compatible, eg. MIT). However, since rstantools downloads that GPL-licensed make_cc source code file from ratanarm I am restricted to publish my package under GPL.
You could lift that restriction from users of you package in three ways:

  • re-implement make_cc.R etc. and licence und MIT or BSD
  • ask rstanarm authors to licence these files under MIT or BSD
  • perform the download and patching of make_cc.R etc. on the installation of your user's packages

BTW, I think you could publish your package under MIT - depending on a GPL R package does not require your package to be GPL (otherwise all R packages would be (since they depend on base).

from rstantools.

jgabry avatar jgabry commented on June 7, 2024

Thanks for following up. I'm afraid I don't have much legal education either on this topic, but some of my stan-dev colleagues know a lot more than I do about these issues. @bgoodri any thoughts on this? If it's true that one of the options suggested by @jan-glx would lift the restriction then I'm certainly in favor of doing it.

from rstantools.

bgoodri avatar bgoodri commented on June 7, 2024

from rstantools.

jan-glx avatar jan-glx commented on June 7, 2024

Yes, if the package is distributed as binary this binary package by CRAN it needs to be licensed under GPL in the opinion of the FSF.
And other than the authors of e.g. the rubias, fourierin, treespaceandtokenizers` packages, I probably would not risk myself to be sued by Rcore or Rcpp authors or any of their dependencies.

However, all that does not matter for the distribution of the source version of my package or at least the source code itself. In the current situation I could licence all code of my package under e.g. MIT except for the files added by rstantools which force me to license the combination under GPL.

from rstantools.

jgabry avatar jgabry commented on June 7, 2024

@bgoodri, if @jan-glx is right about source versions then is there a way we can avoid having to pull the gpl files from rstanarm and still make rstan_package_skeleton do what we need it to do?

from rstantools.

bgoodri avatar bgoodri commented on June 7, 2024

from rstantools.

andrjohns avatar andrjohns commented on June 7, 2024

Closing this issue given its age, but feel free to re-open if it was never resolved

from rstantools.

jan-glx avatar jan-glx commented on June 7, 2024

It seems like this issue was indeed fixed in e44ffad and related commits (when switching from downloading accessory files from stanarm codebase to copying files from /inst.

from rstantools.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.