Unit testing 为单元测试选择软件许可证是否重要?

Unit testing 为单元测试选择软件许可证是否重要?,unit-testing,licensing,Unit Testing,Licensing,我已根据LGPL授权我的软件。我太懒了,无法在所有文件中包含许可头,因此跳过了单元测试文件。这是个问题吗?如果有人“窃取”了您的单元测试,您真的在乎吗 我不是律师,但是。。。顺便说一句,没有法律要求将许可证包括在内,只是人们喜欢遮住屁股。将许可证放在一个清晰的README.txt或license.txt文件中,并放在发布源代码的地方,这样就足够了。如果这让您失眠,只需编写一个脚本来填充许可证注释 根据评论更新: 如果你真的需要以明确的方式回答这个问题,我建议你联系懒惰和跳过步骤总是不好的。做正确

我已根据LGPL授权我的软件。我太懒了,无法在所有文件中包含许可头,因此跳过了单元测试文件。这是个问题吗?

如果有人“窃取”了您的单元测试,您真的在乎吗

我不是律师,但是。。。顺便说一句,没有法律要求将许可证包括在内,只是人们喜欢遮住屁股。将许可证放在一个清晰的README.txt或license.txt文件中,并放在发布源代码的地方,这样就足够了。如果这让您失眠,只需编写一个脚本来填充许可证注释

根据评论更新:


如果你真的需要以明确的方式回答这个问题,我建议你联系

懒惰和跳过步骤总是不好的。做正确的事。有效地做这件事。总是这样做。故事的结尾。

你可以考虑使用一个通用的、样板源文件来为你的项目添加你的名字和版权声明。复制它,而不是创建新文件。在签入每个源代码管理文件之前,请确保检查日期和信息。这是一个简单的步骤。

对于熟悉脚本语言的人来说,将版权头添加到项目中的每个源文件是一个非常简单的项目。如果您不懂Perl、Python或Ruby之类的脚本语言,那么现在是开始学习脚本语言的好时机

例如,下面是一个Perl脚本,它向自身添加了版权头:

#!/usr/bin/perl -w

use strict;

# Copyright Header Here

my $copyright_header = <<COPYRIGHT;
# MyProject v1.0
# Copyright Jader Dias, 2009
COPYRIGHT

open FILE, "<parse.pl" or die $!;
while ( my $line = <FILE> ) {
    if ( $line =~ /\#\s*Copyright Header Here/ ) {
        print $copyright_header;
    } else {
        print $line;
    }
}
close FILE or die $!;
#/usr/bin/perl-w
严格使用;
#版权标题在这里

我的$copyright_header=要直接回答这个问题(出于懒惰而在单元测试文件中略过许可证头是否有问题),我的直觉答案可能不是。开源纯粹主义者和法律专家可能会说,您需要在每个源文件中包含许可证。我认为这是一个很好的实践,但如果不这样做并不是世界末日,特别是如果您的代码附带LICENSE.txt文件。对于单元测试代码更是如此,它可能根本不适用于项目的上下文之外

我显然不是律师,但如果有人以不利于您的许可证的方式使用您的源代码(在本例中为LGPL),我很难想象争辩许可证未包含在特定的源文件中会有太多的理由。我希望那些想使用代码的人事先知道许可证是什么,如果有人偷了你的代码并称之为他们自己的代码,那就不好了,因为文件中没有许可证头。在我看来,偷窃就是偷窃,不管有没有写着“你不能偷这个”的标志:-)不幸的是,在我们生活的复杂世界里,这不可能是足够的。。。(叹气)


也许最好的答案是“安全总比遗憾好”,但请遵循您的直觉和您信任的经验丰富的开发人员的指导。我想这就是你为什么这么问的原因

你不能自动向所有文件添加标题吗?@Alan my IDE是Visual Studio。它会自动生成吗?我建议您将其分为两个问题:1:如何自动生成许可证文件。他说:我觉得很有趣,他问了一个问题,但大多数人回答了另一个问题,然后建议把未问的问题单独提出来。这是个好问题,但他没有问。啊,嗯。(顺便说一句,加上“最佳实践”)我投票结束这个问题,因为它是关于许可或法律问题,而不是编程或软件开发。有关详细信息,请参阅。如果它确实是开源的,而另一方确实是为了经济利益而窃取它,则SFLC()有代表所有者采取法律行动的历史。@Token,我想获得权威答案的唯一方法是发送电子邮件:softwarefreedom。org@Token来自SFLC的Eben Moglen,“我们不是一家诉讼公司;我们的首要任务不是为人民而战。事实上,我们的标准聘请人说,“如果你突然受到攻击,我们将帮助你自卫,我们将帮助你找到并资助长期顾问。”但我们的主要目标不是打仗,我们没有为此提供资金。我们的资金用于让人们远离麻烦这项不那么令人兴奋、更为常规的工作。简言之,在这种情况下,我不会指望SFLC提供任何重要的法律帮助。更多关于懒惰的信息并不总是坏的::p在有效地做它下面。我想真正的问题是你应该在完全没有意义的事情上花费任何努力。如果有一个许可证头没有什么区别,那么花时间自动处理许可证头是毫无意义的(不管你是否懒惰),这是一个很好的建议,尽管它没有直接解决他的问题。