Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PHPの開発に貢献する4つの方法

 PHPの開発に貢献する4つの方法

2024-01-13 PHPカンファレンス北海道2024 スポンサーLT資料
https://fortee.jp/phpcon-hokkaido-2024

Atsushi Matsuo

January 13, 2024
Tweet

More Decks by Atsushi Matsuo

Other Decks in Programming

Transcript

  1. 2 Copyright © Cybozu • 松尾 篤(まつお あつし) • PHP使用歴:約19年

    • PHPを使った開発歴は約16年 • 2023年4月にGaroon開発チームに加入 • Garoonのセキュリティを維持するYukimiチームの紹介 https://blog.cybozu.io/entry/2023/10/04/101916 • PHP関連カンファレンスでのLT登壇は初めて 自己紹介
  2. 3 Garoonとは 3 中堅・大規模組織向けのグループウェア • 社内の様々な情報を整理・統合表示するためのポータル機能 • きめ細やかなアクセス権限設定や管理機能 • 多言語対応やAPIによる他システムと連携する拡張性など

    スケジュール 掲示板 メッセージ スペース ファイル管理 ワークフロー ポータル 組織ロール 多言語 タイムゾーン 他システム 連携 情報共有・コミュニケーションに 必要なアプリケーション 中堅・大規模組織の運営に 必要な管理機能
  3. 4 Copyright © Cybozu • 製品を安定して提供するにはPHP自体の発展や継続が必要不可欠 • サイボウズの存在意義(Purpose)は「チームワークあふれる社会 を創る」 •

    PHPとPHPコミュニティへの支援もできる限り行っていきたい • サイボウズは事業成長のフィードバックとしてOSSへ寄付をしています • サイボウズ GaroonからThe PHP Foundationに毎年寄付をしています • サイボウズのOSSポリシー : https://cybozu-oss-policy.readthedocs.io/ja/ • オープンソースコミュニティにおける良き一員であるために必要なことを規定 • 社員がOSS関連活動を過大な負担なく行えるよう支援 サイボウズ GaroonはPHPベースの製品
  4. 5 Copyright © Cybozu • ソースコードが公開され、誰でもその改変および再配布を自由 に行うことができる • 誰でも開発に参加できる •

    何らかの形で貢献(コントリビュート)できる PHPはOSS(オープンソースソフトウェア)
  5. 6 Copyright © Cybozu 1.Running test suites in RC and

    release distributions of PHP 2.Help finding and diagnosing failed tests, see the phpt documentation 3.Filing and resolving bug reports on GitHub Issues. 4.Help maintain and or translate documentation files at the doc-* repositories on github. Check out our guide for contributors. https://php.net/get-involved より引用 Four Best Ways to Contribute
  6. 8 Copyright © Cybozu • 実行手順例 • https://github.com/php/php-src に記載されている手順を実行 $

    tar xzvf php-8.3.1.tar.gz $ cd php-8.3.1 $ ./configure --enable-debug $ make -j4 $ make TEST_PHP_ARGS=-j4 test • Ubuntu 22.04 LTSでテストを実行する際にはメモリーは2GB以上必要 テストを実行する
  7. 9 Copyright © Cybozu • 実行結果の例 =================================================== ================== FAILED TEST

    SUMMARY --------------------------------------------------------------------- Bug #81740 (PDO::quote() may return unquoted string) [ext/pdo_sqlite/tests/bug81740.phpt] =================================================== ================== You may have found a problem in PHP. This report can be saved and used to open an issue on the bug tracker at https://github.com/php/php-src/issues This gives us a better understanding of PHP's behavior. Do you want to save this report in a file? [Yn]: n 失敗したテストの内容を診断する
  8. 10 Copyright © Cybozu • 不具合の登録はGitHub Issuesで • https://github.com/php/php-src/issues •

    GitHubのアカウントが必要 • テストの追加や不具合の修正にはプルリクエストを送る • 不具合の修正にはPHP RFC(Request for Comments)の提出は不要 • 実際に貢献する際に事前に参照しておきたいドキュメント • https://github.com/php/php-src/blob/master/README.md • https://github.com/php/php-src/blob/master/CONTRIBUTING.md • https://wiki.php.net/vcs/gitworkflow 不具合の登録や修正を行う
  9. 11 Copyright © Cybozu • GitHub上にあるPHP( https://github.com/php )のdoc-* リポジトリで作業 •

    例: https://github.com/php/doc-ja • 詳細はPHP Manual Contribution Guide ( http://doc.php.net/tutorial/ )を参照 • PHP マニュアル 日本語版について • https://github.com/php/doc- ja/blob/master/README_About_ThisManual.md ドキュメントの保守や翻訳を手伝う
  10. 13 Copyright © Cybozu • 視野が広がる • 社外の人と交流できる機会を持つきっかけにつながる • いろいろと疑問点が出てきて実際に試してみるきっかけにつながる

    • 知見を広げられる • OSSだと無料でサービスを利用できる場合があり本格導入のきっかけになる • CI系のサービスを使うことで各種OSSの変更点を知るきっかけにつながる • 発表すると楽しい • 名前を覚えてもらいやすくなりコミュニティに参加しやすくなる • 一緒に活動する人がいると様々なことを知ることができてより楽しくなる OSS活動のメリット