carsonyl / pypac

Find and use proxy auto-config (PAC) files with Python and Requests.
https://pypac.readthedocs.io
Apache License 2.0
71 stars 18 forks source link

replace `tld` requirement which is under GPL2 license #61

Closed wavenator closed 2 years ago

wavenator commented 3 years ago

Hi folks.

The library requires tld for the sole purpose of parsing the tld out of the host in one place in the code. It makes using pypac a bit harder for commercial usage. There is a much more popular library called tldextract which is distributed under BSD-3clause license - which is much more permissive. I'd be happy to open a PR replacing tld with tldextract.

https://github.com/john-kurkowski/tldextract

carsonyl commented 3 years ago

tld seems to be under a triple license arrangement: "MPL-1.1 OR GPL-2.0-only OR LGPL-2.1-or-later". Wouldn't that meet your needs?

wavenator commented 3 years ago

Unfortunately no :( Yet I think switching to a more popular library like tldextract seems reasonable from other perspectives such as community adoption. WDYT?

carsonyl commented 3 years ago

I'm open to the idea, but I'd like to hear a concrete example for how LPGL tld is still unsuitable, because I'd rather not swap the dependency without certainty that it solves a problem.

The relative popularity of the 2 choices likely isn't an issue since they're both actively maintained. On the other hand, tld still supports Python 2.7, which is is nice because I still need to cater to some niche environments that use it.

wavenator commented 3 years ago

It makes it much harder to make a modification to the library. Also, using licenses of this type keep potential users away.

wavenator commented 2 years ago

Thanks a lot for making this change!