Skip to content

Bump automattic/vipwpcs from 3.0.1 to 3.1.0 - #1423

Merged
mukeshpanchal27 merged 1 commit into
trunkfrom
dependabot/composer/automattic/vipwpcs-3.1.0
Jul 28, 2026
Merged

Bump automattic/vipwpcs from 3.0.1 to 3.1.0#1423
mukeshpanchal27 merged 1 commit into
trunkfrom
dependabot/composer/automattic/vipwpcs-3.1.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 27, 2026

Copy link
Copy Markdown
Contributor

Bumps automattic/vipwpcs from 3.0.1 to 3.1.0.

Release notes

Sourced from automattic/vipwpcs's releases.

VIP Coding Standards 3.1.0

This release raises the minimum requirements and reworks a large number of the VIPCS sniffs.

The minimum WordPressCS requirement is raised to 3.4.1 (from 3.2.0) — a security release which also brings numerous accuracy improvements to sniffs that VIPCS bundles — along with PHP_CodeSniffer 3.13.5, PHPCSUtils 1.2.3, PHPCSExtra 1.5.1 and VariableAnalysis 2.13.0. The minimum PHP version is now 7.4. Many sniffs have been reworked to fix false positives, add support for modern PHP syntaxes and adopt PHPCSUtils. The JavaScript-specific sniffs and the DynamicCalls sniff have been hard-deprecated ahead of their removal in 4.0.0, and the unused Security.Twig sniff has been removed.

Please ensure you run composer update automattic/vipwpcs --with-dependencies to benefit from this.

Added

  • #882: Performance/NoPaging: flag posts_per_page and numberposts set to -1 (WordPress' "no limit" value), which previously slipped past the WPCS > 100 check.
  • #883: Hooks/AlwaysReturnInFilter: exit, die or throw in a filter callback now raises a dedicated TerminatingInsteadOfReturn warning, instead of the generic MissingReturnStatement error.
  • #890: Add a Byte Order Mark (BOM) check to the WordPressVIPMinimum ruleset.

Changed

  • #824: Disable WordPress.Security.EscapeOutput.ExceptionNotEscaped in the WordPressVIPMinimum ruleset, as throwing an exception with a translated message triggered it and the check is considered controversial.
  • #854: Functions/StripTags: always flag use of strip_tags(), as the function should never be used on the VIP platform.
  • As VIPCS bundles a number of WordPressCS sniffs and the minimum WordPressCS version has been raised to 3.4.1, users will now receive more accurate results from the following WPCS sniffs (see the WordPressCS 3.3.0, 3.4.0 and 3.4.1 release notes for full details):
    • WordPress.DB.DirectDatabaseQuery: recognises more caching functions (such as the wp_cache_*_multiple() and wp_cache_*_salted() functions), and has fewer false positives when caching functions are called using a non-canonical function name.
    • WordPress.DB.PreparedSQL: fewer false positives for correctly escaped SQL called using a non-canonical function name, and for static method calls to a non-global class named wpdb.
    • WordPress.Security.EscapeOutput: adds support for attributes on anonymous classes (PHP 8.0), readonly anonymous classes (PHP 8.3) and exit as a function call (PHP 8.4); expands *::class false-positive protection; fixes false positives/negatives for get_search_query() and _deprecated_file() used with non-standard casing; and no longer treats wp_kses_allowed_html() as an escaping function, which may surface a new warning where that function's return value was being output directly.
    • WordPress.Security.NonceVerification: fewer false positives when the nonce-checking function is called using a non-canonical function name.
    • WordPress.Security.ValidatedSanitizedInput: clearer error message for the InputNotValidated error code.
    • WordPress.WP.AlternativeFunctions: fixes a false negative when class members share a name with select global WP functions/constants, and a false positive for the fully qualified stream constants \STDIN, \STDOUT and \STDERR.
    • WordPress.WP.CronInterval: fixes a false positive when the callback reference used a different case to the function declaration.

Deprecated

  • #839: Hard-deprecate all JavaScript-specific sniffs (WordPressVIPMinimum.JS.*). They are excluded from the rulesets and will be removed in VIPCS 4.0.0.
  • #865: Hard-deprecate the WordPressVIPMinimum.Functions.DynamicCalls sniff. It is excluded from the rulesets and will be removed in VIPCS 4.0.0.

Removed

  • #864: Remove the unused WordPressVIPMinimum.Security.Twig sniff.

Fixed

  • #840: Fix dangerous comparisons against the value of token constants.
  • #842: Security/Mustache: fix potential false positives on a delimiter change, and examine double-quoted strings with interpolation and nowdocs which were previously skipped.
  • #846, #848: Security/PHPFilterFunctions: fix false positives for method calls, namespaced function calls and attributes which share the function name.
  • #847: Security/StaticStrreplace: fix flawed detection of str_replace() by extending the WordPressCS AbstractFunctionParameterSniff; method calls, namespaced calls, first-class callables and argument unpacking are no longer flagged.
  • #850: Variables/ServerVariables: fix incorrect quote stripping and expand safeguards against false positives.
  • #851: Constants/ConstantString: fix flawed detection of define()/defined() by extending AbstractFunctionParameterSniff, and clarify the error message.
  • #852: Hooks/RestrictedHooks: fix false positives (method/namespaced calls, first-class callables, attributes) and disregard comments in the hook-name parameter.
  • #853: Performance/LowExpiryCacheTime: avoid a possible fatal error when a PHP 7.4+ numeric literal or 8.1+ octal literal is used as the cache time.
  • #855: Performance/FetchingRemoteData: fix flawed function-call detection by extending AbstractFunctionParameterSniff.
  • #858: Classes/DeclarationCompatibility: modernise and fix the sniff.
  • #861: Security/EscapingVoidReturnFunctions: fix flawed detection of esc_*()/wp_kses*() calls by extending AbstractFunctionParameterSniff; safeguard argument unpacking, attributes and first-class callables.
  • #862: Functions/DynamicCalls: fix end-of-statement determination and other minor issues.
  • #866: UserExperience/AdminBarRemoval: several fixes — case-insensitive function-name matching, recognise add_action() as an alias, disregard comments in parameters, and no longer treat a CSS file as PHP; plus PHP 8.0+ function-call and 8.1+ first-class-callable support.
  • #867: Performance/CacheValueOverride: fix false negatives for fully qualified calls and false positives for PHP 8.1+ first-class callables and variables.
  • #869: Constants/RestrictedConstants: fix a nonsensical comparison and use PHPCSUtils for quote stripping.
  • #872: Performance/TaxonomyMetaInOptions: extend AbstractFunctionParameterSniff and add PHP 8.0+ function-call and nullsafe-operator support.
  • #881: Hooks/AlwaysReturnInFilter: resolve bugs and adopt PHPCSUtils.

... (truncated)

Changelog

Sourced from automattic/vipwpcs's changelog.

[3.1.0] - 2026-07-27

Props: @​GaryJones, @​jrfnl, @​mahangu, @​mchanDev, @​mujuonly, @​rebeccahum

This release raises the minimum requirements and reworks a large number of the VIPCS sniffs.

The minimum WordPressCS requirement is raised to 3.4.1 (from 3.2.0) — a security release which also brings numerous accuracy improvements to sniffs that VIPCS bundles — along with PHP_CodeSniffer 3.13.5, PHPCSUtils 1.2.3, PHPCSExtra 1.5.1 and VariableAnalysis 2.13.0. The minimum PHP version is now 7.4. Many sniffs have been reworked to fix false positives, add support for modern PHP syntaxes and adopt PHPCSUtils. The JavaScript-specific sniffs and the DynamicCalls sniff have been hard-deprecated ahead of their removal in 4.0.0, and the unused Security.Twig sniff has been removed.

Please ensure you run composer update automattic/vipwpcs --with-dependencies to benefit from this.

Added

  • #882: Performance/NoPaging: flag posts_per_page and numberposts set to -1 (WordPress' "no limit" value), which previously slipped past the WPCS > 100 check.
  • #883: Hooks/AlwaysReturnInFilter: exit, die or throw in a filter callback now raises a dedicated TerminatingInsteadOfReturn warning, instead of the generic MissingReturnStatement error.
  • #890: Add a Byte Order Mark (BOM) check to the WordPressVIPMinimum ruleset.

Changed

  • #824: Disable WordPress.Security.EscapeOutput.ExceptionNotEscaped in the WordPressVIPMinimum ruleset, as throwing an exception with a translated message triggered it and the check is considered controversial.
  • #854: Functions/StripTags: always flag use of strip_tags(), as the function should never be used on the VIP platform.
  • As VIPCS bundles a number of WordPressCS sniffs and the minimum WordPressCS version has been raised to 3.4.1, users will now receive more accurate results from the following WPCS sniffs (see the WordPressCS 3.3.0, 3.4.0 and 3.4.1 release notes for full details):
    • WordPress.DB.DirectDatabaseQuery: recognises more caching functions (such as the wp_cache_*_multiple() and wp_cache_*_salted() functions), and has fewer false positives when caching functions are called using a non-canonical function name.
    • WordPress.DB.PreparedSQL: fewer false positives for correctly escaped SQL called using a non-canonical function name, and for static method calls to a non-global class named wpdb.
    • WordPress.Security.EscapeOutput: adds support for attributes on anonymous classes (PHP 8.0), readonly anonymous classes (PHP 8.3) and exit as a function call (PHP 8.4); expands *::class false-positive protection; fixes false positives/negatives for get_search_query() and _deprecated_file() used with non-standard casing; and no longer treats wp_kses_allowed_html() as an escaping function, which may surface a new warning where that function's return value was being output directly.
    • WordPress.Security.NonceVerification: fewer false positives when the nonce-checking function is called using a non-canonical function name.
    • WordPress.Security.ValidatedSanitizedInput: clearer error message for the InputNotValidated error code.
    • WordPress.WP.AlternativeFunctions: fixes a false negative when class members share a name with select global WP functions/constants, and a false positive for the fully qualified stream constants \STDIN, \STDOUT and \STDERR.
    • WordPress.WP.CronInterval: fixes a false positive when the callback reference used a different case to the function declaration.

Deprecated

  • #839: Hard-deprecate all JavaScript-specific sniffs (WordPressVIPMinimum.JS.*). They are excluded from the rulesets and will be removed in VIPCS 4.0.0.
  • #865: Hard-deprecate the WordPressVIPMinimum.Functions.DynamicCalls sniff. It is excluded from the rulesets and will be removed in VIPCS 4.0.0.

Removed

  • #864: Remove the unused WordPressVIPMinimum.Security.Twig sniff.

Fixed

  • #840: Fix dangerous comparisons against the value of token constants.
  • #842: Security/Mustache: fix potential false positives on a delimiter change, and examine double-quoted strings with interpolation and nowdocs which were previously skipped.
  • #846, #848: Security/PHPFilterFunctions: fix false positives for method calls, namespaced function calls and attributes which share the function name.
  • #847: Security/StaticStrreplace: fix flawed detection of str_replace() by extending the WordPressCS AbstractFunctionParameterSniff; method calls, namespaced calls, first-class callables and argument unpacking are no longer flagged.
  • #850: Variables/ServerVariables: fix incorrect quote stripping and expand safeguards against false positives.
  • #851: Constants/ConstantString: fix flawed detection of define()/defined() by extending AbstractFunctionParameterSniff, and clarify the error message.
  • #852: Hooks/RestrictedHooks: fix false positives (method/namespaced calls, first-class callables, attributes) and disregard comments in the hook-name parameter.
  • #853: Performance/LowExpiryCacheTime: avoid a possible fatal error when a PHP 7.4+ numeric literal or 8.1+ octal literal is used as the cache time.
  • #855: Performance/FetchingRemoteData: fix flawed function-call detection by extending AbstractFunctionParameterSniff.
  • #858: Classes/DeclarationCompatibility: modernise and fix the sniff.
  • #861: Security/EscapingVoidReturnFunctions: fix flawed detection of esc_*()/wp_kses*() calls by extending AbstractFunctionParameterSniff; safeguard argument unpacking, attributes and first-class callables.
  • #862: Functions/DynamicCalls: fix end-of-statement determination and other minor issues.
  • #866: UserExperience/AdminBarRemoval: several fixes — case-insensitive function-name matching, recognise add_action() as an alias, disregard comments in parameters, and no longer treat a CSS file as PHP; plus PHP 8.0+ function-call and 8.1+ first-class-callable support.
  • #867: Performance/CacheValueOverride: fix false negatives for fully qualified calls and false positives for PHP 8.1+ first-class callables and variables.
  • #869: Constants/RestrictedConstants: fix a nonsensical comparison and use PHPCSUtils for quote stripping.

... (truncated)

Commits
  • 9c47cd0 Merge pull request #893 from Automattic/release/3.1.0
  • e9b8992 docs: add changelog for 3.1.0 release
  • 0ecf92e Merge pull request #892 from Automattic/GaryJones/update-wpcs-dependency-341
  • c198d3e build: raise minimum WordPressCS to 3.4.1
  • 0152175 Merge pull request #891 from Automattic/dependabot/github_actions/actions/che...
  • 7b2e08d GH Actions: Bump actions/checkout from 7.0.0 to 7.0.1
  • c4531d7 Merge pull request #890 from Automattic/add/BOM-sniff
  • 7592044 test: report discrepancies from both ruleset tests
  • 06c8983 test: preserve BOM in ruleset test fixtures via EditorConfig
  • ad57653 Refactor tests and test runner, add BOM sniff, add bom specific ruleset to pr...
  • Additional commits viewable in compare view

Open WordPress Playground Preview

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file php Pull requests that update Php code labels Jul 27, 2026
@github-actions

github-actions Bot commented Jul 28, 2026

Copy link
Copy Markdown

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: ernilambar <nilambar@git.wordpress.org>
Co-authored-by: mukeshpanchal27 <mukesh27@git.wordpress.org>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@mukeshpanchal27

Copy link
Copy Markdown
Member

@dependabot rebase

Bumps [automattic/vipwpcs](https://github.com/Automattic/VIP-Coding-Standards) from 3.0.1 to 3.1.0.
- [Release notes](https://github.com/Automattic/VIP-Coding-Standards/releases)
- [Changelog](https://github.com/Automattic/VIP-Coding-Standards/blob/develop/CHANGELOG.md)
- [Commits](Automattic/VIP-Coding-Standards@3.0.1...3.1.0)

---
updated-dependencies:
- dependency-name: automattic/vipwpcs
  dependency-version: 3.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/composer/automattic/vipwpcs-3.1.0 branch from 54838b5 to 8a3e339 Compare July 28, 2026 03:55
@mukeshpanchal27
mukeshpanchal27 merged commit 8b1e4a3 into trunk Jul 28, 2026
28 checks passed
@mukeshpanchal27
mukeshpanchal27 deleted the dependabot/composer/automattic/vipwpcs-3.1.0 branch July 28, 2026 04:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file php Pull requests that update Php code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants