开源协议的更换问题
-
开源协议的更换问题:是否存在有规定选择后就不能再更换了的开源协议?
就像mc里的"绑定诅咒"附魔属性一样,穿上了某个含有该属性的装备,就再也脱不下来了
-
一个猜想:不同的开源协议有不同的约束松紧程度,更换问题可以看成松紧程度的变化,如果变松了,可能对该项目的所有以它为依赖的下游项目不会产生太大影响,如果变紧了,可能这个影响是剧烈的,所有以它为依赖的下游项目都有可能受到影响。
-
一般来说项目一发布他的协议就更换不了了, 要更换只能在新版本中更换且不违反"当前直接使用项目的协议" (例如GPL具有传染性的协议) 像rust库的发布就有类似要求:
-
@Littlefean 这个问题就是通过已经发布项目的版本协议不可更改的原则 。不影响下游使用库的开发者使用指定的版本。
-
确实,忘了版本号的问题了,依赖都是有固定版本号的,同一版本号里开源协议不能变但版本号变了开源协议就可以变了。