Удаление некоторого кода

  • Эта публикация - перевод статьи. Ее автор - Rich Salz. Оригинал доступен по ссылке ниже:

Это - еще одно обновление усилий по релицензированию программного обеспечения OpenSSL. Наш предыдущий пост за март сообщал о попытке объединения всех участников, с надеждой, что они поддержат это изменение.

К этому моменту около 40% людей ответили. Для проекта, который так же немолод, как OpenSSL (включая его предшественника, SSLeay, которому около 20 лет), это неплохо. В ближайшие пару месяцев мы продолжим наши усилия, чтобы связаться со всеми.

Из тех, кто отвечает, подавляющее большинство высказалось за изменение лицензии - менее дюжины возражали. В этом посте описывается, что мы делаем с этим и как мы пришли к нашим выводам. Цель состоит в том, чтобы быть очень прозрачным и открытым с нашими процессами.

Во-первых, мы хотим упомянуть, что мы уважаем решение этих людей. Несмотря на то, что нам неудобно, мы признаем их права хранить свой код в соответствии с условиями, на которые они первоначально согласились. Мы просим разрешения изменить условия лицензии и полностью в пределах своих прав сказать «нет».

Сайт лицензии управляется скриптами, которые свободно доступны в разделе лицензий нашего репозитория на GitHub. Когда мы начали, мы импортировали каждый отдельный git-код, искали все, что напоминало адрес электронной почты, и создавали таблицы для каждой фиксации, каждого найденного пользователя и журнал, который соединяет пользователей с фиксацией. Это обнаружило ложные срабатывания: иногда появлялись сообщения Message-ID, и часто упоминалось о людях как о проходящем побочном комментарии или о том, что они были в контексте diff. (Конечно, этот скрипт также находится в хранилище инструментов).

В таблице пользователя также есть столбцы для записи утверждения или отказа от изменения лицензии и комментариев. Большинство комментариев были благоприятными, и (что удивительно) только один или два были непристойными.

В  скрипте whattoremove обнаруживаются пользователи, которые отказались, и все они заявили, что они были названы. Затем мы рассмотрели каждую фиксацию - всего было 86, и отфильтровали те, которые были выбраны вишнями для других выпусков. Мы планируем только изменить лицензию для главного филиала, поэтому другие ветви выпусков не применимы. Были также некоторые очевидные ложные срабатывания. В конце этого шага мы рассмотрели 43 вопроса.

Затем мы перечитываем каждую фиксацию, ища то, что мы можем смело игнорировать, поскольку это не имеет значения. Мы обнаружили следующее:

  • Девять из них появились только потому, что человек упоминался в комментарии.
  • Шестнадцать из них были изменениями данных конфигурации OpenBSD. Команда OpenSSL полностью переписала это, реорганизовав все конфигурации BSD в общую иерархию, а материал конфигурации сильно изменился для версии 1.1.0.
  • Семь не были защищены авторскими правами, поскольку они были минимальными изменениями (например, исправление опечатки в комментарии).
  • Один из них был ложным.

Это оставило нам 10 коммитов. Два из них были связаны с движком CryptoDev. Мы удаляем этот движок, как видно из этого PR, но мы ожидаем вскоре замены (по крайней мере, для Linux и FreeBSD). Что касается других коммитов, мы удаляем этот код, как видно из этого первого PR. И этот второй PR. К счастью, ни один из них не особенно сложный.

Авторское право, однако,  сложная вещь - временами упрощает отладку. Если есть только один способ написать что-то, то этот контент не защищен авторским правом. Если работа очень мала, например, однострочный патч, тогда она не защищена авторским правом. Мы не юристы и не хотим становиться таковыми, но эти точки зрения действительны. Однако это не официальная юридическая консультация.

На следующем этапе мы надеемся, что мы сможем «вернуть» удаленный код. Мы обращаемся к сообществу за помощью и призываем вас создать соответствующие запросы на подачу GitHub. Мы просим сообщество рассмотреть этот второй PR и предоставить исправления.

И, наконец, мы просим всех взглянуть на список авторов и посмотреть, указано ли имя кого-либо, кого они знают. Если да, напишите нам.