30.09.2020

Фонд СПО планирует запустить новую платформу совместной разработки и хостинга кода


Фонд свободного ПО объявил о намерении создать новый хостинг кода, поддерживающий средства для организации совместной разработки и соответствующий ранее выработанным этическим критериям хостингов свободного ПО. Новая платформа дополнит уже существующий хостинг года Savannah, сопровождение которого будет продолжено без изменений. Целью создания нового хостинга называется желание решить проблему с инфраструктурой разработки СПО. В настоящее время многие свободные проекты зависят от платформ совместной разработки, не публикующих свой код и вынуждающих использовать проприетарное ПО.

Платформу планируется ввести в строй в 2020 году и построить её на основе уже существующих свободных решений для организации работы над кодом, развиваемых независимыми сообществами, не привязанными к интересам отдельных компаний. Решение о выборе проекта пока не принято, но основными вариантами являются Sourcehut, Gitea и Pagure, которые активно развиваются, распространяются под свободными лицензиями и поддерживают двухфакторную аутентификацию. Решения, ориентированные на разработку проектов отдельных сообществ, организаций и компаний, такие как Kallithea, Allura и Phabricator, изначально не рассматривались, так как задачей является создание публичной платформы, позволяющей пользователям заводить учётные записи и создавать свои репозитории.

Наиболее вероятным претендентом рассматривается платформа Pagure, развиваемая разработчиками Fedora Linux. Из достоинств Pagure называется опыт применения платформы для разработки СПО, возможность адаптации для использования LibreJS, поддержка импорта и экспорта сообщений о проблемах и merge-запросов из других систем, возможность использования своих пространств имён для проектов. Из недостатков отмечается излишняя зависимость от JavaScript и проблематичность работы без включения JavaScript в браузере.

Второй претендент Gitea уже используется Европейским Фондом СПО в своём хостинге git.fsfe.org, а также лежит в основе хостинга открытого ПО codeberg.org. Из достоинств Gitea называется частичная поддержка LibreJS. Недостатком, как и в Pagure, является зависимость от JavaScript, а также отсутствие инструментов для импорта/экспорта и ведения разработки проекта на платформе GitHub, требующей запуска несвободного JavaScript-кода.

Платформа Sourcehut хороша возможностью полноценной работы без JavaScript, лёгкостью реализации поддержки LibreJS, наличием средств экспорта данных (импорт в разработке), полным соответствием категории «А» этических требований (см. ниже), наличием wiki, системы непрерывной интеграции, системы обсуждения на базе email, поддержкой Mercurial и распространением кода под лицензией GPLv3. Недостатками являются незавершённость разработки (платформа находится на стадии альфа-тестирования), усложнённая навигация по коду и issues, отсутствие web-интерфейса для запросов на слияние (merge-запрос создаётся через заведение тикета и прикрепления к нему ссылки на ответвлённую ветку в Git).

Применение GitLab было сразу отклонено. Несмотря на то, что данная платформа очень популярна, привычна и предоставляет широкие возможности, проект развивается коммерческой компанией, привязан к проприетарному коду Google ReCAPTCHA, не позволяет без лишних сложностей обеспечить поддержку LibreJS, имеет негативный опыт попыток сбора телеметрии, не соответствует этическим требованиями Фонда СПО. При использовании GitLab Фонду СПО было бы не обойтись без поддержания форка данной платформы, но для этого нет необходимых ресурсов.

Определённые Фондом СПО критерии, предъявляемые к хостингам свободного кода (создаваемый фондом СПО хостинг как минимум должен на начальном этапе соответствовать уровню «B», после чего постепенно будет доведён до уровня «A»):

  • «C» — минимальные требования к сервисам, в которых можно размещать проекты GNU:

    • Доступность всей функциональности пользователям полностью свободных браузеров, таких как IceCat. Допускается выполнение контента на других языках программирования, транслированных в JavaScript. Ключевой JavaScript-код должен либо быть свободным, либо отключаемым (работоспособность должна сохраняться при отключенной в браузере поддержке JavaScript).
    • Отсутствие необходимости установки несвободного ПО для работы с сайтом (например, Adobe Flash);
    • Отсутствие дискриминации в зависимости от категории пользователя и страны его проживания;
    • Возможность работы с сервисом в анонимном режиме, используя сеть Tor;
    • Условия работы с сервисом не должны содержать одиозных требований;
    • Использование лицензии GPLv3 должно поощряться и рекомендоваться как минимум на том же уровне, что и другие типы лицензий;
    • Корректная поддержка HTTPS, включая использование достоверных сертификатов.
  • «B» — дополнительные требования, которые позволяют рекомендовать сервис:

    • Весь отправляемый клиенту JavaScript-код должен быть свободным и снабжённым метками для распознавания в LibreJS или явно заявлять о своей лицензии;
    • Информация о посетителях не должна передаваться третьим лицам и сторонним организациям. В частности, не должны использоваться теги для отслеживания перемещения пользователя между сайтами, что подразумевает отказ от использования большинства рекламных сетей;
    • Не должны навязываться порочные практики лицензирования (поставка кода без лицензии, неясные условия лицензирования и привязка только к одной версии лицензии);
    • Отсутствие рекомендации выбора несвободных лицензий;
  • «А» — наивысшие требования:

    • Сайт должен быть полностью работоспособен при отключенном JavaScript;
    • Серверные компоненты сервиса должны распространяться в форме свободного ПО;
    • В качестве приоритета для кода должен предлагаться выбор лицензии GPLv3+;
    • В качестве опции должна быть доступна лицензия AGPLv3+;
    • Должно быть запрещено размещение продуктов под несвободными лицензиями и без лицензии;
    • Не должно предлагаться использование сервисов SaaSS;
    • Должен применяться термин «свободное ПО», вместо «открытое ПО»;
    • Должны поощряться идеи свободы, продвигаемые «Движением за свободное программное обеспечение«;
    • В контексте дистрибутивов не должен применяться термин Linux без приставки GNU, т.е. следует использовать GNU/Linux;
    • Каждый нетривиальный файл в пакете должен снабжаться информацией об используемой лицензии.
  • «A+» — идеальные дополнительные пожелания:

    • Возможность просмотра сайта и загрузки без аутентификации;
    • Отключение сохранения в логах информации о посетителях;
    • Соответствие пожеланиям по организации работы провайдеров online-сервисов, разработанным организацией Electronic Frontier Foundation;
    • Доступность содержимого для людей с ограниченными возможностями, соответствие стандартам Web Content Accessibility Guidelines (WCAG) 2.0 и Accessible Rich Internet Applications 1.0 (WAI-ARIA);
    • Все данные, переданные авторами и участниками проекта, должны быть экспортируемы в машиночитаемом формате.

Источник: https://www.opennet.ru/opennews/art.shtml?num=52431

Добавить комментарий