stan-dev / posterior

The posterior R package
https://mc-stan.org/posterior/
Other
168 stars 23 forks source link

Choose license #20

Closed paul-buerkner closed 4 years ago

paul-buerkner commented 4 years ago

I don't have a strong opinion about it but it may be sensible to not use GPL3 as this causes a lot of trouble in industry (not necessarily for good reasons but still). GPL2 seems fine as does more permissive licenses as used by most tidyverse packages for instance.

jgabry commented 4 years ago

We could also go with BSD-3 (which is what Stan uses and is very permissive) or the MIT license (which is similar to BSD-3 I think and what RStudio packages seem to use a lot).

paul-buerkner commented 4 years ago

I agree. Both is fine for me. Since posterior is closely tight to the Stan verse of packages and Stan seems to have experience with this licence, I am leaning towards BSD-3.

paul-buerkner commented 4 years ago

I have added the BSD-3 licence for now so that we don't end up acidentally making it public without a proper licence but I will leave this issue open until you bascially give the ok for it.

jgabry commented 4 years ago

Actually it just occurred to me that this:

https://github.com/jgabry/posterior/blob/59d0aa7712e0dcd04248c470eafb3caec8dd3dfd/R/convergence.R#L1-L3

could be an issue. If this code is just copied from RStan instead of reimplementing it then we're including files from a GPL-3 package, which could prevent us from using BSD-3 (unfortunately RStan is GPL-3 for various historical reasons). It's fine to have GPL-3 packages in depends/imports/suggests but I think actually including files/code from a GPL-3 package might be a problem. But I'm not a license expert and could totally be wrong. Something to look into.

paul-buerkner commented 4 years ago

Yeah, the point is that most of the convergence stuff was re-written by Aki and me and just happend to be in rstan for some time. I am sure we would probably both agree to a more permissive licence. I would love to avoid GPL-3 to be honest and I would think nobody would really care here, but I am certaintly out of depth here. Do you know who we can ask?

jgabry commented 4 years ago

I'm not 100% sure, but I think as long as what's copied into posterior is stuff that is copyright to you and Aki and you both consent to licensing it under BSD-3 in posterior then it should be ok. But if we're including anything that was written by other people previously and copyrighted to someone/something other than you and Aki (and that has already been licensed under GPL-3) then I think at least we would need to get the consent of those other people to license it under BSD-3. But it looks like the code in

https://github.com/stan-dev/rstan/blame/develop/rstan/rstan/R/monitor.R

was only ever touched by @bgoodri and @maverickg and they would both probably consent. Alternatively, if anything written by those two is entirely replaced by something you or Aki wrote then maybe we're already ok.

I'm not sure who is an expert on open source licensing, but maybe we can ask at the next Stan meeting and someone might know.

jgabry commented 4 years ago

Licensing is super confusing!!

paul-buerkner commented 4 years ago

I switched to GPL-2 for now, which should be safe in any case, but leave this issue open until we made a final decision. Of the more permissive licences MIT seems to be much more frequently used in R packages than BSD3 but requires an extra licence file which we would need to think about (or amend from the tidyverse packages) if we choose to go this route.

paul-buerkner commented 4 years ago

Since I didn't hear any argument against GPL-2, I will close this issue now in order to move the beta release forward. Feel free to re-open this issue if you have any objections.

avehtari commented 4 years ago

Just for the record, I'm ok for using BSD3 license for the code I have written elsewhere if it is included in this package.

jgabry commented 4 years ago

@paul-buerkner Sorry for not responding sooner! What's the motivation for GPL-2? Also What are your concerns about the extra license file required by MIT and BSD-3? (I'm pretty sure both require the extra license file)

paul-buerkner commented 4 years ago

I just wanted to avoid the potential gpl3 issue we discussed but I dont really think it is a relevant issue so I am happy with MIT or BSD3. feel free to change it as you think it appropriate.

Jonah Gabry notifications@github.com schrieb am Mi., 6. Nov. 2019, 18:23:

@paul-buerkner https://github.com/paul-buerkner Sorry for not responding sooner! What's the motivation for GPL-2? Also What are your concerns about the extra license file required by MIT and BSD-3? (I'm pretty sure both require the extra license file)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jgabry/posterior/issues/20?email_source=notifications&email_token=ADCW2AGD2AQMUDMR735RSOTQSLVR7A5CNFSM4JGNGUPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDHD2KA#issuecomment-550386984, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADCW2ACNRQATEZHHVH7B72DQSLVR7ANCNFSM4JGNGUPA .

jgabry commented 4 years ago

@mjskay Any licensing preferences?

jgabry commented 4 years ago

I'm going to reopen this to remind me to think about this a bit more today and tomorrow.

Also @paul-buerkner does GPL-2 really avoid the problem we were concerned about? It might, I'm just not sure.

mjskay commented 4 years ago

I've got no licensing preferences, whatever works

paul-buerkner commented 4 years ago

In this case I would probably be in favour of MIT as it is very permissive and used by a lot of R packages. GPL2 may not avoid it but I dont really think there is an issue since nobody involved in the code I copied (Aki or me) is against more permissive licenses.

Matthew Kay notifications@github.com schrieb am Mi., 6. Nov. 2019, 18:56:

I've got no licensing preferences, whatever works

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jgabry/posterior/issues/20?email_source=notifications&email_token=ADCW2ADXUE55HM2K3U5ULYDQSLZLFA5CNFSM4JGNGUPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDHHOMY#issuecomment-550401843, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADCW2AFV2BGQJFHBLXHZCNLQSLZLFANCNFSM4JGNGUPA .

paul-buerkner commented 4 years ago

If we go for MIT, we need this additional LICENCE file. We could go for something like this:

YEAR: 2019
COPYRIGHT HOLDER: Paul Bürkner, Jonah Gabry, Matthew Kay, Aki Vehtari

or a little bit shorter and not entirely on point (since Matthew is not official member of the Stan dev team)

YEAR: 2019
COPYRIGHT HOLDER: Stan Development Team

My primary point is that I don't think the code in the convergence.R file is a problem licence wise and we should just pick a licence that is not GPL3.

@jgabry lets make a decision on this. We can also skype tomorrow or so if you like but I am really fine with every decision you make (as long as it is not GPL3).

jgabry commented 4 years ago

or a little bit shorter and not entirely on point (since Matthew is now official member of the Stan dev team)

What if we combine your two copyright holder options?

COPYRIGHT HOLDER: Paul Bürkner, Jonah Gabry, Matthew Kay, Aki Vehtari, Stan Development Team
paul-buerkner commented 4 years ago

Brilliant!

Jonah Gabry notifications@github.com schrieb am Mi., 6. Nov. 2019, 21:40:

or a little bit shorter and not entirely on point (since Matthew is now official member of the Stan dev team)

What if we combine your two copyright holder options?

COPYRIGHT HOLDER: Paul Bürkner, Jonah Gabry, Matthew Kay, Aki Vehtari, Stan Development Team

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jgabry/posterior/issues/20?email_source=notifications&email_token=ADCW2ABEO5NS6OSYEF3TKQTQSMMSXA5CNFSM4JGNGUPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDHXY7Y#issuecomment-550468735, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADCW2AH5DUVTFFQJBSVKWPDQSMMSXANCNFSM4JGNGUPA .

mjskay commented 4 years ago

or a little bit shorter and not entirely on point (since Matthew is now official member of the Stan dev team)

Hah, I am? Cool!

paul-buerkner commented 4 years ago

I ment not. Sorry for the typo...

Matthew Kay notifications@github.com schrieb am Do., 7. Nov. 2019, 02:18:

or a little bit shorter and not entirely on point (since Matthew is now official member of the Stan dev team)

Hah, I am? Cool!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jgabry/posterior/issues/20?email_source=notifications&email_token=ADCW2AGUV4BRC7L7OVINA73QSNNGPA5CNFSM4JGNGUPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDIONNA#issuecomment-550561460, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADCW2AG3K74L3J5XMKUICRTQSNNGPANCNFSM4JGNGUPA .

avehtari commented 4 years ago

It seems you were too hasty. The justification for BSD3 was that it's used by most parts of Stan and I agreed with that. I gave the permission for BSD3, and thus you have changed the license to MIT without my permission. Please be more careful with these changes and you still need to convince me that MIT would be better than BSD3. I an talk with Paul live today.

paul-buerkner commented 4 years ago

Sorry I misunderstood that. Let's talk later on today.

Aki Vehtari notifications@github.com schrieb am Do., 7. Nov. 2019, 09:20:

It seems you were too hasty. The justification for BSD3 was that it's used by most parts of Stan and I agreed with that. I gave the permission for BSD3, and thus you have changed the license to MIT without my permission. Please be more careful with these changes and you still need to convince me that MIT would be better than BSD3. I an talk with Paul live today.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jgabry/posterior/issues/20?email_source=notifications&email_token=ADCW2ABH7KBSFK3RHW3FKPLQSO6SRA5CNFSM4JGNGUPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDLOTBA#issuecomment-550955396, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADCW2ABM7S4JU63IVVVGOP3QSO6SRANCNFSM4JGNGUPA .

mjskay commented 4 years ago

I ment not. Sorry for the typo...

Hahaha, that makes much more sense

paul-buerkner commented 4 years ago

After discussion with Aki, we would prefer BSD3 over MIT primarily for consistency with other Stan packages that use more permissive licences than GPL so that we create less questions just because of licences with different names. I am sorry that I pushed this issue a little too hasty..

@jgabry, @mjskay from the discussion above, I understand that you are both fine also with BSD3. Please correct me if I misunderstood anything.

I switched "Stan development Team" to "Trustees of Columbia University" as this is what is stated in the monitor.R file of rstan.

I am going to ask @bgoodri and @maverickg for explicit permission via email.

jgabry commented 4 years ago

That's fine, although I think we still want a LICENSE.md file in the repository that contains the full license. CRAN just wants LICENSE to have those two lines about year and copyright holder (along with license name) but I think we also want LICENSE.md with the full license (and in Rbuildignore). Also, Columbia gave us permission to include "Stan Developers and their Assignees" rather than "Trustees of Columbia University" but Ben seems to still go with Columbia for RStan for some reason. But for example here's the license for stan-dev/stan: https://github.com/stan-dev/stan/blob/develop/LICENSE.md.

paul-buerkner commented 4 years ago

Thanks! I will add the LICENSE.md. In the email I am going to write, I will also ask Ben about this Trustees naming thing, so we can make an informed decision on that.

jgabry commented 4 years ago

Thanks! Can you cc me on that email?

paul-buerkner commented 4 years ago

Of course! That was the plan anyway!

Jonah Gabry notifications@github.com schrieb am Do., 7. Nov. 2019, 18:18:

Thanks! Can you cc me on that email?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jgabry/posterior/issues/20?email_source=notifications&email_token=ADCW2AALAHYG55SCCYHL2JDQSQ5TVA5CNFSM4JGNGUPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDM6KPQ#issuecomment-551150910, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADCW2AH3B5GPHWYMFFNHYSTQSQ5TVANCNFSM4JGNGUPA .

paul-buerkner commented 4 years ago

Jonah, can you tell me the full name and email adress of maverickg (via email if you prefer that)? I seem to be unable to find it on the internet.

jgabry commented 4 years ago

Jiqiang Guo. email is listed at https://mc-stan.org/about/team/

paul-buerkner commented 4 years ago

Reopening until all approvals have been received. Once this is done, we can make the repo public I think and announce the beta release.

paul-buerkner commented 4 years ago

With Ben agreeing BSD3, I think we are basically ready with the license.

I did not understand the conclusion about "trustees of columbia universty" but @jgabry it seems you did. Can you make the appropriate changes (if necessary) and then close this issue?

Afterwards, I think we can make the repo public and announce the beta release.

jgabry commented 4 years ago

@mjskay Is Michigan like Columbia in that they have copyright over your code/IP? (All Columbia employees have to sign something like that.) if so we can add Michigan to the copyright holders too.

mjskay commented 4 years ago

Good question. I just sent an email to our copyright office to double-check what that should be (if anything).

jgabry commented 4 years ago

Thanks!

paul-buerkner commented 4 years ago

With the license now chosen and the repo public, I think we can safely close this issue. If it turns out, we need to add more copyright holders, we can just do it or open a new dedicated issue for a specific licence purpose.

mjskay commented 4 years ago

Response from my copyright folks (emphasis mine):

Faculty members hold copyright in their scholarly works per SPG 601.28. "Scholarly work" is defined broadly: "SCHOLARLY WORKS means works authored by FACULTY within the scope of their employment as part of or in connection with their teaching, research, or scholarship. Common examples of SCHOLARLY WORKS include: lecture notes, case examples, course materials, textbooks, works of nonfiction, novels, lyrics, musical compositions/arrangements and recordings, journal articles, scholarly papers, poems, architectural drawings, software, visual works of art, sculpture, and other artistic creations, among others, regardless of the medium in which those works are fixed or disseminated."

You do not have to include the regents in your copyright notice on a scholarly work you created.

So you don't need to add Michigan to the copyright.

jgabry commented 4 years ago

Ok cool thanks!