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

Licensing is murky #5

Open
Stuk opened this issue Jan 17, 2017 · 5 comments
Open

Licensing is murky #5

Stuk opened this issue Jan 17, 2017 · 5 comments

Comments

@Stuk
Copy link

Stuk commented Jan 17, 2017

If this is "literally copied from the React 0.14 codebase" then it's also subject to the patent grant included with that release of React.

It would be good to clarify this.

@developit
Copy link
Owner

Indeed, that's a very good point. I generally compile PropTypes out, so I might have missed something important for those who don't do the same. It's possible that PropTypes might be worth a cleanroom implementation of some kind, or perhaps a dummy implementation that simply satisfies the required interface but has no actual functionality would suffice and resolve any license issue.

@Stuk
Copy link
Author

Stuk commented Jan 17, 2017

Yeah, a cleanroom re-implementation would be ideal, but obviously a lot of work.

I think the easiest thing to do would be to add the PATENTS file from the React release this code is from to the repo and add a note to the readme.

The other concern I have is that this as a dependency of preact-compat could cause issues for those using Preact to avoid the patents issue, so it might be worth mentioning that there as well, and the solution of compiling it out.

@developit
Copy link
Owner

That's actually the sole reason PropTypes is kept out of the preact-compat bundle - licensing. It's just referenced as an external dependency. It's just exported as a proxy object, but you can alias the import to an empty file/object and entirely disable PropTypes while still using preact-compat.

I'm alright slating a clean implementation here, it's just a bit of a pain point for me since I am not familiar with the API and all the use-cases having avoided it almost entirely myself. It's the best option though. I am not even sure we're allowed to copy the PATENTS file - it might constitute asserting ownership, whereas this repo currently is just a mirror.

Another option might be to find a way to replace this "extracted" code with a build job that does the extraction from React's source. I'm not sure what the effect would be on licensing, but it'd be a build tool as opposed to a copy of the original code.

@sapegin
Copy link
Contributor

sapegin commented Jul 26, 2017

In any case the PATENTS file is mentioned in the source but not present which feels bad. I also think you can’t just publish this module under the BSD license because you’re using the code which is licensed by a license that requires a patent grant.

Do we still need this package at all? Since Facebook released their own prop-types package and since this one doesn’t really solve licensing issue, I don’t see any benefits of this package anymore.

@sapegin
Copy link
Contributor

sapegin commented Jul 26, 2017

I think the right way to solve this is to relicense prop-types without the PATENTS file and deprecate this package. This would allow any Preact-like library to use the same package and would solve all licensing issues of this package.

See facebook/react#10191 as well.

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

No branches or pull requests

3 participants