博云违反 Apache 2.0 开源协议被要求整改,开源协议到底应该如何遵照?

开源

6 月 18 日晚,SegmentFault 思否收到 Apache 基金会提供的消息,云计算解决方案服务商博云在使用开源项目 Apache SkyWalking 时,违反了该项目声明的 Apache License Version 2.0 开源协议规定。html

Apache License Version 2.0 中明确注明了,当使用声明了 Apache License Version 2.0 的软件时,须要有显著的声明,不得有隐瞒和能够忽略的色彩。而博云在产品的宣传文件中,并无进行相关内容的展现以及说明。程序员

Apache 基金会发现该问题后,经过邮件与博云进行了问责沟通:apache

Apache

沟通后,博云方面积极进行了调整,并表示“没有把 Apache SkyWalking 装扮成自有产品的意思”,但确实在引用开源项目时作的不规范,违反了开源协议规定。segmentfault

clipboard.png

随着开源主义的发展和开源项目的日渐丰富,愈来愈多的开发者和企业会使用开源的软件和源码。但在实际使用的过程当中,不少人对于开源协议以及引用规范并非十分清晰,进而引发各类没必要要的争议甚至法律纠纷。性能

Apache SkyWalking 由于有强大的社区背书,被侵权后才能被迅速发现并得以顺利维权,而不少开源项目,哪怕声明了相关的开源协议,仍在被默默的被违规侵权使用。云计算

对此,咱们呼吁各企业和开发者在使用开源项目前,认真了解开源项目的意义与价值,遵照相关的开源协议,尊重他人的劳动成果。spa

咱们整理了一些与开源相关的基础知识,并以通用的开源协议 Apache License Version 2.0 为例,和你们解读一下如何正确遵照开源协议。翻译

什么是开源协议?

开源受权协议的产生,是为了更好地保护开源项目的产权。开源协议做为一种契约和受权方式,是用户合法使用软件做品的一个凭证,就至关于软件做者与用户之间签定的一份合同,并且是在有相应行为就默认接受的。违反协议将侵犯专利全部人的知识产权,专利全部人能够提起诉讼。3d

企业只有真的理解了开源协议,才能享受到开源带来的便利,并有效下降知识产权侵权风险。htm

对于开源受权协议的定义,咱们能够参考百度百科词条:

自由软件/开源软件是自由的,免费的,源代码开放的,咱们可自由下载安装和使用。同时,为了维护做者和贡献者的合法权利,保证这些软件不被一些商业机构或我的窃取,影响软件的发展,开源社区开发出了各类的开源许可协议。

开源许可协议有不少种,常见的开源许可协议有 Apache、BSD、GPL(GNU)、LGPL、MIT 等。乌克兰程序员 Paul Bagwell 曾画过一张分析图,说明应该如何选择开源协议。下面是阮一峰中文翻译版本:

开源协议

若是正确遵照开源协议

开源虽好,但在选择开源软件进行项目开发时必定要慎重,不只仅要对其性能进行检测,也须要对充分考虑其采用了哪一种开源协议、是否存在知识产权风险。

开源协议那么多,虽然大体相同但不一样的开源协议仍是会存在一些不一样的使用规范。

clipboard.png

上图是 Apache 软件基金会在 2019 年年度报告中,披露的 ASF 软件在全球个国家的下载量排名。能够看到,中国已然成为 Apache 软件基金会项目下载量最大的地区。

做为全球最大开源消费国,ASF 在国内有普遍的群众基础。今天咱们就以 Apache License Version 2.0 为例,来为你们解读如何正确遵照开源协议,避免陷引起没必要要的风险。

Apache License Version 2.0 鼓励代码共享和尊重原做者的著做权,一样容许代码修改,再发布(做为开源或商业软件)。Apache Licence 也是对商业应用友好的许可,使用者也能够在须要的时候修改代码来知足须要并做为开源或商业产品发布/销售。

协议中明确写出,只要遵照该许可的条款和条件的前提下,每位贡献者将被授予永久的、全球性的、非排他性的、免费的、免版税的、不可撤销的版权许可,以复制、准备衍生做品、公开展现、公开使用、再许可、分发本做品和其衍生做品(不管是以“源码”仍是“目标”形式)。

也就是不只能够用,还能够对基于 Apache License Version 2.0 的做品或衍生做品进行修改或增补,并应用到商业项目。但前提是知足如下几个条件:

  1. 须要给代码的用户一份 Apache Licence;
  2. 若是你修改了代码,须要在被修改的文件中说明;
  3. 在延伸的代码中(修改和有源代码衍生的代码中)须要带有原来代码中的协议,商标,专利声明和其余原来做者规定须要包含的说明;
  4. 若是再发布的产品中包含一个 Notice 文件,则在 Notice 文件中须要带有 Apache Licence。你能够在 Notice 中增长本身的许可,但不能够表现为对 Apache Licence 构成更改。

总结下来,就是须要在相关产品的 发行版本,Notice 文件、源码或文档里,添加归属声明的可读拷贝,并给接收者提供开源项目中提供的 Apache License Version 2.0 许可证的拷贝,在分发的衍生做品的源代码中,必须保留本做品源码中的全部版权、专利、商标和归属声明。

公司在使用 Apache License Version 2.0 受权的开源软件,进行分发的过程当中,不该隐瞒或故意忽略说起对此软件的使用。

其余的开源协议也相似,都有很是明确的使用规范与要求,在选择开源软件进行项目开发时必定要提早阅读协议。规范使用开源协议既是对开源协议的尊重,也能够避免自身的法律风险。

Apache SkyWalking, SkyWalking, Apache, the Apache feather logo 版权属于 Apache 软件基金会。

扩展阅读:

Apache Licene 2.0 协议英文文档:
http://www.apache.org/license...

OpenCV 拟更改受权协议,从 BSD 变动为 Apache License 2
https://segmentfault.com/a/11...

思否开源项目支持计划,为开源项目助力!

开源项目支持计划

很高兴能够看到,开源正迎来最好的发展时期。

20 年前的开源项目,基本上是由我的开发者主导的。但随着开源精神的发展以及开源文化的普及,愈来愈多的企业与科技公司参与到了开源生态的建设当中。

但归根结底,开源更多的是一种社会化活动,不少的项目创意也是来自我的或者小型团队。我的有了兴趣,有了想法,并进而动手造成项目,然后创建社区,或者成立公司继续推动。这种模式将会持续存在,也是技术创新的一种健康和合理途径。因此游离于大公司外的开源项目和植根于大公司内的开源项目,会长期共存。

但根据社区部分开源做者的反馈,大部分的优质我的开源项目很难进行有效的传播推广。


为助力优质开源项目成长,SegmentFault 思否社区做为服务于开发者的技术社区,正式推出「SFOSSP - 思否开源项目支持计划」,咱们但愿借助社区的资源对开源项目进行相关的宣传推广,并做为一个长期项目助力开源事业的发展,与广大开发者共建开源新生态。

有意向的开源项目负责人或团队成员,可经过邮箱提供相应的信息(开源项目地址、项目介绍、团队介绍、联系方式等),以便提高交流的效率。

联系邮箱:pr@segmentfault.com

clipboard.png