Apache License — это разрешительная лицензия свободного программного обеспечения, разработанная Apache Software Foundation (ASF). [4] Она позволяет пользователям использовать программное обеспечение в любых целях, распространять его, изменять его и распространять измененные версии программного обеспечения в соответствии с условиями лицензии, не заботясь о роялти . ASF и его проекты выпускают свои программные продукты под лицензией Apache License. Лицензия также используется многими проектами, не относящимися к ASF.
Начиная с 1995 года Apache Group (позже Apache Software Foundation) выпустила последовательные версии Apache HTTP Server . Его первоначальная лицензия была по сути такой же, как и оригинальная лицензия BSD из 4 пунктов , с измененными только названиями организаций и дополнительным пунктом, запрещающим производным работам носить имя Apache.
В июле 1999 года Berkeley Software Distribution приняла аргумент, выдвинутый Free Software Foundation , и отменила свой пункт о рекламе (пункт 3), чтобы сформировать новую лицензию BSD из 3 пунктов. В 2000 году Apache поступила так же и создала Apache License 1.1, в которой производные продукты больше не обязаны включать атрибуцию в свои рекламные материалы, а только в свою документацию. Отдельные пакеты, лицензированные по версии 1.1, могли использовать другую формулировку из-за различных требований к атрибуции или идентификации знака, но обязательные условия были теми же.
В январе 2004 года ASF решила отойти от модели BSD и выпустила Apache License 2.0. Заявленные цели лицензии включали упрощение использования для не-ASF проектов, улучшение совместимости с программным обеспечением на основе GPL , разрешение включать лицензию в качестве ссылки, а не перечислять ее в каждом файле, разъяснение лицензии на вклады и требование патентной лицензии на вклады, которые обязательно нарушают собственные патенты вкладчика. [5] Эта лицензия требует сохранения уведомления об авторских правах и отказа от ответственности .
Лицензия Apache является разрешительной ; в отличие от лицензий copyleft , она не требует, чтобы производная работа программного обеспечения или модификации оригинала распространялись с использованием той же лицензии. Она по-прежнему требует применения той же лицензии ко всем немодифицированным частям. В каждом лицензированном файле должны быть сохранены оригинальные уведомления об авторских правах, патентах, товарных знаках и атрибуции (за исключением уведомлений, которые не относятся к какой-либо части производных работ). В каждом измененном лицензированном файле должно быть добавлено уведомление о том, что в этот файл были внесены изменения.
Если NOTICE
текстовый файл включен в состав дистрибутивов оригинальной работы, то производные работы должны включать читаемую копию этих уведомлений в NOTICE
текстовом файле, распространяемом в составе производных работ, в исходной форме или документации или в отображении, созданном производными работами (везде, где обычно появляются такие сторонние уведомления).
Содержимое файла NOTICE
не изменяет лицензию, поскольку оно носит исключительно информационный характер, и добавление дополнительных уведомлений об авторстве в качестве дополнений к NOTICE
тексту допустимо, при условии, что эти уведомления не могут быть поняты как изменение лицензии. Изменения могут иметь соответствующие уведомления об авторских правах и могут предусматривать различные условия лицензии для изменений.
Если явно не указано иное, любые взносы, представленные лицензиатом лицензиару, будут подчиняться условиям лицензии без каких-либо условий, но это не исключает возможности заключения отдельных соглашений с лицензиаром относительно этих взносов.
Apache License 2.0 пытается предотвратить потенциальные патентные тяжбы в Разделе 3. Пользователю предоставляется патентная лицензия от каждого участника на «создание, создание, использование, предложение о продаже, продажу, импорт и иную передачу Работы». В соответствии с пунктом in terrorem , если пользователь подает в суд на кого-либо, утверждая, что программное обеспечение или вклад в него представляет собой нарушение патентных прав, любые такие патентные лицензии на эту работу прекращаются.
Apache Software Foundation и Free Software Foundation соглашаются, что Apache License 2.0 является лицензией свободного программного обеспечения , совместимой с GNU General Public License [5] (GPL) версии 3, [2] что означает, что код под GPLv3 и Apache License 2.0 можно объединять, при условии, что полученное программное обеспечение будет лицензировано под GPLv3. [6]
Free Software Foundation считает все версии Apache License несовместимыми с предыдущими версиями GPL 1 и 2. [2] Кроме того, он считает версии Apache License до 2.0 несовместимыми с GPLv3. Из-за требований патентной лицензии версии 2.0 Free Software Foundation рекомендует ее среди других лицензий без авторского лева. [7] [2] Если используется Apache License с исключением LLVM, то она совместима с GPLv2. [8]
В октябре 2012 года 8708 проектов, размещенных на SourceForge.net, были доступны на условиях лицензии Apache. [9] В сообщении в блоге от мая 2008 года Google упомянул, что более 25% из почти 100 000 проектов, размещенных на Google Code , использовали лицензию Apache, [10] включая операционную систему Android . [11]
[обновлять]По данным Black Duck Software [12] и GitHub [13] , по состоянию на 2015 год лицензия Apache является третьей по популярности лицензией в домене FOSS после лицензии MIT и GPLv2 .
Проект OpenBSD не считает Apache License 2.0 приемлемой свободной лицензией из-за ее патентных положений. Политика OpenBSD полагает, что когда лицензия заставляет кого-то отказаться от законного права, которое у вас в противном случае было, эта лицензия больше не является свободной. Более того, проект возражает против объединения договорного права с авторским правом, заявляя: «...Авторское право в некоторой степени стандартизировано международными соглашениями, договорное право сильно различается в разных юрисдикциях. Поэтому то, что означает лицензия в разных юрисдикциях, может различаться и это трудно предсказать». [14]
Лицензии типа BSD, такие как лицензии BSD, MIT и Apache, являются крайне разрешительными и требуют лишь указания исходных частей лицензированного кода исходным разработчикам в вашем собственном коде и/или документации.