Важно ли выбирать программную лицензию для модульных тестов? [закрыто]
-
06-07-2019 - |
Вопрос
Я лицензировал свое программное обеспечение по лицензии LGPL. Мне лень включать лицензионные заголовки во все файлы, поэтому я пропустил файлы модульных тестов. Это проблема?
Решение
Чтобы прямо ответить на вопрос (является ли проблемой экономить заголовки лицензий в файлах модульных тестов из-за лени), мой интуитивный ответ, вероятно, нет. Пуристы с открытым исходным кодом и эксперты-юристы, вероятно, скажут, что вам нужно включать лицензию в каждый исходный файл. Я думаю, что это хорошая практика, но неудача - это не конец света, особенно если ваш код поставляется с файлом LICENSE.txt. Тем более для кода модульного теста, который, вероятно, вообще не применим вне контекста вашего проекта.
Я, очевидно, не юрист, но если кто-то будет использовать ваш исходный код способом, не способствующим вашей лицензии, (в данном случае LGPL), у меня возникнет проблема с представлением, что лицензия не была включена в конкретный исходный файл будет содержать слишком много воды. Я ожидал бы, что кто-то, кто захочет использовать код, заранее выяснит, что такое лицензия, и если кто-то украдет ваш код и назовет его своим, это не хорошо, просто потому что в файле нет заголовка лицензии. По моему мнению, кража - это кража, независимо от того, есть ли знак, который говорит: «Вам не разрешено красть это». :-) К сожалению, этого вряд ли будет достаточно в сложном мире, в котором мы живем ... (вздох)
Возможно, лучший ответ - "лучше безопаснее, чем извините", но следуйте своему инстинкту и советам опытных разработчиков, которым вы доверяете. Я думаю, именно поэтому вы спросили об этом. ; -) р>
Другие советы
Возможно, вы захотите использовать стандартный исходный файл для своих проектов, который включает ваше имя и уведомление об авторских правах. Скопируйте его вместо создания нового файла. Также обязательно проверьте даты и информацию, прежде чем регистрироваться, чтобы контролировать исходный код каждого файла. Это простой шаг.
Вас действительно волнует, что кто-то "украл"? ваши юнит-тесты? Р>
Я не юрист, но ... AFAIK, Нет юридического требования включить лицензию в каждый исходный файл , просто людям нравится закрывать попки. Включение вашей лицензии в тексте 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 $!;
В зависимости от структуры вашей программы вы можете либо заменить тег в исходном файле заголовком авторского права, либо просто добавить заголовок в самый верх файла. Р>
Лень и пропуск шагов - это всегда плохо. Сделать правильную вещь. Делай это эффективно. Делай это всегда. Конец истории.