AiManual - База знаний по ИИ
AiManual - База знаний по ИИ

В README написано Apache 2.0, а проект без коммерческого кода не запускается

В README написано Apache 2.0, а проект без коммерческого кода не запускается

Берёте open-source проект, в README крупно написано «Apache 2.0». Форкаете, публикуете, а позже выясняется, что под этой лицензией не весь код.

Файл лицензии начинается не с текста Apache, а с преамбулы. В ней перечислены исключения: содержимое каталога packages/server/src/enterprise и файлы с отдельным указанием правообладателя, например IdentityManager.ts, идут под коммерческой лицензией. Заголовок README про них не рассказывает.

Соблазн решить это удалением файлов понятен, но новый коммит ничего не меняет: код остаётся в предыдущих коммитах, доступен через git log и уезжает вместе с клоном репозитория.

И просто выкинуть этот каталог тоже нельзя. Это не набор опциональных корпоративных надстроек, а та часть, без которой приложение не поднимается: по словам автора, бесплатная версия Flowise 3.x без неё даже не запускается.

Учебный пример. Вы форкаете проект и публикуете его на GitHub, не открыв файл лицензии целиком. Так вы распространяете коммерческий код без разрешения. Исправление: прочитайте LICENSE.md до конца, найдите все каталоги с отдельной лицензией и уберите их из истории — не последним коммитом, а, например, через git filter-repo.

Проверка простая: после очистки в репозитории не должно остаться файлов из этих каталогов, а проект при этом должен собираться и запускаться. Если без них он не поднимается, форк теряет смысл — и это стоит понять до публикации, а не после.

Разбор

Комментариев пока нет.