Commons Clause
Commons Clause — это лицензионное дополнение (дополнительное условие), которое ограничивает коммерческое использование программного обеспечения с открытым исходным кодом, добавляя к существующей открытой лицензии запрет на продажу программного обеспечения или его включение в коммерческие продукты и услуги. Commons Clause не является самостоятельной лицензией, а представляет собой оговорку, которая модифицирует основную открытую лицензию, такую как Apache 2.0, MIT, BSD или GNU GPL, превращая её в условно-открытую или ограниченно-коммерческую.
История
Commons Clause была разработана компанией Redis Labs в 2018 году. Основатели компании, столкнувшись с ситуацией, когда крупные облачные провайдеры (например, Amazon Web Services, Google Cloud, Microsoft Azure) использовали их продукт Redis (систему управления базами данных) в своих коммерческих облачных сервисах, не внося существенного вклада в развитие проекта, решили ограничить такое использование. 22 августа 2018 года Redis Labs объявила о введении Commons Clause для своих модулей Redis, распространявшихся под лицензией Apache 2.0.
Изначально Commons Clause была представлена как способ защиты разработчиков от «паразитического» использования их труда крупными корпорациями, которые не возвращают улучшения в сообщество. Однако её введение вызвало широкую критику в сообществе открытого ПО, так как она нарушала принципы свободы использования, распространения и модификации, закреплённые в определении Open Source (OSD — Open Source Definition). В результате Open Source Initiative (OSI) — организация, отвечающая за сертификацию открытых лицензий, — отказалась признавать программное обеспечение с Commons Clause открытым.
Несмотря на критику, несколько проектов последовали примеру Redis Labs. Например, в 2019 году компания Confluent (разработчик Apache Kafka) ввела аналогичное ограничение для некоторых своих продуктов, а в 2020 году компания Elastic (разработчик Elasticsearch) перешла на собственную лицензию SSPL (Server Side Public License), которая также ограничивает коммерческое использование облачными провайдерами. В 2020 году Redis Labs отказалась от использования Commons Clause, перейдя на собственную лицензию Redis Source Available License (RSAL), которая также не является открытой, но более точно описывает ограничения.
Содержание и условия
Commons Clause добавляет к основной лицензии следующее ограничение: «Программное обеспечение не может быть продано, лицензировано или иным образом передано за плату, а также не может быть включено в продукт или услугу, которые продаются, лицензируются или иным образом передаются за плату». Это означает, что:
- Запрещается продавать само программное обеспечение (например, как часть коммерческого дистрибутива).
- Запрещается включать его в коммерческие продукты (например, в платную CRM-систему или ERP-систему).
- Запрещается предоставлять его как часть коммерческой облачной услуги (SaaS — Software as a Service), если эта услуга продаётся.
Однако Commons Clause не запрещает:
- Использование программного обеспечения внутри компании для внутренних нужд, даже если компания извлекает прибыль от своей основной деятельности.
- Бесплатное распространение, в том числе в составе некоммерческих проектов.
- Модификацию и создание производных работ, при условии соблюдения основной лицензии.
Критика и последствия
Введение Commons Clause вызвало резкую реакцию в сообществе разработчиков открытого ПО. Основные претензии:
- Нарушение определения Open Source. Commons Clause вводит ограничения на коммерческое использование, что противоречит пункту 6 OSD (No Discrimination Against Fields of Endeavor — отсутствие дискриминации по областям применения). Это делает программное обеспечение с Commons Clause не-открытым, а лишь «доступным в исходном коде» (source-available).
- Неопределённость формулировок. Термин «продано» и «включено в продукт или услугу» трактуется неоднозначно. Например, непонятно, считается ли «продажей» включение программы в состав платного облачного сервиса, если сам сервис предоставляется по подписке, а не за единоразовую плату.
- Раздробление экосистемы. Введение уникальных ограничений для каждого проекта усложняет лицензионную совместимость и создаёт юридические риски для пользователей, которые хотят комбинировать несколько проектов с разными лицензиями.
- Отказ от принципов сообщества. Многие разработчики и компании, такие как Red Hat, Canonical и GitLab, выступили с критикой, заявив, что Commons Clause подрывает доверие к открытому ПО и может привести к его фрагментации.
В ответ на критику Redis Labs и другие компании аргументировали, что Commons Clause не направлена против обычных пользователей или малого бизнеса, а только против крупных облачных провайдеров, которые извлекают прибыль из чужого труда, не внося вклада в развитие. Однако эта позиция не получила широкой поддержки.
Альтернативы
В ответ на критику Commons Clause были разработаны альтернативные подходы к защите от недобросовестного использования открытого ПО:
- Server Side Public License (SSPL) — лицензия, разработанная MongoDB в 2018 году, которая требует, чтобы при предоставлении программного обеспечения как услуги (SaaS) весь код, необходимый для предоставления этой услуги, также распространялся под SSPL. Это фактически запрещает коммерческое использование облачными провайдерами без открытия их собственного кода.
- Business Source License (BSL) — лицензия, разработанная MariaDB, которая позволяет коммерческое использование, но с ограничениями по времени (например, через 3 года после выпуска версии она становится открытой). BSL признана OSI как открытая лицензия, но с оговорками.
- Functional Source License (FSL) — более новая лицензия, разработанная в 2023 году, которая разрешает коммерческое использование, но запрещает предоставление программного обеспечения как услуги (SaaS) без дополнительного соглашения.
Применение в России
В России использование программного обеспечения с Commons Clause регулируется общими нормами Гражданского кодекса РФ (часть 4, глава 70 «Авторское право»). Поскольку Commons Clause является дополнением к открытой лицензии, она может быть признана частью лицензионного договора, если пользователь явно согласился с её условиями. Однако из-за неоднозначности формулировок и отсутствия судебной практики по данному вопросу, российские юристы рекомендуют проявлять осторожность при использовании такого ПО в коммерческих проектах.
На практике в России Commons Clause применяется редко, так как большинство крупных проектов (например, Redis, Elasticsearch, MongoDB) уже перешли на собственные лицензии, а не используют Commons Clause. Тем не менее, некоторые небольшие проекты и библиотеки могут распространяться с этим дополнением.
Интересные факты
- Commons Clause была написана юристом Хизер Микер (Heather Meeker), специализирующейся на лицензировании открытого ПО.
- Текст Commons Clause доступен на официальном сайте проекта и может быть использован любым разработчиком для добавления к своей лицензии.
- В 2019 году проект GNU (Free Software Foundation) официально заявил, что Commons Clause несовместима с GNU GPL, так как добавляет дополнительные ограничения, не предусмотренные GPL.
Источники
- Официальный сайт Commons Clause (commonsclause.com)
- Статья Redis Labs о введении Commons Clause (2018)
- Определение Open Source (opensource.org/osd)
- Критика Commons Clause от Free Software Foundation (2019)
- Анализ лицензионных ограничений от Open Source Initiative (2020)
- Статья «The Commons Clause: A New Threat to Open Source» (InfoWorld, 2018)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →