Это не так. Так чужой код в дистрибутиве есть — это вызовы функций описанных в подключаемой библиотеке. Ни у кого не возникнет сомнения в происхождении вызываемых функций и их важности для кода модуля/темы. Удалите эти вызовы из кода и продавайте на здоровье, если сможете.
Это вам бы так хотелось. Но тут дело не в формальном наличии копии кода в тексте темы, а в том, что код плагина или темы WP работает только используя WP в качестве библиотеки или отдавая свой код в библиотеку WP. И будь у WP LGPL, не было бы вопросов, а с GPL такие фишки не пройдут.
Я так и думал, что вы к этому придеретесь. Но вызов функции внутри программного кода означает подключение библиотеки, а тут лицензия неумолима. Кстати сам факт включения библиотеки не обязан находиться в коде — в этом случае место расположения кода (конкретный каталог) заставляет подключать библиотеки и загружать код темы/плагина в контекст движка. Я понимаю, что как «психиатр на все руки» вы не обязаны глубоко разбираться в технологических деталях. Жаль, что вы воинственно защищаете свой недостаток знаний.
С другой стороны (на случай если вы придеретесь к понятию «GPL-код») авторы продаваемого дистрибутива обуславливают работоспособность своего произведения использованием GPL-продукта, без которого их произведение даже не является корректным исполнимым кодом, потому, что программно основано на нем. Тот факт, что движок WP они не дают в комплекте всего лишь нарушает законодательство о правах потребителя и дает вам ложное ощущение, что продукт не содержит спорного кода.
Вообще-то нет. Программа под GPL может загружать и использовать закрытую библиотеку без лицензионных проблем. А вот закрытая программа не может базироваться на GPL-библиотеке.
Во первых я старше вас. Во вторых — да, я знаю что такое поместить в программу код библиотеки для уменьшения написания собственного кода за счёт чужого труда. Это не имеет ничего общего с работой внешнего API, как RSS или даже RPC. Модули и темы WP это мелкие включения в большущий код, которые исполняются только как часть этого кода и пользуются всеми результатами рутинного труда программистов других модулей и движка.
Вы знаете много программ, которые пользуются 10 прерыванием? =) Кроме того, что лицензия на BIOS изначально другая, мало в какой программе (в том же WP) есть хоть одно обращение к его коду.
От того, что какая-либо программа (тема, плагин) исполняется в контексте движка, компонуется им в момент выполнения, вызывает API или библиотеки, она не становится содержащей внутри себя GPL-код. Он снаружи, а вызывать его никто запретить не может.
Если было бы так, я бы к вам не придирался. Но лицензия GPL запрещает включать GPL-библиотеки в закрытые продукты без перехода в GPL. А WP подключает эти библиотеки ко всем модулям. Так что формально нарушение имеет место.
Я не могу ответить на это вопрос. Но в контексте топика он не имеет никакого смысла. Возможно зная ответ и я буду негодовать, но это не отменит сути конфликта и лицензию.
Само включение вашего модуля в WP это уже его модификация. Сам движок сделан так, что выполняет любой код в собственном контексте, а не по внешним правилам. Попробую еще раз объяснить разницу.
Допустим вы пишете коммерческий продукт на PHP. Этот движок под GPL. Допустим ваши противники будут заявлять, что программа на PHP вносит изменения в код движка Zend в памяти и на том основании должны лицензироваться под GPL. В таком ключе вы видите нынешний спор про модули и движок WP. И будь явление такого же уровня как программа на php и движок Zend, я был бы на вашей стороне — программа не нарушает лицензию движка.
Но мы имеем дело с совсем другим случаем. Движок WP построен из таких частей — библиотека обеспечивающая основной арсенал средств работы с первичными ресурсами (запросы, данные...), механизм встраивания кода из модулей и тем в обработчики запросов и набор собственных базовых модулей. Любой модуль WP имеет смысл только как часть кода WP, имея доступ к первичным ресурсам через библиотеку. Определенные функции каждого модуля вызываются в определенные моменты обработки запроса, как нативный код движка. Фактически архитектура WP создана таким образом, чтобы вносить в движок изменения не трогая файлы движка. Это вас и сбило с толку.
Вызов любой функции WP из темы попадает под определение подключения библиотеки GPL и в лицензии это оговорено как случай необходимости перехода под GPL. Скажите как разработчик тем под WP, есть ли у вас гарантия, что темы Thesis не содержат вызовов функций WP? Если да, то я признаю что не прав.
Вы правильно поняли. Темы для WP изначально строятся на вызове GPL-функций из движка и часто вносят дополнения в код, исполняемый в контексте кода движка.
themes interact with WordPress (and WordPress with themes) the exact same way that WordPress interacts with itself
Это абсолютно точное определение механизма взаимодействия темы с движком при этой архитектуре. Так уж построены многие движки на PHP — для получения приемлемой скорости работы и гибкости разработки все модули и темы это части кода самого движка. Движок сделан так, что сам включает в себя куски кодов из модулей и тем и исполняет это как единую программу. Разработчики тем к моменту исполнения своего кода (а логика в тему тоже попадает не так ли, разработчик?) получают набор из десятков функций и структур данных, которые написали сторонние разработчики для удобства разработчиков тем и модулей. Если ваша тема не использует ничего из арсенала движка и будет просто набором дизайна, то будет ли такая тема иметь смысл? Вот и Thesis попали в эту проблему — написали свой продукт на основе чужого (у вас же нет сомнений, что без WP их темы не будут работать) с условием включения своего кода в конечный продукт, но забыли поблагодарить тех, кто сделал их работу вообще возможной. Это по-вашему логично?
Не пеняйте на зеркало =)
под GPL попадает не только модификация кода, но и использование функций библиотеки. А тему, которая не использует вызовы функций WP еще надо поискать, не так ли?
Это — не модификация. Но это использование GPL-библиотеки (найдите разницу с LGPL). Модификацию кода в памяти делает модуль или функция внутри темы, предназначенная для замещения функционала существующей функции.
2. Код библиотеки защищен так же как и включенный напрямую код.
Если было бы так, я бы к вам не придирался. Но лицензия GPL запрещает включать GPL-библиотеки в закрытые продукты без перехода в GPL. А WP подключает эти библиотеки ко всем модулям. Так что формально нарушение имеет место.
Допустим вы пишете коммерческий продукт на PHP. Этот движок под GPL. Допустим ваши противники будут заявлять, что программа на PHP вносит изменения в код движка Zend в памяти и на том основании должны лицензироваться под GPL. В таком ключе вы видите нынешний спор про модули и движок WP. И будь явление такого же уровня как программа на php и движок Zend, я был бы на вашей стороне — программа не нарушает лицензию движка.
Но мы имеем дело с совсем другим случаем. Движок WP построен из таких частей — библиотека обеспечивающая основной арсенал средств работы с первичными ресурсами (запросы, данные...), механизм встраивания кода из модулей и тем в обработчики запросов и набор собственных базовых модулей. Любой модуль WP имеет смысл только как часть кода WP, имея доступ к первичным ресурсам через библиотеку. Определенные функции каждого модуля вызываются в определенные моменты обработки запроса, как нативный код движка. Фактически архитектура WP создана таким образом, чтобы вносить в движок изменения не трогая файлы движка. Это вас и сбило с толку.
Вызов любой функции WP из темы попадает под определение подключения библиотеки GPL и в лицензии это оговорено как случай необходимости перехода под GPL. Скажите как разработчик тем под WP, есть ли у вас гарантия, что темы Thesis не содержат вызовов функций WP? Если да, то я признаю что не прав.
Это абсолютно точное определение механизма взаимодействия темы с движком при этой архитектуре. Так уж построены многие движки на PHP — для получения приемлемой скорости работы и гибкости разработки все модули и темы это части кода самого движка. Движок сделан так, что сам включает в себя куски кодов из модулей и тем и исполняет это как единую программу. Разработчики тем к моменту исполнения своего кода (а логика в тему тоже попадает не так ли, разработчик?) получают набор из десятков функций и структур данных, которые написали сторонние разработчики для удобства разработчиков тем и модулей. Если ваша тема не использует ничего из арсенала движка и будет просто набором дизайна, то будет ли такая тема иметь смысл? Вот и Thesis попали в эту проблему — написали свой продукт на основе чужого (у вас же нет сомнений, что без WP их темы не будут работать) с условием включения своего кода в конечный продукт, но забыли поблагодарить тех, кто сделал их работу вообще возможной. Это по-вашему логично?
под GPL попадает не только модификация кода, но и использование функций библиотеки. А тему, которая не использует вызовы функций WP еще надо поискать, не так ли?