Bug(バグ) #2503
コーディング規約チェックのルールにおいて制御構造のブロックで空白が考慮されていない
Start date:
2011-10-18
Due date:
% Done:
0%
3.6 で発生するか:
Yes (はい)
3.8 で発生するか:
Yes (はい)
Description
改行¶
コーディング規約チェックのルールで制御構造のブロックで空白が考慮されていない.
data/CodingStandard/OpenPNE3/Sniffs/WhiteSpace/ControlSignatureSniff.php
19 protected function getPatterns() 20 { 21 return array( 22 'tryEOL{EOL...}EOLcatch (...)EOL{EOL', 23 'doEOL{EOL...}EOLwhile (...);EOL', 24 'while (...)EOL{EOL', 25 'for (...)EOL{EOL', 26 'if (...)EOL{EOL', 27 'foreach (...)EOL{EOL', 28 '}EOLelseif (...)EOL{EOL', 29 '}EOLelseEOL{EOL', 30 ); 31 }
修正案¶
下記のように修正.
diff --git a/data/CodingStandard/OpenPNE3/Sniffs/WhiteSpace/ControlSignatureSniff.php b/data/CodingStandard/OpenPNE3/Sniffs/WhiteSpace/ControlSignatureSniff.php index d89fd62..b05ca6a 100644 --- a/data/CodingStandard/OpenPNE3/Sniffs/WhiteSpace/ControlSignatureSniff.php +++ b/data/CodingStandard/OpenPNE3/Sniffs/WhiteSpace/ControlSignatureSniff.php @@ -19,14 +19,14 @@ class OpenPNE3_Sniffs_WhiteSpace_ControlSignatureSniff extends PHP_CodeSniffer_S protected function getPatterns() { return array( - 'tryEOL{EOL...}EOLcatch (...)EOL{EOL', - 'doEOL{EOL...}EOLwhile (...);EOL', - 'while (...)EOL{EOL', - 'for (...)EOL{EOL', - 'if (...)EOL{EOL', - 'foreach (...)EOL{EOL', - '}EOLelseif (...)EOL{EOL', - '}EOLelseEOL{EOL', + 'tryEOL *{EOL...}EOL *catch (...)EOL *{EOL', + 'doEOL *{EOL...}EOL *while (...);EOL', + 'while (...)EOL *{EOL', + 'for (...)EOL *{EOL', + 'if (...)EOL *{EOL', + 'foreach (...)EOL *{EOL', + '}EOL *elseif (...)EOL *{EOL', + '}EOL *elseEOL *{EOL', ); } }
Related issues
Associated revisions
(fixes #2503) fixed coding standard rule considering whitespace
History
#1
Updated by wa ta over 11 years ago
- Status changed from Accepted(着手) to Pending Review(レビュー待ち)
- % Done changed from 0 to 50
更新履歴 307729cb350ce8fd290aa78d1a61c4f31717cf71 で適用されました。
#2
Updated by Shouta Kashiwagi almost 11 years ago
- Target version changed from OpenPNE 3.7.0 to 252
#3
Updated by Shouta Kashiwagi almost 11 years ago
- Target version changed from 252 to OpenPNE 3.8.x
#4
Updated by Shinichi Urabe over 8 years ago
- Target version changed from OpenPNE 3.8.x to OpenPNE 3.8.12
- 3.6 で発生するか set to Unknown (未調査)
- 3.8 で発生するか set to Unknown (未調査)
#5
Updated by 誠二 天重 over 8 years ago
- Copied to Backport(バックポート) #3642: コーディング規約チェックのルールにおいて制御構造のブロックで空白が考慮されていない added
#6
Updated by 誠二 天重 over 8 years ago
- Target version changed from OpenPNE 3.8.12 to OpenPNE 3.8.x
#7
Updated by 誠二 天重 over 8 years ago
- Target version changed from OpenPNE 3.8.x to OpenPNE 3.9.0-old
#8
Updated by isao sano over 8 years ago
- Copied to Backport(バックポート) #3666: コーディング規約チェックのルールにおいて制御構造のブロックで空白が考慮されていない added
#9
Updated by kaoru n over 7 years ago
- Assignee deleted (
Yuya Watanabe)
#10
Updated by kaoru n over 6 years ago
- Assignee set to Youichi Kimura
#11
Updated by Youichi Kimura over 6 years ago
- 3.6 で発生するか changed from Unknown (未調査) to Yes (はい)
- 3.8 で発生するか changed from Unknown (未調査) to Yes (はい)
現在 OpenPNE3 の data/CodingStandard/OpenPNE3 以下にあるファイルは PHP_CodeSniffer 1.2.x でないと動作しない。
かなり古いバージョンであることは問題ではあるが、ひとまず下記の手順で動作確認はできた。
$ mkdir phpcs $ cd phpcs $ cat > composer.json <<'EOF' { "repositories": [ { "type": "pear", "url": "https://pear.php.net/" } ], "require": { "pear-pear/PHP_CodeSniffer": "1.2.2", "pear-pear/PEAR": "^1.4.0b1" } } EOF $ composer update $ ./vendor/bin/composer-php ./vendor/bin/phpcs --standard=/home/upsilon/git/openpne3/data/CodingStandard/OpenPNE3 /home/upsilon/git/openpne3/lib/util/opToolkit.class.php
#12
Updated by Youichi Kimura over 6 years ago
- Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)
PHP_CodeSniffer_Standards_AbstractPatternSniff
には ' *'
のように可変長の空白文字にのみマッチさせる構文は存在しません。
実際に 307729cb を適用した状態で phpcs を実行すると確かに「if (...)\n {
」などに対するエラーは表示されなくなりますが、コーディング規約に違反した「if (...) {
」(中括弧の前に改行がない) に対してもエラーが出なくなっています。
#14
Updated by kaoru n over 6 years ago
- Status changed from Rejected(差し戻し) to Invalid(無効)
- % Done changed from 50 to 0
#2503-13 により無効とします
#15
Updated by kaoru n over 6 years ago
- Related to Enhancement(機能追加・改善) #4004: PHP_CodeSniffer 最新版で動作するようにする added