VNPY官方项目为什么不选择MIT开源协议
作者:互联网
其他文章
《vnpy3.0新版策略自动生成回测文件功能代码解析》
众所周知,VNPY是采用基于PYQT技术的Python开源框架,而PyQt技术上的授权上是 GPL 和 商业 双重授权。
PyQt5在Riverbank公司商业许可和GPL v3的所有平台上获得双重许可。可以采用以下方案之一:
(1)如果想免费用,就必须选用 GPL , 那么开源项目代码也不能收费,但可以通过服务收费。
(2)购买 Riverbank公司商业许可 , 那么软件就可以商业化,可以收费。 否则就是违反开源协议的行为。
GPL的”传染性”是指:代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布销售。 GPL协议要求只要在一个软件中使用(”使用”指类库引用,修改后的代码或者衍生代 码)GPL协议的产品,则该软件产品必须也采用GPL协议,必须开源和免费。
GPL协议产品作为一个单独的产品免费使用没有任何问题。但凡使用了GPL类库的软件产品必须使用GPL协议,对于使用GPL协议的开源 代码,商业软件或者对代码有保密要求的部门就不适合集成/采用作为类库和二次开发的基础。
也就意味着,如果基于PyQT GPL传染性进行商业软件开发,就必须每个商业用户都购买License。
所以对我们VNPY官方来说,如果选择使用MIT这样的宽松协议,即便我们购买了购买 Riverbank公司商业许可 ,也不代表我们的用户可以使用PyQt而不购买购买 Riverbank公司商业许可 。
更重要的是,如果一个开源项目从一开始就使用了MIT协议,就意味着放弃了除原始作者以外的所有权利。
赠送别人的东西,可以索回吗?从法律意义上,不能。
如果基于MIT协议开源,也就意味着,不仅放弃了除了原始作者以外所有的权益,也无法更改成GPL协议。
道理很简单,如果你放弃了某项权利或转赠了某项权利,是不可以索回的。
既然已经放弃了权利,就无法再重新索取获得权利,即如果一开始使用了MIT协议,是不可以再改用GPL协议发布的,但同时不意味着对项目用户更加宽松,因为用户依然会受PyQT开源协议传染性限制,既不花钱就只能继续采用GPL协议开源。
这样尴尬之处在于,不仅我们放弃了除原始作者以外的权利而且我们的用户享受并未合法获得MIT协议的好处。如果这这样选择开源协议,不仅我们自己不合法,还证明了自己在开源软件领域不遵守开源协议的非法性。
意味着,从一开始就采用了MIT协议又使用了PyQt技术的开源项目,将陷入无比尴尬的境地,既不可以索回权利改用GPL协议,也不能合法的继续使用MIT协议。开源协议需要每一个人遵守,如果因为开源者本身从一开始就选错了协议,那么从法律上就已判了该开源项目死刑。
VNPY官方严格按照PyQt的要求采用GPLV3开源协议,同时需大家注意:市面上有打着我公司采用MIT协议开源VNPY项目并未得到我司授权,其行为不仅违反了我公司GPLV3开源协议,也同时也违反了PyQT开源协议。开源合法性存在质疑。
VNPY项目代码基于GPLV3开源协议,是自主研发推动的项目,也未授权任何公司改用其他协议(例如MIT协议)进行开源,请每一个使用本项目商业用途方注意开源授权风险。
vnpy开源项目
标签:GPL,VNPY,协议,开源,使用,MIT 来源: https://blog.csdn.net/u011513829/article/details/122797743