Відкрита ліцензія дозволяє використання за визначених умов, а не скасовує їх. Для програмного продукту потрібно знати точну версію кожного компонента й спосіб його інтеграції. Нижче порівнюються MIT, Apache License 2.0 та GNU GPL версії 3; інші версії можуть мати суттєві відмінності.
MIT: дозвіл із збереженням повідомлень
MIT дозволяє широке використання, модифікацію та комерційне поширення. Її ключова умова — включати повідомлення про авторські права й текст дозволу до копій або істотних частин програмного матеріалу. Тому компонент не слід очищати від ліцензійних повідомлень лише через включення до власного продукту.
Apache 2.0: повідомлення та патентна складова
Apache 2.0 містить окреме патентне надання в установлених межах і умови його припинення при відповідному патентному спорі. При поширенні виконують вимоги щодо ліцензії, повідомлень про зміни й застосовного NOTICE. Вона не надає загального дозволу використовувати торговельні марки авторів проєкту.
GPLv3: copyleft при переданні охопленого твору
GPLv3 допускає комерційне використання, але встановлює обов’язки при переданні охопленої програми та її похідних результатів. Для поширення виконуваного коду потрібно забезпечити відповідний вихідний код за передбаченим способом. Оцінка меж охопленого твору залежить від інтеграції; це не автоматична вимога оприлюднити всі розробки компанії.
Порівняйте типові обов’язки
Таблиця є орієнтиром для перевірки, а точні умови визначає повний ліцензійний текст конкретного компонента.
| Питання | MIT | Apache 2.0 | GPLv3 |
|---|---|---|---|
| Комерційне використання | Допускає | Допускає | Допускає |
| Повідомлення | Copyright і дозвіл | Ліцензія, зміни, потрібні notices | Ліцензія та встановлені notices |
| Патентне надання | Окремого текстового блоку немає | Прямо передбачене з умовами | Власні патентні положення |
| Вихідний код при поширенні | Copyleft не встановлено | Copyleft не встановлено | Застосовні вимоги до охопленої програми |
Внутрішнє використання і передання копії
Для GPLv3 сама мережна взаємодія без передачі копії не є переданням у визначенні ліцензії. Проте потрібно перевіряти фактичну архітектуру: браузерний код, застосунок клієнта й серверний компонент можуть поширюватися по-різному. Назва SaaS не дає відповіді щодо кожної залежності.
Версія й додаткові умови мають значення
Перевірте файл ліцензії саме встановленої версії, подвійне ліцензування та дозволені альтернативи. Позначення сімейства GPL без номера й умов вибору недостатнє. Не переносіть висновок щодо одного релізу на наступний, якщо правовласник змінив ліцензійний режим.
Перевірка перед випуском продукту
Складіть перелік залежностей, зафіксуйте ліцензії й відмітьте, які частини передаються клієнтам. Підготуйте необхідні повідомлення та матеріали вихідного коду для відповідних компонентів. Юридичну сумісність оцінюйте разом із технічною інтеграцією, щоб фінальний пакет виконував умови всіх включених дозволів.
