Як керувати повідомленнями про авторські права від учасників до ліцензованого проекту BSD


9

У нас є така ліцензія BSD LICENSE:

Copyright (c) 2006-2016 SymPy Development Team

All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

  a. Redistributions of source code must retain the above copyright notice,
     this list of conditions and the following disclaimer.
  b. Redistributions in binary form must reproduce the above copyright
     notice, this list of conditions and the following disclaimer in the
     documentation and/or other materials provided with the distribution.
  c. Neither the name of SymPy nor the names of its contributors
     may be used to endorse or promote products derived from this software
     without specific prior written permission.


THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

Ми керуємо джерелом сховища за допомогою git ( https://github.com/sympy/sympy ), і таким чином кожен автор володіє створеними ним патчами. Потім у нас є AUTHORSфайл, де ми перераховуємо всіх людей, які внесли виправлення (наразі близько 450 або близько того). Зазвичай автори розщеплюють сховище на github та додають патчі як git.

Один автор відправив репозиторій, але додав своє ім'я до самого LICENSEфайлу як повідомлення про авторські права так (я змінив ім'я):

Copyright (c) 2006-2015 SymPy Development Team,
              2015-2016 John Doe

All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

  a. Redistributions of source code must retain the above copyright notice,
     this list of conditions and the following disclaimer.
  b. Redistributions in binary form must reproduce the above copyright
     notice, this list of conditions and the following disclaimer in the
     documentation and/or other materials provided with the distribution.
  c. Neither the name of SymPy nor the names of its contributors
     may be used to endorse or promote products derived from this software
     without specific prior written permission.


THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

Автор розробив патч, який виправляє помилку. Виправлення полягає в торканні лише одного файлу та видаленні 19 символів з одного рядка та додаванні 18 символів в інший рядок у цьому ж файлі. Він також додає 5-рядковий тест для цієї помилки у тестовий файл. Це воно.

За яких умов нам законодавчо дозволено застосовувати його виправлення (вишневим вибором його зобов’язань, наприклад, збереження дати та імені автора + електронна адреса у метаданих git)?

a) Чи потрібно змінювати наш LICENSEфайл, щоб додати його повідомлення про авторські права?

b) Або ми все ще дотримуємось ліцензії BSD, якщо ми постійно оновлюємо AUTHORSфайл та зберігаємо сховище git, яке спеціально відстежує, які комісії були внесені авторами.

Що мені не подобається у варіанті a), це те, що якби цього вимагали всі 450 або більше учасників, нам потрібно було б зберігати по суті вміст AUTHORSфайлу у LICENSEфайлі разом зі Copyrightсловом та роками. Git набагато краще зберігати роки (і навіть дні і хвилини), а також які рядки, де їх автор змінював і як. Тоді у нас є простий LICENSEфайл, який не змінюється, і ми зберігаємо список авторів AUTHORS(і у нас є сценарій, який підтримує його синхронізованим зі списком авторів від git).


4
Я голосую за те, щоб закрити це питання поза темою, оскільки запитання вимагає юридичних порад, що виходять за рамки того, що можна очікувати від програміста. Ви повинні задати шар.
Барт ван Інген Шенау

1
або адвокат ...;)
Ерік Ейдт

7
Очікується, що програмісти цього не знають, але вони можуть. Було б кращою ідеєю видалити коментарі, які в основному говорять "ви повинні поговорити з юристом", що є надмірно використаною відповіддю. Програмісти мають розуміння ліцензування програмного забезпечення, мабуть, більше, ніж більшість юристів у світі. Мій голос - це зберегти тут.
морепанс

2
Я розумію, що коли хтось звертається із запитом на SymPy, він неявно ліцензує його згідно з ліцензією SymPy.
асмеурер

2
@asmeurer справа. Моє запитання, чи автор не створить запит на тягу. Тобто, за яких умов ви можете вибирати виправлення, викладені у виделку вашого сховища, ліцензовану за тією ж ліцензією, але змінене повідомлення про авторські права.
Ondřej Čertík

Відповіді:


3

Ви можете включити будь-який код із сумісною ліцензією на нього.

Однак, якщо новий код не буде спеціально ліцензований відповідно до сумісної ліцензії, якщо ви бажаєте вносити зміни у свою кодову базу, ви відкриваєтесь перед можливістю певних труднощів.

Зокрема, якщо в кодексі конкретно не зазначено, що нові внески підпадають під сумісну ліцензію, до нього застосовується ліцензія на "всі права захищені". Витягнення коду було б порушенням авторських прав.

Існує також можливість, що новий код ліцензується відповідно до сумісної з вами ліцензії (і вам потрібно буде зберегти цю ліцензію на код), але несумісної з багатьма вашими користувачами. Наприклад, якщо ви використовуєте пункт BSD 2, і хтось ліцензує внески вилки за пунктом BSD 3, ви, ймовірно, можете втягнути це у свій код без особливих труднощів. Однак, оскільки пункт BSD 3 не сумісний з GPL, це зробить ваш проект GPL несумісним.

Якщо вам слід пізніше прийняти рішення про зміну з BSD на GPL (наприклад,), а запити на виклик призначають необхідні права на зміну ліцензії в рамках ліцензійної угоди учасника, ви перетягуєте код з інших проектів, на які не погодилися CLA може викликати у вас деякі головні болі.

Ось загальний випадок ...

Для конкретного випадку, коли файл ліцензії змінився ... Я не знаю. З простого читання файлу ліцензії:

Copyright (c) 2006-2015 SymPy Development Team,  
              2015-2016 John Doe

All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

а. Перерозподіл вихідного коду повинен зберігати вищезазначене повідомлення про авторські права ,
   цей перелік умов та наступна відмова від відповідальності.

Цей біт, схоже, вказує на те, що якщо ви хочете застосувати ці зміни, вам також потрібно буде змінити файл ліцензії.

На жаль, наразі у вас немає чітко визначеної CLA. На щастя, наразі у вас є лише 450 людей, щоб запитати.


Тож з пункту читання "а". Схоже, що "вищевказане повідомлення про авторські права" для оригінального коду SymPy зберігається Джоном Доу і що Джон Доу ліцензує нові внески до вилки за тією ж ліцензією, але що нові доповнення захищені авторським правом на Джон Доу.
мурепанти

2
@moorepants для цього випадку, мабуть, так і є. Таким чином, якщо SymPy хоче ліцензувати їх назад у своєму коді, йому також потрібно буде дотримуватися цієї заяви в ліцензуванні та зберігати повідомлення про авторські права від John Doe.

Дякую @MichaelT за відповідь. Про що мені потрібно запитати 450 людей? Здається, що все, що мені потрібно зробити, це скопіювати ліцензію з виделки (включаючи заяву про авторські права Джона Доу), а також просто додати її до NOTICESфайлу, де ми б зберігали всі ліцензії сторонніх виробників.
Ondřej Čertík

1
@ OndřejČertík, якщо ви хочете коли-небудь змінити ліцензію на SymPy (це працює на припущенні, що всі, хто подав запит на виклик, нормально, ліцензуючи його згідно BSD), щоб сказати ... GPL, вам потрібен дозвіл усіх, хто внесли свій внесок, оскільки лише вони можуть прийняти рішення про повторне дозвол за іншою ліцензією У Apache досить задіяна CLA . У багатьох великих проектах є така чи інша CLA, щоб переконатися, що проект в межах своїх прав на розповсюдження поданого коду

1
Я б запропонував подивитися на першу точку дискурсу CLA :You grant to "The Company" (Civilized Discourse Construction Kit, Inc.) a non-exclusive, irrevocable, worldwide, royalty-free, sublicenseable, relicenseable, transferable license under all of Your relevant intellectual property rights, to use, copy, prepare derivative works of, distribute and publicly perform and display "The Contributions" on any licensing terms, including without limitation: (a) open source licenses like the GNU General Public (v2.0) license; ...

2

Якщо є вихідний код з ліцензією BSD і хтось розщедрить його, додавши додаткові виправлення, то цей новий вихідний код у новому репо повинен містити точний файл ліцензії BSD від оригінального репо, а нові патчі повинні мати ліцензію відповідно до нової ліцензії (або навіть та сама ліцензія). Таким чином, форк повинен мати одну або дві ліцензії у сховищі. Редагувати оригінальну ліцензію неприпустимо, оскільки це порушує умови ліцензії BSD.

Тепер, якщо оригінальний репо хоче вишневі патчі з вилки, тоді до оригінального репо потрібно додати копію нової ліцензії вилки. Зрештою, обидва сховища матимуть кожну ліцензію, причому одне охоплює кожен набір патчів.

SymPy також повинен вимагати, щоб учасники проекту відмовились від авторських прав на проект SymPy. Можливо, дуже проблематично дозволити учасникам зберігати авторські права на окремі виправлення під час подання. Для чіткого розуміння того, що відбувається, потрібна угода, яка пише це промовником.


Звичайно, якщо на вилці немає додаткової ліцензії, то внески, ну, не ліцензуються ні за що, окрім за замовчуванням ліцензійних прав.

1
Я не вірю, що це обов'язково правда. Якщо на нових патчах у вилці не вказано жодної ліцензії, можлива двозначність. За замовчуванням у законодавстві США автор авторських прав власник авторських прав, якщо нічого не вказано. Отже, якщо додаткової ліцензії не вказано, можливо, що автор патчів у вилці має право власності на нові патчі. Але це неоднозначно, оскільки творець повинен був залишити оригінальну ліцензію у вилці, щоб це стосувалося всіх їхніх патчів. Заява про ліцензію на файл допомагає прояснити цю неоднозначність, але ви рідко бачите заяву "per patch".
мурепанти
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.