コミュニティサポートコミュニティ

コントリビュートを始める

iText 7 Communityのさらなる発展のためにソースコードを提供し、コミュニティにご協力いただけるようお願いします!

iText 7 Communityへのご協力

iText 7 Communityのさらなる発展のためにソースコードを提供し、コミュニティにご協力いただけるようお願いします!こちらにガイドラインをご用意しました。

質問もしくは問題がありますか?

iText 7 Communityの使用方法に関する質問がある場合は、Stack Overflowをご確認ください。

サポート契約をお持ちのお客様は、JIRAと開発者にも直接アクセスすることが可能です。

問題を見つけましたか?

ソースコードのバグやドキュメントに関する間違いを見つけた場合は、修正をつけ加えたプルリクエストをご送信お願いします。

下記の 提出ガイドラインをご確認ください

機能の実装をご希望ですか?

新機能の実装をご希望の場合は、それがどのような変更になるかをご検討ください。

  • プロジェクトへのご協力に関する主な変更については、初めに検討しなければなりません。これによって、取り組みをさらに適切に調整し、作業の重複を防いでプロジェクトに適応可能な変更を促すことができます。community@itextpdf.comまでご連絡ください。
  • 少しの変更 を加えて GitHub Repositoryプルリクエストとして送信します。

提出ガイドライン

質問もしくは問題を送信

質問もしくは問題の送信前に、Stack Overflowを検索してください。お持ちの質問はすでに回答されている可能性があります。

問題がバグに起因し、未報告の際はStack Overflowまで質問を送信して、これが自分のコードの誤りではなく実際のバグであることを確認します。問題報告の重複を防ぐことで、問題の修正と新機能の追加に最大限工数を割くことができます。次の情報を提供することによって、問題をさらに迅速に処理できる可能性が高まります。

  • 良い質問をするには
  • 問題の概要 - エラーがそのままにされている際に、縮小がされていないスタックトレースが役立ちます
  • ケース使用に関するモチベーション - バグに関する説明
  • iTextバージョン -これは回帰でしょうか?
  • 操作システム - Windows、Linux、もしくはMacに発生する問題ですか?
  • エラーの再現 短く、自己完結型で、正しい(比較可能な)例を提供します。これはミニマル、完全、検証可能な例としても知られています。
  • 関連した問題 - 以前に関連した問題はレポートされていますか?
  • 推奨された修正 - 自分でバグを修正できない際は、問題の原因を探ることが可能です(コード行もしくはコミット)。
  • 質問をタグ付けする -itext7 のタグを質問につけて、見つけられるようにします。

ヘルプを得たら、他のユーザーにもご協力をお願いします。ヘルプの輪を広げてみましょう!

プルリクエストを送信

プルリクエストを送信する前に、下記のガイドラインを確認

  • 送信に関する、オープンもしくはクローズされたプルリクエストをGitHub上で検索して、同じ質問をするのを回避します。
  • 提案された変更が、開発ブランチで未処理であることを確認します。
  • ファイル変更ごとにプルリクエストを別々に送るのは避けてください。
  • 20行を超えるコードの変更をプルリクエストで送信する前に、iTextコントリビューターライセンス契約(iCLA)に署名を行なってください(中かっこやその他の構文上のコードはカウントされません)。本合意書なしにコードを受領することはできません。
  • GitHubのiTextリポジトリをフォークします。
  • iTextフォークをローカルマシンに複製します。
  • 適切なテストケースを含め、変更を加えます。
  • コーディングルールに準拠します。
  • コミットメッセージの規約に準拠した説明的なコミットメッセージを使って、変更をコミットします。
  • git rebase --interactiveを使って、(必要な際は)コミットを修正するすることができる最適な機会です。
  • ローカルで変更をビルドし、全テストに合格するように調整します。
  • 変更をGitHubアカウントにプッシュします。
  • GitHubでプルリクエストを作成します。

「ヘッドフォーク」はリポジトリで、「ベースフォーク」はiText7の公式リポジトリでなければなりません。

  • 変更を提案する場合
    • 必要なアップデートを加える
    • インタラクティブなリベースと共に必要な際はコメントを修正
    • テストの再実行をして、テストが未だに成功していることを確認します。
    • GitHubリポジトリに強制プッシュを行います。これはプルリクエストをアップデートします。

これで完了です!ご協力いただきありがとうございました!

プルリクエストのマージ後

プルリクエストのマージ後に、フォークの安全な削除を行い、メイン(アップストリーム)リポジトリから変更をプルすることが可能です。

コードルール

ソースコード全体の一貫性を確保することを目的として、作業中は下記のルールに注意してください。

  • 初めはJavaで開発を行い、次に.NETに移植するため、Javaでのコード送信がおすすめです。しかしこれは、.NETポートに最適なプルリクエストを行うことを妨げるということではありません。
  • すべてのJavaコードはJava 7でなければなりません。大変申し訳ありませんが、ラムダ式やその他のJava 8言語機能は準備しておりません。
  • すべての機能またはバグ修正は1つ以上の単体テストによりテストを行う必要があります。
  • すべてのパブリックAPIメソッドは、JavaDocでドキュメント化する必要があります。APIのドキュメント化方法を確認するには、既存のjavadocsをチェックしてください。
  • OracleのJavaプログラミング言語のコード規約に含まれているルールに、下記のルールが追加されています:
    • 全てのコードは100 文字以内に調整

Gitコミットガイドライン

git commitメッセージのフォーマット方法についてのガイドラインがあります。これは、プロジェクト履歴を確認する際に準拠しやすいより読みやすいメッセージにします。それだけではなく、git commitメッセージを使ってiText 7コミュニティ変更ログを生成します。

これらのガイドラインは、Chris Beamsのブログ投稿Gitコミットメッセージを書くためにはから取得されました。

コミットメッセージフォーマット

各コミットメッセージは件名本文フッターで構成されています。

<subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>

コミットメッセージの各文は72文字以下に納める必要があります。これによってGitHub上でのメッセージが様々なgitツール同様に読みやすくなります。

件名

件名には変更の詳細な説明を含みます。

本文

フッターにはBreaking Changes関する情報が含まれており、このコミットCloses によって、JIRAもしくはGitHubの問題を参照するところでもあります。

iCLAにサイン

プルリクエストを送信する前に、iTextコントリビューターライセンス契約(iCLA)に署名をしてください。さらに大きなコード変更(20行以上の重要なコード)を受領するには、iCLAに署名する必要があります。プロセスはとても簡単です!

(デジタル)署名を行い、メールかFAX、郵送フォームが必要です。

コントリビューター行動規範

このプロジェクトはご協力いただける方の行動規範でリリースされているということに注意してください。このプロジェクトに参加することによって、その条件に同意したとみなされます。

無料サポートではStack Exchangeネットワークと、コードホスティングにはGitHubが使われています。このサービス使用により、その条件に同意したとみなされます。

オープンソースコミュニティに協力する

iText 7 Communityのさらなる発展のためにソースコードを提供し、コミュニティにご協力いただけるようお願いします!

コントリビュートを始める
お問い合わせ

それでも問題が解決しませんか? 

お寄せいただいたご質問には、喜んでお答えいたします。当社へご連絡ください。内容を確認次第、追ってご連絡いたします。

問い合わせる
常に最新情報を得る

11,000人以上の購読者に加わって、iTextの新しい製品、アップデート、ヒント、記述的な解決策や出来事に関する最新情報を得ることでiText PDF専門家になりましょう。

今すぐ購読