Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change of covr license to GPL-3 #256

Closed
20 tasks done
jimhester opened this issue Mar 31, 2017 · 33 comments
Closed
20 tasks done

Change of covr license to GPL-3 #256

jimhester opened this issue Mar 31, 2017 · 33 comments

Comments

@jimhester
Copy link
Member

jimhester commented Mar 31, 2017

covr is currently MIT licensed, however a strict reading of the GPL-2 license for
dependency withr
(which is GPL >= 2) would require covr to also be GPL-2 or GPL-3. Oracle's'
legal representation suggested LICENSE MIT + file LICENSE + Portions GPLv3 with Additional Permission | GPLv3, but as this is a non-standard license it will be flagged by CRAN and
create additional maintenance hassles going forward.

Because of these concerns I now feel the most expedient thing to do is to
change the covr license to GPL-3, however in order to do so I will need
approval from all contributors (listed below). Please reply to this issue with
either

  • I accept the change of covr license to GPL-3
  • I reject the change of covr license to GPL-3

We can only change license if we get acceptance from all contributors.

Thank you for your time and I apologize for the disturbance, thank you again
for contributing to covr.

@kforner
Copy link
Contributor

kforner commented Mar 31, 2017 via email

@wibeasley
Copy link
Contributor

I accept the change of covr license to GPL-3 -@wibeasley

@helske
Copy link
Contributor

helske commented Mar 31, 2017

I accept the change of covr license to GPL-3.

@gaborcsardi
Copy link
Member

gaborcsardi commented Mar 31, 2017

@jimhester How about getting rid of the withr dependency?

EDIT: or trying to change withr to MIT?

@rmflight
Copy link
Contributor

rmflight commented Mar 31, 2017

I accept the change to GPL-3

However, I thought it was possible to call GPL packages within non-GPL packages and use a non-GPL license in the calling package without any issues.

Because otherwise, wouldn't this require that all of the packages using covr to also be GPL-3?

@jimhester
Copy link
Member Author

@gaborcsardi I cannot change the withr dependency because it inherits GPL>=2 from code adapted from devtools, and devtools inherits GPL>=2 from code adapted from R itself. I looked into removing the withr dependency, but I would end up just duplicating the code locally, which did not really seem within the letter of the licenses either.

@gaborcsardi
Copy link
Member

gaborcsardi commented Mar 31, 2017

@jimhester

:( Yeah, somebody else would need to rewrite those functions, just from the docs....

Btw. how about calling base R functions? Those are GPL, too...... I mean, if this is really a concern, then how can we have any non-GPL packages? Sorry, not really a question for you....

@kirillseva
Copy link
Contributor

@jimhester why not just reimplement those functions? I'm with @gaborcsardi on this one

used_withr_functions <- c(
  "with_dir",
  "with_makevars",
  "with_envvar",
  "with_output_sink",
  "with_options"
)

Honestly, this basic functionalities should be built into R itself, or be licensed as permissively as possible since they happen to be small, convenient building blocks that people tend to agree upon

@jimhester
Copy link
Member Author

@rmflight I think different people / organisations have different viewpoints on the licensing issue. Myself, RStudio and the R community in general seem to feel like MIT licensed packages can depend on GPL licensed packages without an issue, as the packages are obtained separately and assembled on the users computer. Oracle is taking a stricter view and insists on the package having to be GPL licensed if any package is GPL licensed and as @gaborcsardi mentioned R itself is GPL-2|GPL-3 licensed, so ¯_(ツ)_/¯.

In either case covr is a direct dependency on very few packages, even packages which have covr in Suggests: do so mainly by convenience, as covr is a developer tool not typically used when building or testing the package on CRAN or shipped with the package to users. So regardless of the covr license I do not thing it affects downstream dependencies.

I have been trying to deal with this license issue in the R Coverage Working Group for almost a full year now and see this license change as the best way to move forward.

@kirillseva
Copy link
Contributor

@jimhester would this approach work? #257
or is using withr's API is also a violation of copywrite

@HenrikBengtsson
Copy link
Contributor

I have been trying to deal with this license issue in the R Coverage Working Group for almost a full year now and see this license change as the best way to move forward.

Is that where Oracle comes in to the picture? I was bit confused why Oracle was mentioned at all.

@jimhester
Copy link
Member Author

Yes, most of the working group is from Oracle (https://wiki.r-consortium.org/view/Code_Coverage_Tool_for_R), they are also responsible for #247 to add icc support, which would require some sort of license resolution to be merged.

@enbrown
Copy link
Contributor

enbrown commented Mar 31, 2017 via email

@daroczig
Copy link
Contributor

I accept the change of covr license to GPL-3

1 similar comment
@jeroen
Copy link
Member

jeroen commented Mar 31, 2017

I accept the change of covr license to GPL-3

@kirillseva
Copy link
Contributor

Giving control over essential R tooling to Oracle... What could go wrong? :)

@kirillseva
Copy link
Contributor

I accept the change of covr license to GPL-3

@robertzk
Copy link
Contributor

robertzk commented Mar 31, 2017 via email

@krlmlr
Copy link
Member

krlmlr commented Mar 31, 2017

I accept the change of covr license to GPL-3

@HenrikBengtsson
Copy link
Contributor

I accept the change of covr license to GPL-3 (or whatever @jimhester prefers in the end).

Two thoughts:

  • If a change is badly needed and urgent, the decision can be procrastinated by keeping a dual licenses on GitHub and only make the license change on CRAN. (Not optimal, but buys time if needed).

  • If a rewrite of withr functions would be the preferred path, I could look into doing that / contributing such because I'm not contaminated by withr at all (= true); I've got old-style withYadayada() functions in R.utils that partly overlap and for the longest I considered making a with package - eventually withr came around.

In the bigger picture:
Although not the best place to discuss this, I don't know a better place to bring it up: are there are other legal voices involved in the 'Code Coverage Tool for R' working group than Oracle's? And in the bigger picture, in The R Consortium in general? If only single legal voice is speaking, and others are "I don't know enough about this so I'll just accept because they probably know what they're talking about and I don't want to be the one bothering others", then maybe this should be brought up as an concern to the R Consortium Board.

@brodieG
Copy link
Contributor

brodieG commented Mar 31, 2017

I accept the change of covr license to GPL-3

@kenahoo
Copy link
Contributor

kenahoo commented Mar 31, 2017 via email

@jonclayden
Copy link
Contributor

I accept the change of covr license to GPL-3.

I'm not a big fan of that license, but clearly a lot of discussion has already gone into this, so I'm happy for you to decide!

@wamserma
Copy link
Contributor

I accept the change of covr license to GPL-3

@kenahoo
Copy link
Contributor

kenahoo commented Mar 31, 2017

To make things easier, having already voiced my displeasure about it, I'll also say:

I accept the change of covr license to GPL-3.

-Ken

@wligtenberg
Copy link
Contributor

I accept the change of covr license to GPL-3.

@CSJCampbell
Copy link

I accept the change of covr license to GPL-3.

@jimhester
Copy link
Member Author

@stevepeak, @renkun-ken, @rmflight Could you please respond one way or the other to this issue? As mentioned we cannot change the license without full approval.

@rmflight
Copy link
Contributor

rmflight commented Apr 7, 2017

I am @rmflight, and I already replied above.

I accept the change of license of covr to GPL-3.

@jimhester
Copy link
Member Author

Sorry Robert, I missed checking off your approval, thanks for replying again!

@stevepeak
Copy link
Contributor

I accept the change of covr license to GPL-3
Thank you @jimhester

@renkun-ken
Copy link
Contributor

renkun-ken commented Apr 26, 2017

I accept the change of covr license to GPL-3.

Thank you @jimhester!

@jimhester
Copy link
Member Author

Thanks again to everyone for responding to this request and for contributing to covr!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests