Eclipse开源政策系列 – 12 – 第三方依赖评审指导手册

原文参考:
http://www.eclipse.org/org/documents/Eclipse_Policy_and_Procedure_for_3rd_Party_Dependencies_Final.pdf

背景

第三方软件可以由用户自己下载或安装,而不是作为其项目的一部分进行发布,通过申请这样的第三方软件作为项目的先决条件,项目就能完全绕过尽职调查过程,这是我们需要解决的关键问题。这是Eclipse社区关心的一个问题,因为我们的目标是发布经过充分IP审查从而因此可以商用的项目。
由于意识到可能无法精确地编撰一个过程,我们的建议是建立一个政策框架来供项目管理委员会(PMC)和Eclipse管理机构(EMO)使用以归类和判断各种情况,然后再由PMC和EMO自己执行和作出最终决定。

定义

依赖: 在Eclipse软件被设计成需要访问或者调用第三方软件的情况下——即使是通过间接的方式进行访问或调用——都会创建一个对第三方软件的“依赖”。这些依赖情况可能需要申请EMO的批准。
我们可以将这些依赖划分为两类: a) “共事(Works with) ”b) “前提(prerequisite)”。

a) 共事依赖(Works with Dependencies)

i) Eclipse软件不需要第三方软件一直存在。如果第三方软件存在,Eclipse软件就可以访问或调用它。例如:如果有一个web浏览器,点击Eclipse里面的URL就会使用用户配置的web浏览器打开URL。

或者

ii) Eclipse软件被设计和多个提供类似功能的第三方软件一起工作,至于到底使用哪一个取决于用户的选择。至少其中之一是一个先决条件(见下面)或者被EMO批准在项目中发布。例如:如果一个项目需要一个持久层机制,它可以允许用户从多个不同的实现中来选择。

b) “前提依赖(Prerequisite Dependencies): Eclipse软件需要第三方软件才能正确工作或者提供完整功能。例如:Eclipse需要Apache Ant。

政策

Eclipse基金会关于使用第三方软件的政策如下:

1. 每个PMC都有责任将所有属于Eclipse基金会代码或非基金会代码的 “works with”和“prerequisite”依赖都记录在案。作为这个过程的一部分,PMC需要决定依赖是属于“works with”和“prerequisite”中的哪一种类型。

a) 这些讨论和决定必须通过透明公开的渠道进行,比如通过PMC邮件列表发送邮件,或者发送会议记录。

b) 这些决定必须记录到项目的IP日志中,以确保在发布或其它评审检查点上的可见性。

c) 当PMC不确定某个依赖是属于“works with”还是“prerequisite”类型时,需要向EMO寻求建议。

d) 作为决定的一部分,PMC需要审核任何关于许可证兼容性的问题。如果依赖是在EMO记录在案的与EPL兼容的协议之外的许可证之下发布的,则PMC必须向EMO请求指导。

2. 所有由PMC判定为“works with”类型的依赖都被允许在项目中使用,而不需要EMO的进一步审核。

3. 所有的“prerequisite”类型的依赖必须经过EMO声明并审批。

4. 所有的“prerequisite”类型的依赖又可以分为两类:“免检型(exempt)的prerequisite”或“非免检(non-exempt)的prerequisite”。这个判定是由EMO在相关PMC和项目领导团队的辅助下完成。

a) 如果一个软件事实上已经非常流行,用户的机器上很可能已经安装了它,或者/并且对它进行IP审查是不可能的、不切实际的或者不明智的,EMO可将它归类为“exempt”类型。exempt类型的prerequisite型依赖可以在无IP评审的情况下被EMO审批启用。例如,Windows XP、Sun JRE。尽管如此,exempt类型的prerequisite型依赖也可能会被EMO出于某种考虑拒绝审批通过。。

b) 如果是一个non-exempt类型的prerequisite型依赖,则它必须通过IP评审过程并决定是批准还是拒绝在项目中作为prerequisite型依赖使用。

打赏一下
支付宝
微信
除非注明,博客文章均为原创,转载请标明文章地址
本文地址: http://www.javafxchina.net/blog/2015/12/eclipse-policy-12-procedure-for-3rd-party-dependencies-final/
百度未收录