Page MenuHomePhabricator

CodeSniffer complaining about FunctionCommentSniff::fixTrailingPunctation() not existing
Open, Needs TriagePublicBUG REPORT

Description

When i run code sniffer (39.0.0) i get

PHP Fatal error:  Uncaught Error: Call to undefined method MediaWiki\Sniffs\Commenting\FunctionCommentSniff::fixTrailingPunctation() in /var/www/html/w/vendor/mediawiki/mediawiki-codesniffer/MediaWiki/Sniffs/Commenting/FunctionCommentSniff.php:536
Stack trace:
#0 /var/www/html/w/vendor/mediawiki/mediawiki-codesniffer/MediaWiki/Sniffs/Commenting/FunctionCommentSniff.php(145): MediaWiki\Sniffs\Commenting\FunctionCommentSniff->processParams()
#1 /var/www/html/w/extensions/Monstranto/vendor/squizlabs/php_codesniffer/src/Files/File.php(498): MediaWiki\Sniffs\Commenting\FunctionCommentSniff->process()
#2 /var/www/html/w/extensions/Monstranto/vendor/squizlabs/php_codesniffer/src/Files/LocalFile.php(92): PHP_CodeSniffer\Files\File->process()
#3 /var/www/html/w/extensions/Monstranto/vendor/squizlabs/php_codesniffer/src/Runner.php(631): PHP_CodeSniffer\Files\LocalFile->process()
#4 /var/www/html/w/extensions/Monstranto/vendor/squizlabs/php_codesniffer/src/Runner.php(434): PHP_CodeSniffer\Runner->processFile()
#5 /var/www/html/w/extensio in /var/www/html/w/vendor/mediawiki/mediawiki-codesniffer/MediaWiki/Sniffs/Commenting/FunctionCommentSniff.php on line 536

The thing i am running it on

<?php

namespace MediaWiki\Extension\Monstranto;

class Hooks {

	/**
	 * Hook to load lua library
	 *
	 * @param string $engine
	 * @param array &$extraLibraries
	 */
	public function onScribuntoExternalLibraries( $engine, &$extraLibraries ) {
		$extraLibraries['mw.ext.monstranto'] = Lua::class;
	}
}

Event Timeline

The function name was changed in https://gerrit.wikimedia.org/r/c/mediawiki/tools/codesniffer/+/788824 and that is part of v39.0.0, see https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/tools/codesniffer/+/refs/tags/v39.0.0/MediaWiki/Sniffs/Commenting/FunctionCommentSniff.php#547

The stack trace say it is line 536, but it is now 547
It was 536 in 38.0.0 - https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/tools/codesniffer/+/refs/tags/v38.0.0/MediaWiki/Sniffs/Commenting/FunctionCommentSniff.php#536

It seems the composer package is wrong/corrupt or on update something goes wrong or the local vendor folder is corrupted.

Maybe delete /vendor/ and rerun composer update to see if that gets fixed. Or clear the local composer cache.

@Bawolff is this still an issue with the latest version of codesniffer (40.0.1)?