- 投稿日:2019-03-30T23:53:00+09:00
php-master-changes 2019-03-29
今日は不要な php7.spec.in の削除、FFI の修正色々、テストの修正、for ループ条件部での変数宣言をしている箇所があったのの修正があった!
2019-03-29
petk: Remove php7.spec.in file
- https://github.com/php/php-src/commit/5e16f5b8d8c93a124c9b41e17b923195510704c7
- [7.4~]
- RPM specification ファイルを configure で生成する用の php7.spec.in の削除
- 昔公式 RPM パッケージというのを作る気があった?らしい
dstogov: Fixed bug #77768 (FFI: Builtin Types Should Not Raise Error On Redeclaration)
- https://github.com/php/php-src/commit/a3e52afebe77517ca10d98ba57fefe3f178d56b6
- [7.4~]
- ext/ffi で、組み込み型の再宣言をエラーにせず無視するよう修正
dstogov: Allow incomplete array variables - extern const char * const sys_errlist[]
- https://github.com/php/php-src/commit/94e3db64b2070c21e66c7b047940e2e5489137d5
- [7.4~]
- ext/ffi で、extern 宣言で
[]を使うのを許可するよう修正dstogov: Ignore "format" attribute
- https://github.com/php/php-src/commit/adf930c038c0d73f133f3e851d2bd2d827f0ebb2
- [7.4~]
- ext/ffi で、__format__ を無視するよう修正
dstogov: Added support for more GCC extensions: attributes, extension, asm (ignored)
- https://github.com/php/php-src/commit/745dd94e5585b1dd54716272dc0c37a18eaf1ee1
- [7.4~]
- ext/ffi で、GCC 拡張のサポートを追加
cmb69: Fix test expectation
dstogov: Allow usage of incomplete types for external variables, function parameters and return values
- https://github.com/php/php-src/commit/24fa2008dd987ffececbf0e247b62f049ab2f4a8
- [7.4~]
- ext/ffi で、外部定義の変数や引数、返り値型で不完全型の利用を許容するよう修正
dstogov: Fixed memory leaks
- https://github.com/php/php-src/commit/a2b39aa0de58898d87d5618af05a4487830532d0
- [7.4~]
- ext/ffi で、メモリリークの修正
mbeccati: Fixed SKIPIF when --disable-mbregex is used
- https://github.com/php/php-src/commit/16b40a1806e2c6524a0a3ee07e252cb0406be443
- [7.4~]
- ext/mbstring で、SKIPIF の条件を修正して --disable-mbregex 利用時のテストこけを修正
mbeccati: Removed declaration inside for loops
- https://github.com/php/php-src/commit/4726c35ca33da837406745f21e2320fb18ae7618
- [7.4~]
- ext/mbstring で、for ループ条件部での変数宣言を外に出した
- C だからね……
cmb69: Fix test expectations
- https://github.com/php/php-src/commit/9f545de0b6b1502364eebbf5ddc0e58a070aa78b
- [7.2~]
- ext/imap でテストの期待出力の修正
dstogov: Partial support for GCC mode attribute.
- https://github.com/php/php-src/commit/61ad294f26fa7941a26361a68cf6a01b8a2c3e4f
- [7.4~]
- ext/ffi で、GCC の mode 属性に部分的に対応
- 投稿日:2019-03-30T15:33:43+09:00
Online Computer Science Homework Help
Have you difficulties in doing programming in computer science. Our full support through Computer science assignment help will overcome your difficulties. To acquire proper grip over computer science visit our webpage domyhomework.co now. You will surely score well after that. Our highly qualified experts provide depth explanation to make each concept understandable. for more info visit my website:https://www.domyhomework.co/computer-science-assignment-help.html
- 投稿日:2019-03-30T00:22:19+09:00
生まれて初めてGithubのOSSにプルリクエストを通した話
正直n番煎じな内容なのですが,自分用のメモとして残しておきます.
OSSとは
オープンソースソフトウェア(英: Open Source Software、略称: OSS)とは、利用者の目的を問わずソースコードを使用、調査、再利用、修正、拡張、再配布が可能なソフトウェアの総称である [https://ja.wikipedia.org/wiki/オープンソースソフトウェア]
GolangやKotlinなどのプログラミング言語をはじめとして,Visual Studio CodeのようなエディタもOSSとして流布されています.また,多くのOSSがGithub上で管理されています.
OSSの開発に貢献するための手順
今回実際に通したPR(プルリクエスト)はこちらになります.株式会社ロックオン様が開発しているECサイトのOSSです.
CSS一行を書き換えただけの簡単な編集しかしていません.https://github.com/EC-CUBE/ec-cube/pull/4123
OSSの開発ドキュメントを読む
OSSは不特定多数に人が自由に編集し,ソースコードの追加・修正が行われていきます.
そのため,命名規則やディレクトリ構成などがあらかじめ策定されていることが多いです.編集を始める前にドキュメントを一読しておきましょうissueを探す
現時点での不具合や追加すべき機能などがGithubのissuesで挙げられ,各エンジニアが議論します.
issueは解決の優先順位や修正の難易度によって異なるラベルがつけられています.
今回は簡単に貢献できそうな「Easy」を選んで探しました.ソースコードを編集してPRを送る
リポジトリをフォークする
- フォークするリポジトリにアクセスする
- 右上のforkボタンを押して自分のアカウントのリモートリポジトリにコピーする
ローカルリポジトリにクローンする
フォークした自分のリモートリポジトリからクローンし,remote urlを設定します.
$ git clone [repository url] $ git remote add origin [your repository url]さらに,自身の作業用ブランチを用意します.どのissueを解決したのかわかるブランチ名が好ましいようです.
今回はCSSによる表示を変更するだけですので,修正する旨を示すブランチ名にしました.$ git checkout -b fix/plugin-version-display実際に作業し,自分環境でテストする
ソースコードの編集を行いコミット,プッシュしていきます.
PRの作成
フォークしたリポジトリにプッシュするとPRを作成するボタンがGithubに出てくるのでボタンを押してPRを作成します.
PRの作成時にはメッセージを書く欄があるので,ここにどのissueを解決したのか,どんな実装を行なったのかなど今回のPRの概観がわかるような説明を記述します.
今回はPRメッセージの形式も決まっているため,それに沿って記述しますCIとレビュー
今回のプロジェクトではPRに対してScrutinizerやTravis CIによるテストが行われていました.
これらのテストに通らないと,そもそもリクエストが承認されることはありません(品質を保つためです).
PRはレビュワーの方が内容を確認し,問題がなければマージされます.今回は修正になんの問題もなくそのままマージしていただきました.感想
1ファイル1行修正1コミットだけの簡単なPRでしたが,原因を探す間にプロジェクトに用いられている技術的なことが知れたりと学ぶことがたくさんありました.
実際に自分が行なった修正が本バージョンに反映されるとモチベーションが上がるし,次もコントリビュートしたくなります.もっとPR量産していきます!!!!



