При многократном использовании кода, как я проясняю, кто владелец авторских прав для каждого файла? [закрытый]

Вы не можете изменить реквизит непосредственно внутри компонента - реквизит может быть получен только из родительского компонента, но не может быть изменен, поэтому вы не можете сделать: 118] Кроме того, вы ссылаетесь на this.props.emailRef в своей библиотеке, тогда как на клавиатуре отсутствует реквизит emailRef - у нее есть реквизит textInput.

Попробуйте это:

constructor(props) {
  super(props);
  this.emailRef = React.createRef();
  this.state = {
    value: "Initial Input"
  };
  this.handleInput = this.handleInput.bind(this);
}

handleInput(input) {
  this.setState({ value: input });
}

render() {
  return (
    ...
      <Keyboard textInput={this.emailRef} onInput={this.handleInput} />
      <TextInput ref={this.emailRef} value={this.state.value} />
    ...
  );
}

Внутри библиотеки:

<Button
  text="change value"
  onClick={() => {
    this.props.onInput(this.props.textInput.current.props.value + "q");
  }}
/>
8
задан davitenio 20 January 2009 в 15:31
поделиться

4 ответа

Копия LICENSE.txt в Вашем module1 dir и упоминание в Ваших документах (README, ЛИЦЕНЗИЯ, и т.д.), что Вы используете эту часть проекта. Лицензия стиля BSD очень либеральна: пока Вы даете подлежащий выплате кредит и уважаете его требования (это обычно включает обеспечение неизмененной лицензии и уведомлений об авторском праве), можно сделать то, что Вы хотите с кодом.

При изменении какого-либо файла хорошая практика должна упомянуть это в заголовке файла вокруг изменений, и в глобальных документах. Если измененные файлы не имели никакого уведомления об авторском праве, просто добавьте тот, описывающий Ваши изменения. Тем путем пользователи могут известный, какие файлы были изменены, кто сделал это, почему и как.

Это - это простое: сделайте это очень описательным способом. Нет никакой формальной процедуры для следования вопреки лицензиям стиля GPL. Это - больше документации, чем легальная работа.

3
ответ дан 5 December 2019 в 22:21
поделиться

Мне нравится ссылаться на лицензию в комментарии в исходном коде - легче, что путь как люди, более вероятно, будет открывать исходный файл и играть вокруг, чем исследуют структуру каталогов сначала. Простой комментарий, указывающий, что код защищен авторским правом к X и лицензируется Y просто, помогает направить кого-то к соответствующему файлу лицензии.

1
ответ дан 5 December 2019 в 22:21
поделиться

Вы не хотите рисковать здесь неверного истолкования авторского права. Так, я пошел бы до следующей структуры:

my_project/
|-- the_other_project
|    |-- LICENSE.txt
|    |-- module1/
|    |   |-- file1.c
|    |   |-- file2.c
|    |   `-- file3.c
|-- my_file1.c
|-- my_file2.c
|-- my_source_code1/
`-- my_source_code2/

В дополнение к этому:

  • каждый файл должен иметь заголовок, упоминая Авторское право, владельца и лицензию
  • упомяните в своей собственной лицензии использование частей кода другого проекта
  • при изменении кода в других проектах добавьте авторское право и имя в исходных файлах проекта.

Это - то, если Вы не делаете слишком многих модификаций к другому исходному коду. Если Вы переписываете все, просто упоминаете в Вашей лицензии источник другого кода.

1
ответ дан 5 December 2019 в 22:21
поделиться

Я просто нашел Поддерживающие Лицензируемые разрешающим образом Файлы в GPL-лицензированном Проекте: Инструкции для Разработчиков, опубликованных Центром Закона о Свободе программного обеспечения. Хотя это говорит конкретно о слиянии лицензий стиля BSD (они называют их разрешающими) в GPL лицензируемый код, я думаю, что рекомендация в разделе 2.1, Включая неизмененные лицензируемые разрешающим образом файлы, была бы хорошей общей рекомендацией. Я заключаю в кавычки:

Если внешний проект использует единственный метод файла АВТОРСКОГО ПРАВА, разработчик должен скопировать имена всех владельцев авторских прав из того файла и разместить их, наряду с любым авторским правом, разрешением и гарантийными уведомлениями правовой оговорки, требуемыми разрешающей лицензией, во главе объединенного исходного файла.

В случае, если Вы изменяете включенные файлы, и Ваш проект является GPL, в упомянутом документе существует два соответствующих раздела:

Случай, где Вы изменяете включенные файлы и Ваш проект, не является GPL, очевидно, не обращен документом. Но от того, что я собрал из других ответов, я сказал бы, пока лицензия, которую Вы используете для своего проекта, не является вирусной, что правильный поступок состоял бы в том, чтобы просто добавить себя как владелец авторских прав к заголовку авторского права файла, который Вы изменили, и упомяните источник включенного кода где-нибудь в Ваших документах.

1
ответ дан 5 December 2019 в 22:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: