Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for ignoring PHPCS standards during startup #285

Merged
merged 21 commits into from
Jul 6, 2022

Conversation

gudmdharalds
Copy link
Contributor

@gudmdharalds gudmdharalds commented Jul 5, 2022

This pull request adds support for ignoring PHPCS standards searched for during startup. The sniffs implemented by these PHPCS standards are then not available via --phpcs-sniffs-include or --phpcs-sniffs-exclude (unless they are included by other PHPCS standards available) and vip-go-ci will not attempt to get valid sniffs implemented by these PHPCS standards.

This resolves a problem introduced in #283 when PHPCSUtils was added.

TODO:

  • Add option parameter --phpcs-standards-to-ignore
  • Add --help message for --phpcs-standards-to-ignore
  • Implement ignoring PHPCS standards in phpcs-scan.php
  • Update tests
    • tests/integration/PhpcsScanValidateSniffsInOptionAndReportTest.php
    • tests/integration/MainRunInitOptionsPhpcsTest.php
  • Manually test reporting of invalid included/excluded PHPCS sniffs.
  • Update README
  • Changelog entry [ Changelog for version 1.2.4 #275 ]
  • Check status of automated tests

@gudmdharalds gudmdharalds added this to the 1.2.4 milestone Jul 5, 2022
@gudmdharalds gudmdharalds self-assigned this Jul 5, 2022
@gudmdharalds gudmdharalds marked this pull request as ready for review July 6, 2022 12:25
@wpcomvip-vipgoci-bot
Copy link
Collaborator

No issues were found to report when scanning latest commit (commit-ID: 9064bbf)


This bot provides automated PHP linting and PHPCS scanning. For more information about the bot and available customizations, see our documentation.



Scan run detail

Software versions

  • vip-go-ci version: 1.2.3
  • PHP runtime version for vip-go-ci: 8.1.7
  • PHP runtime for linting:
    • PHP 8.1: 8.1.7
  • PHP runtime version for PHPCS: 7.4.30
  • PHPCS version: 3.6.2
  • PHP runtime version for SVG scanner: 7.4.30

Options file (.vipgoci_options)

Options file enabled: true

Configurable options:

  • skip-execution
  • skip-draft-prs
  • lint-modified-files-only
  • phpcs
  • phpcs-severity
  • phpcs-sniffs-include
  • phpcs-sniffs-exclude
  • report-no-issues-found
  • review-comments-sort
  • review-comments-include-severity
  • post-generic-pr-support-comments
  • review-comments-sort
  • scan-details-msg-include
  • svg-checks
  • autoapprove
  • autoapprove-php-nonfunctional-changes
  • hashes-api

Options altered:

  • phpcs-severityset to1
  • phpcs-sniffs-includeset toGeneric.PHP.DisallowShortOpenTag, Squiz.PHP.CommentedOutCode
  • phpcs-sniffs-excludeset toWordPress.Security.EscapeOutput, WordPress.PHP.DevelopmentFunctions, WordPress.WP.AlternativeFunctions, WordPress.PHP.DiscouragedPHPFunctions, WordPress.Files.FileName, Squiz.Commenting.FileComment, Generic.PHP.Syntax
  • skip-draft-prsset to

PHP lint options

PHP lint files enabled: true

Lint modified files only: true

Directories not PHP linted:

  • None

SVG configuration

SVG scanning enabled: true

Auto-approval configuration

Auto-approvals enabled: true

Non-functional changes auto-approved: true

Auto-approval DB enabled: false

Auto-approved file-types:

  • css
  • csv
  • eot
  • gif
  • gz
  • ico
  • ini
  • jpeg
  • jpg
  • json
  • less
  • map
  • md
  • mdown
  • mo
  • mp4
  • otf
  • pcss
  • pdf
  • po
  • pot
  • png
  • sass
  • scss
  • styl
  • ttf
  • txt
  • woff
  • woff2
  • yml

PHPCS configuration

PHPCS scanning enabled: true

PHPCS severity level: 1

Standard(s) used:

  • PHPCompatibility
  • PHPCompatibilityParagonieRandomCompat
  • PHPCompatibilityParagonieSodiumCompat
  • VariableAnalysis
  • WordPress

Runtime set:

  • testVersion 8.1-

Custom sniffs included:

  • Generic.PHP.DisallowShortOpenTag
  • Squiz.PHP.CommentedOutCode

Custom sniffs excluded:

  • WordPress.Security.EscapeOutput
  • WordPress.PHP.DevelopmentFunctions
  • WordPress.WP.AlternativeFunctions
  • WordPress.PHP.DiscouragedPHPFunctions
  • WordPress.Files.FileName
  • Squiz.Commenting.FileComment
  • Generic.PHP.Syntax

Directories not PHPCS scanned:

  • tests/unit

@gudmdharalds gudmdharalds merged commit 36cb4d9 into trunk Jul 6, 2022
@gudmdharalds gudmdharalds deleted the fix/phpcs-ignore-standard branch July 6, 2022 13:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants