4 ms·
Incredible! The sphinx docs look great. Also, the logo! Not to mention, the translations: - https://pygame-zero.readthedocs.io/zh_CN/latest/ https://pygame-ze
by tony 7y ago
Incredible!
The sphinx docs look great. Also, the logo! Not to mention, the translations:
- https://pygame-zero.readthedocs.io/zh_CN/latest/ https://pygame-zero.readthedocs.io/zh_CN/latest/
- https://pygame-zero.readthedocs.io/ja/latest/ https://pygame-zero.readthedocs.io/ja/latest/
- https://pygame-zero.readthedocs.io/sk/latest/ https://pygame-zero.readthedocs.io/sk/latest/
One reason of why I wouldn't use it yet: LGPL.
This is the issue pygame had when I tried it. The license made it very difficult to incorporate and use in practice, and I ended up playing with kivy instead (https://github.com/kivy/kivy https://github.com/kivy/kivy). The reasons why:
1. Writing anything commercial would be a gamble. I've wrote at length on why this license isn't meant for scripting languages, but even if it's a compiled language, SDL moved away from LGPL here: https://youtu.be/MeMPCSqQ-34?t=430 https://youtu.be/MeMPCSqQ-34?t=430.
2. LGPL and scripting languages just don't work from an open source perspective. It's not copy-paste and vendorize friendly. Functions can't be copied a la carte. I'd rather write something from scratch than link an LGPL library in one of my MIT licensed projects. I'm just not willing to open downstream users to the risk. What ends up happening is 5/10 years on, someone ends up writing a new MIT/BSD library to get around a viral one (e.g. GCC -> Clang/LLVM).
- mattkrause 7y agoI'm not sure this is the sort of library you'd use for a commercial project; it seems like it's aimed at teaching beginning programming instead.
- _carl_jung 7y agoDo you have any links for the implications for commercial use? If I released a game made with PyGame, what's the gamble? I've seen examples of people using it commercially [0]. [0] https://www.reddit.com/r/gamedev/comments/16d5ak/is_pygame_or_any_other_python_gamedev_library/c7uz2y6?utm_source=share&utm_medium=web2x https://www.reddit.com/r/gamedev/comments/16d5ak/is_pygame_o...
- tony 7y agopygame has successful deployments onto steam, but it doesn't show us developers that would have used for pygame if it wasn't for licensing concerns. LGPL in scripting languages is a gray area. There are no previous legal cases to cite. Python projects have transferred away from LGPL due to its ambiguity. Example dating back to 2004: https://twistedmatrix.com/pipermail/twisted-python/2004-May/007946.html https://twistedmatrix.com/pipermail/twisted-python/2004-May/... Namely around the language of what creates a derivative / combined work: LGPL was intended for languages that use header files, like C and C++. So, if a project was ever accused of creating a combined work, they'd be on the hook to defend the the case, whether or not a combined work is created. In v2, the license even shifts the question onto licensee/licensor: "The threshold for this to be true is not precisely defined by law." In licenses such as BSD/MIT/ISC/etc. these issues do not arise, and a breeze through top python projects show reciprocal contributions and access to source are commonplace without viral clauses in licenses. I write about LGPL/python at length before here (2013): https://github.com/ScottDuckworth/python-anyvcs/issues/32#issuecomment-28528142 https://github.com/ScottDuckworth/python-anyvcs/issues/32#is... and (2016) https://github.com/PyGithub/PyGithub/issues/468#issuecomment-252437234 https://github.com/PyGithub/PyGithub/issues/468#issuecomment... For gaming, it's even more relevant, because if the deployment is to steam or a mobile phone (like what kivy does with https://github.com/kivy/python-for-android https://github.com/kivy/python-for-android), that could easily be interpreted as a combined work. They're not like C/C++ application linking to .so / shared libraries.
- _carl_jung 7y agoSo there are numerous deployments of "successful" games using PyGame, and no court cases by the creators/maintainers of PyGame towards those game developers? I'll take my chances. I don't see what PyGame's motivation would be to open such cases.