Commit d45a63f3830 for woocommerce

commit d45a63f38305b346cd968aa41c5a0ef321b73774
Author: Raluca Stan <ralucastn@gmail.com>
Date:   Thu Aug 27 10:25:40 2026 +0200

    Remove the unused grunt-phpcs and grunt-contrib-clean packages (#68070)

    * Remove unused grunt-phpcs and grunt-contrib-clean packages

    * Add changelog entry for classic-assets Grunt cleanup

diff --git a/plugins/woocommerce/changelog/dev-remove-unused-grunt-phpcs-clean b/plugins/woocommerce/changelog/dev-remove-unused-grunt-phpcs-clean
new file mode 100644
index 00000000000..f9555dc955c
--- /dev/null
+++ b/plugins/woocommerce/changelog/dev-remove-unused-grunt-phpcs-clean
@@ -0,0 +1,3 @@
+Significance: patch
+Type: dev
+Comment: Remove the unused grunt-phpcs and grunt-contrib-clean packages from the classic-assets Grunt setup; no registered task ever ran them.
diff --git a/plugins/woocommerce/client/legacy/Gruntfile.js b/plugins/woocommerce/client/legacy/Gruntfile.js
index 86cdccf6eae..a0035f5e56a 100644
--- a/plugins/woocommerce/client/legacy/Gruntfile.js
+++ b/plugins/woocommerce/client/legacy/Gruntfile.js
@@ -14,7 +14,6 @@ module.exports = function ( grunt ) {
 			js: 'js',
 			// See `cssDest`. The plugin enqueues from `assets/js`.
 			jsDest: '../../assets/js',
-			php: 'includes',
 		},


@@ -136,24 +135,6 @@ module.exports = function ( grunt ) {
 			},
 		},

-		// PHP Code Sniffer.
-		phpcs: {
-			options: {
-				bin: 'vendor/bin/phpcs',
-			},
-			dist: {
-				src: [
-					'**/*.php', // Include all php files.
-					'!includes/api/legacy/**',
-					'!includes/libraries/**',
-					'!node_modules/**',
-					'!tests/cli/**',
-					'!tmp/**',
-					'!vendor/**',
-				],
-			},
-		},
-
 		// The css tasks process files in place, so move them
 		// to their final location afterwards.
 		move: {
@@ -219,14 +200,12 @@ module.exports = function ( grunt ) {

 	// Load NPM tasks to be used here.
 	grunt.loadNpmTasks( 'grunt-sass' );
-	grunt.loadNpmTasks( 'grunt-phpcs' );
 	grunt.loadNpmTasks( 'grunt-rtlcss' );
 	grunt.loadNpmTasks( 'grunt-stylelint' );
 	grunt.loadNpmTasks( 'grunt-contrib-uglify-es' );
 	grunt.loadNpmTasks( 'grunt-contrib-cssmin' );
 	grunt.loadNpmTasks( 'grunt-contrib-concat' );
 	grunt.loadNpmTasks( 'grunt-contrib-copy' );
-	grunt.loadNpmTasks( 'grunt-contrib-clean' );
 	grunt.loadNpmTasks( 'grunt-newer' );
 	grunt.loadNpmTasks( 'grunt-move' );

diff --git a/plugins/woocommerce/client/legacy/package.json b/plugins/woocommerce/client/legacy/package.json
index 458f1cb06c5..4b1548c5bb5 100644
--- a/plugins/woocommerce/client/legacy/package.json
+++ b/plugins/woocommerce/client/legacy/package.json
@@ -29,14 +29,12 @@
 		"eslint": "^10.0.0",
 		"globals": "^16.5.0",
 		"grunt": "1.6.3",
-		"grunt-contrib-clean": "2.0.0",
 		"grunt-contrib-concat": "1.0.1",
 		"grunt-contrib-copy": "1.0.0",
 		"grunt-contrib-cssmin": "4.0.0",
 		"grunt-contrib-uglify-es": "^3.3.0",
 		"grunt-move": "1.0.3",
 		"grunt-newer": "1.3.0",
-		"grunt-phpcs": "0.4.0",
 		"grunt-rtlcss": "2.0.2",
 		"grunt-sass": "3.1.0",
 		"grunt-stylelint": "0.16.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 8f1ae2831be..855134b1651 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -3784,9 +3784,6 @@ importers:
       grunt:
         specifier: 1.6.3
         version: 1.6.3
-      grunt-contrib-clean:
-        specifier: 2.0.0
-        version: 2.0.0(grunt@1.6.3)
       grunt-contrib-concat:
         specifier: 1.0.1
         version: 1.0.1(grunt@1.6.3)
@@ -3805,9 +3802,6 @@ importers:
       grunt-newer:
         specifier: 1.3.0
         version: 1.3.0(grunt@1.6.3)
-      grunt-phpcs:
-        specifier: 0.4.0
-        version: 0.4.0
       grunt-rtlcss:
         specifier: 2.0.2
         version: 2.0.2
@@ -10741,9 +10735,6 @@ packages:
   async@1.5.2:
     resolution: {integrity: sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==}

-  async@2.6.4:
-    resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==}
-
   async@3.1.1:
     resolution: {integrity: sha512-X5Dj8hK1pJNC2Wzo2Rcp9FBVdJMGRR/S7V+lH46s8GVFhtbo5O4Le5GECCF/8PISVdkUA6mMPvgz7qTTD1rf1g==}

@@ -13476,12 +13467,6 @@ packages:
     engines: {node: '>=10'}
     hasBin: true

-  grunt-contrib-clean@2.0.0:
-    resolution: {integrity: sha512-g5ZD3ORk6gMa5ugZosLDQl3dZO7cI3R14U75hTM+dVLVxdMNJCPVmwf9OUt4v4eWgpKKWWoVK9DZc1amJp4nQw==}
-    engines: {node: '>=6'}
-    peerDependencies:
-      grunt: '>=0.4.5'
-
   grunt-contrib-concat@1.0.1:
     resolution: {integrity: sha512-QdTmcxe8aim2Z0dFeuSJ+f7fHIeY7PZaTMZxgvosjXwyMhpy2GUR5WHkr12lksHfZVE80v2wUwqF56wyfPUwoQ==}
     engines: {node: '>=0.10.0'}
@@ -13527,10 +13512,6 @@ packages:
     peerDependencies:
       grunt: '>=0.4.1'

-  grunt-phpcs@0.4.0:
-    resolution: {integrity: sha512-WNcmqwAcYe76Muz3crbhPHElVZg/fCkWEo2A3sNKztN/82/UkaoiqujAAtgkpEBiWtLA6gk1oB1CHaE+5lB/JA==}
-    engines: {node: 0.10.x}
-
   grunt-rtlcss@2.0.2:
     resolution: {integrity: sha512-WbI2thnwlF04N+xvJu+NxqEaCyPuLyar196SYhEQFZ2EJHkOS8YYE+Zkh+X9cWhwAtKp7ZEpR/IKXcyQggOIsQ==}
     engines: {node: '>= 0.8.0'}
@@ -32399,10 +32380,6 @@ snapshots:

   async@1.5.2: {}

-  async@2.6.4:
-    dependencies:
-      lodash: 4.18.1
-
   async@3.1.1: {}

   async@3.2.6: {}
@@ -35833,12 +35810,6 @@ snapshots:
       nopt: 5.0.0
       v8flags: 4.0.1

-  grunt-contrib-clean@2.0.0(grunt@1.6.3):
-    dependencies:
-      async: 2.6.4
-      grunt: 1.6.3
-      rimraf: 2.7.1
-
   grunt-contrib-concat@1.0.1(grunt@1.6.3):
     dependencies:
       chalk: 1.1.3
@@ -35897,8 +35868,6 @@ snapshots:
       grunt: 1.6.3
       rimraf: 2.7.1

-  grunt-phpcs@0.4.0: {}
-
   grunt-rtlcss@2.0.2:
     dependencies:
       chalk: 1.1.3