@@ -1425,6 +1425,27 @@ public function registerSniffs($files, $restrictions, $exclusions)
1425
1425
continue ;
1426
1426
}
1427
1427
1428
+ if ($ reflection ->hasProperty ('supportedTokenizers ' ) === true ) {
1429
+ // Using the default value as the class is not yet instantiated and this is not a property which should get changed anyway.
1430
+ $ value = $ reflection ->getDefaultProperties ()['supportedTokenizers ' ];
1431
+
1432
+ if (is_array ($ value ) === true
1433
+ && empty ($ value ) === false
1434
+ && in_array ('PHP ' , $ value , true ) === false
1435
+ ) {
1436
+ if ($ reflection ->implementsInterface ('PHP_CodeSniffer \\Sniffs \\DeprecatedSniff ' ) === true ) {
1437
+ // Silently ignore the sniff if the sniff is marked as deprecated.
1438
+ continue ;
1439
+ }
1440
+
1441
+ $ message = 'Support for scanning files other than PHP, like CSS/JS files, has been removed in PHP_CodeSniffer 4.0. ' .PHP_EOL ;
1442
+ $ message .= 'The %s sniff is listening for %s. ' ;
1443
+ $ message = sprintf ($ message , Common::getSniffCode ($ className ), implode (', ' , $ value ));
1444
+ $ this ->msgCache ->add ($ message , MessageCollector::ERROR );
1445
+ continue ;
1446
+ }
1447
+ }//end if
1448
+
1428
1449
$ listeners [$ className ] = $ className ;
1429
1450
1430
1451
if (PHP_CODESNIFFER_VERBOSITY > 2 ) {
@@ -1464,9 +1485,7 @@ public function populateTokenListeners()
1464
1485
$ this ->sniffs [$ sniffClass ] = new $ sniffClass ();
1465
1486
$ this ->sniffCodes [$ sniffCode ] = $ sniffClass ;
1466
1487
1467
- $ isDeprecated = false ;
1468
1488
if ($ this ->sniffs [$ sniffClass ] instanceof DeprecatedSniff) {
1469
- $ isDeprecated = true ;
1470
1489
$ this ->deprecatedSniffs [$ sniffCode ] = $ sniffClass ;
1471
1490
}
1472
1491
@@ -1477,34 +1496,6 @@ public function populateTokenListeners()
1477
1496
}
1478
1497
}
1479
1498
1480
- $ tokenizers = [];
1481
- $ vars = get_class_vars ($ sniffClass );
1482
- if (empty ($ vars ['supportedTokenizers ' ]) === false
1483
- && $ isDeprecated === false
1484
- && in_array ('PHP ' , $ vars ['supportedTokenizers ' ], true ) === false
1485
- ) {
1486
- if (in_array ('CSS ' , $ vars ['supportedTokenizers ' ], true ) === true
1487
- || in_array ('JS ' , $ vars ['supportedTokenizers ' ], true ) === true
1488
- ) {
1489
- $ message = 'Scanning CSS/JS files is deprecated and support will be removed in PHP_CodeSniffer 4.0. ' .PHP_EOL ;
1490
- } else {
1491
- // Just in case someone has an integration with a custom tokenizer.
1492
- $ message = 'Support for custom tokenizers will be removed in PHP_CodeSniffer 4.0. ' .PHP_EOL ;
1493
- }
1494
-
1495
- $ message .= 'The %s sniff is listening for %s. ' ;
1496
- $ message = sprintf ($ message , $ sniffCode , implode (', ' , $ vars ['supportedTokenizers ' ]));
1497
- $ this ->msgCache ->add ($ message , MessageCollector::DEPRECATED );
1498
- }
1499
-
1500
- if (isset ($ vars ['supportedTokenizers ' ]) === true ) {
1501
- foreach ($ vars ['supportedTokenizers ' ] as $ tokenizer ) {
1502
- $ tokenizers [$ tokenizer ] = $ tokenizer ;
1503
- }
1504
- } else {
1505
- $ tokenizers = ['PHP ' => 'PHP ' ];
1506
- }
1507
-
1508
1499
$ tokens = $ this ->sniffs [$ sniffClass ]->register ();
1509
1500
if (is_array ($ tokens ) === false ) {
1510
1501
$ msg = "The sniff {$ sniffClass }::register() method must return an array. " ;
@@ -1544,11 +1535,10 @@ public function populateTokenListeners()
1544
1535
1545
1536
if (isset ($ this ->tokenListeners [$ token ][$ sniffClass ]) === false ) {
1546
1537
$ this ->tokenListeners [$ token ][$ sniffClass ] = [
1547
- 'class ' => $ sniffClass ,
1548
- 'source ' => $ sniffCode ,
1549
- 'tokenizers ' => $ tokenizers ,
1550
- 'ignore ' => $ ignorePatterns ,
1551
- 'include ' => $ includePatterns ,
1538
+ 'class ' => $ sniffClass ,
1539
+ 'source ' => $ sniffCode ,
1540
+ 'ignore ' => $ ignorePatterns ,
1541
+ 'include ' => $ includePatterns ,
1552
1542
];
1553
1543
}
1554
1544
}
0 commit comments