Сообщество

Приступить к работе

Мы будем благодарны вам за участие в разработке нашего исходного кода и помощь в дальнейшем совершенствовании iText 7 Community!

Участие в развитии iText 7 Community

Мы будем благодарны вам за участие в разработке нашего исходного кода и помощь в дальнейшем совершенствовании iText 7 Community! Следуйте приведенным далее рекомендациям.

Возникли вопросы или проблемы?

Если у вас возникли вопросы об использовании iText 7 Community, задайте их в системе Stack Overflow.

Если вы являетесь нашим клиентом с соглашением о поддержке, вам также предоставляется прямой доступ к системе JIRA и разработчикам.

Обнаружили проблему?

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

См. раздел «Рекомендации по отправке» ниже.

Хотите реализовать новую функцию?

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

  • Существенные изменения, которые вы хотите внести в проект, следует сначала обсудить, чтобы мы могли эффективнее согласовать свои действия, избежать дублирования работы и помочь вам создать изменение, которое будет успешно принято в проект. Свяжитесь с нами по адресу community@itextpdf.com.
  • Небольшие изменения можно разрабатывать и отправлять в репозиторий GitHub в виде запроса на принятие изменений.

Рекомендации по отправке

Отправка вопроса или проблемы

Прежде чем отправить вопрос или проблему, поищите ответ в системе Stack Overflow — возможно, он там уже есть.

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

  • Как правильно задать вопросы.
  • Обзор проблемы — если выдается ошибка, помогает отслеживание стека без минификации.
  • Обоснование или сценарий использования — объяснение, почему вы считаете это ошибкой.
  • Версии iText — это регрессия?
  • Операционная система — проблема возникает на Windows, Linux или, может, на Mac?
  • Воспроизведение ошибки — предоставьте краткий, самодостаточный, правильный (компилируемый) пример, также называемый минимально коротким, полным и воспроизводимым примером.
  • Связанные проблемы — сообщалось ли ранее о похожей проблеме?
  • Предложение исправления — если вы не можете исправить ошибку самостоятельно, возможно, вы сможете указать потенциальную причину проблемы (строку кода или отправку изменений).
  • Тег вопроса — отметьте вопрос тегом itext7, чтобы мы могли его найти.

Получив помощь, помогите другим. Заработайте плюс в карму!

Отправка запроса на принятие изменений

Прежде чем отправить запрос на принятие изменений, выполните указанные ниже рекомендации.

  • Поищите на GitHub открытый или закрытый запрос на принятие изменений, связанный с вашей отправкой. Не стоит дублировать задачи.
  • Убедитесь, что предлагаемое вами изменение еще не было реализовано в ветке разработки.
  • Не отправляйте отдельный запрос на принятие изменений для каждого изменяемого файла.
  • Подпишите лицензионное соглашение с участником iText (iCLA), прежде чем отправлять запросы на принятие изменений, касающиеся изменения более 20 существенных строк кода (не считая фигурных скобок и прочего синтаксического сахара). Мы не принимаем код без этого соглашения.
  • Создайте ответвление репозитория iText на GitHub.
  • Клонируйте ответвление iText на свой локальный компьютер.
  • Внесите изменения, включая соответствующие тестовые сценарии.
  • Соблюдайте наши Правила оформления кода.
  • Отправьте изменения с описательным сообщением об отправке изменений, составленным по нашим правилам оформления сообщений об отправке изменений.
  • После этого самое время закрепить ваши отправленные изменения (если это желательно или необходимо) с помощью перебазирования Git в интерактивном режиме.
  • Создайте изменения локально, чтобы убедиться, что они проходят все тесты.
  • Добавьте изменения в свою учетную запись GitHub.
  • Создайте запрос на принятие изменений в GitHub.

«Головным ответвлением» должен быть ваш репозиторий, а «базовым ответвлением» — официальный репозиторий iText 7.

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

Готово! Спасибо за участие!

После слияния вашего запроса на принятие изменений

После слияния вашего запроса на принятие изменений вы можете безопасно удалить свое ответвление и принять изменения из главного (вышестоящего) репозитория.

Правила программирования

Для обеспечения согласованности исходного кода во время работы помните о перечисленных ниже правилах.

  • Мы выполняем разработку сначала на Java, после чего переносим код на .NET, поэтому предпочтительно отправлять код на Java. Тем не менее, это не должно останавливать вас от отправки хорошего запроса на принятие изменений в порт .NET.
  • Весь код Java должен быть на Java 7. К сожалению, лямбда-выражения и другие языковые функции Java 8 не поддерживаются.
  • Все функции или исправления ошибок должны быть проверены с помощью одного или нескольких модульных тестов.
  • Все общедоступные методы API должны быть задокументированы с помощью JavaDoc. Примеры документирования API можно посмотреть в уже существующих документах JavaDoc.
  • Мы следуем правилам, изложенным в Соглашении по оформлению кода для языка программирования Java компании Oracle, с приведенными ниже добавлениями.
    • Всегда переносите код на 100 знаках.

Рекомендации по отправке изменений в Git

У нас действуют определенные рекомендации по оформлению сообщений об отправке изменений в Git. Они способствуют улучшению читабельности сообщений и упрощению их отслеживания при просмотре истории проекта. Но мы также используем сообщения об отправке изменений в Git для создания журнала изменений iText 7 Community.

Эти рекомендации взяты из публикации в блоге Криса Бимса (Chris Beams) «Как написать сообщение об отправке изменений в Git» (How to Write a Git Commit Message).

Формат сообщения об отправке изменений

Каждое сообщение об отправке изменений состоит из темы, тела и нижнего колонтитула:

<тема>
<ПУСТАЯ СТРОКА>
<тело>
<ПУСТАЯ СТРОКА>
<нижний колонтитул>

Длина строк сообщения об отправке изменений не должна превышать 72 знака! Это упрощает чтение сообщений на GitHub, а также в различных инструментах контроля версий.

Тема

Тема содержит лаконичное описание изменения.

Тело

В нижнем колонтитуле содержится информация о ломающих изменениях, а также ссылка на проблемы в JIRA или GitHub, которые закрывает эта отправка изменений.

Подписание iCLA

Прежде чем отправлять запросы на принятие изменений, подпишите лицензионное соглашение с участником iText (iCLA). Для принятия более крупных изменений кода (больше 20 строк значимого кода) необходимо подписать iCLA. Мы обещаем, что это не займет у вас много времени!

Нам нужно, чтобы вы подписали (цифровой подписью) форму и отправили ее по электронной почте, факсу или традиционной почте.

Кодекс поведения участника

Обратите внимание, что этот проект выпускается с Кодексом поведения участников. Принимая участие в этом проекте, вы соглашаетесь соблюдать его условия.

Мы используем сеть Stack Exchange для бесплатной поддержки и GitHub при размещении кода. Используя указанные далее сервисы, вы соглашаетесь соблюдать их условия.

Сделайте вклад в сообщество разработчиков открытого ПО

Мы будем благодарны вам за участие в разработке нашего исходного кода и помощь в дальнейшем совершенствовании iText 7 Community! 

Приступить к работе
Контактная информация

Остались вопросы? 

Мы готовы вам помочь. Обратитесь к нам, и мы ответим, как только сможем.

Связаться с нами
Оставаться в курсе

Присоединяйтесь к более чем 11 000 подписчиков и станьте экспертом iText PDF, следя за нашими новыми продуктами, обновлениями, советами, техническими решениями и событиями.

Подпишись сейчас