代码之家  ›  专栏  ›  技术社区  ›  azheglov

在我的开源项目下载中包括nunit?[关闭]

  •  1
  • azheglov  · 技术社区  · 15 年前

    我正在考虑两种可能性:

    1. 在源代码中包含nunit 开放源代码项目的 对潜在的贡献者来说 立即运行自动测试。我觉得在这个项目中推广“测试优先”的文化是很重要的(或者至少让每个人都明白测试很重要)。
    2. 分发源代码时不使用 但是我得描述一下 这个 自述文件 如何进行测试 运行并包含到nunit的链接 下载页面。

    问题:1是合法的吗?这两个选项中哪一个通常是首选的?我想听听熟悉法律许可证的人和熟悉常用做法的人的意见。

    3 回复  |  直到 15 年前
        1
  •  2
  •   monksy    15 年前

    就合法性而言,我不是律师,你应该和律师谈谈。

    在开源项目中包含单元测试。发布时不必重新分发[n/j]单元运行库。

    让我换个说法。不要在项目中重新分配j/nunit运行时间。您可以在项目中保留单元测试。唯一一次你想要重新分配单元框架的时候是如果版本正在消失,你不能使用一个更新的版本。

        2
  •  0
  •   Wayne Molina    15 年前

    许多项目使用外部库来实现这一点,因此任何签出它的人都会立即拥有所有的二进制文件,以防他们需要额外的库。我看到过一些项目,其中包含了它们所需工具的完整二进制副本,因此您拥有应用程序所需的确切版本,另外还有一个文件夹,其中只包含确切的DLL或项目所需的任何内容。

        3
  •  0
  •   azheglov    15 年前

    我自己来回答这个问题。

    首先,将我们的开源产品的二进制发行版(面向用户)与其源代码存储库(面向开发人员/贡献者)分开是很重要的。这个问题真的与后者有关。我以两个开源产品为例。

    单元测试

    • binary:依赖于 适合 (包括在许可证中)
    • 源:依赖于 南特 (自己下载)和 日志4net (不含许可证)

    最低限价

    • 二进制:无依赖项
    • 源包括以下外部依赖项:
    • 银光 测试工具-未经许可而提供
    • Microsoft.NET框架 引用程序集-无许可证
    • 城堡 -包括许可证(Castle项目使用Apache许可证,根据我对它的了解,这是一项要求)

    因此,将第三方开发/构建/测试工具与源代码(而不是生产二进制文件)结合在一起似乎是一种常见的做法,并且根据许可证类型及其要求,这些工具可以包含许可证通知,也可以不包含许可证通知。为了以防万一,您可以包括许可证。