2020use Magento \SemanticVersionChecker \ClassHierarchy \StaticAnalyzerFactory ;
2121use Magento \SemanticVersionChecker \Analyzer \Factory \LessAnalyzerFactory ;
2222use Magento \SemanticVersionChecker \Filter \FilePatternFilter ;
23- use Magento \SemanticVersionChecker \Filter \SourceFilter ;
23+ use Magento \SemanticVersionChecker \Filter \SourceWithJsonFilter ;
2424use Magento \SemanticVersionChecker \Finder \FinderDecoratorFactory ;
2525use Magento \SemanticVersionChecker \Scanner \ScannerRegistryFactory ;
2626use PHPSemVerChecker \Configuration \LevelMapping ;
@@ -131,11 +131,6 @@ protected function buildReport()
131131 $ sourceBeforeFiles = $ fileIterator ->findFromString ($ this ->sourceBeforeDir , '' , '' );
132132 $ sourceAfterFiles = $ fileIterator ->findFromString ($ this ->sourceAfterDir , '' , '' );
133133
134- foreach ($ this ->getFilters ($ this ->sourceBeforeDir , $ this ->sourceAfterDir ) as $ filter ) {
135- // filters modify arrays by reference
136- $ filter ->filter ($ sourceBeforeFiles , $ sourceAfterFiles );
137- }
138-
139134 //let static analyzer build a complete dependency graph
140135 $ staticAnalyzer = (new StaticAnalyzerFactory ())->create ();
141136 $ staticAnalyzer ->analyse ($ sourceBeforeFiles );
@@ -146,6 +141,11 @@ protected function buildReport()
146141 $ scannerBefore = new ScannerRegistry ($ scannerRegistryFactory ->create ($ dependencyMap ));
147142 $ scannerAfter = new ScannerRegistry ($ scannerRegistryFactory ->create ($ dependencyMap ));
148143
144+ foreach ($ this ->getFilters ($ this ->sourceBeforeDir , $ this ->sourceAfterDir ) as $ filter ) {
145+ // filters modify arrays by reference
146+ $ filter ->filter ($ sourceBeforeFiles , $ sourceAfterFiles );
147+ }
148+
149149 foreach ($ sourceBeforeFiles as $ file ) {
150150 $ scannerBefore ->scanFile ($ file );
151151 }
@@ -190,8 +190,8 @@ protected function buildReport()
190190 protected function getFilters ($ sourceBeforeDir , $ sourceAfterDir ): array
191191 {
192192 $ filters = [
193- // always filter out files that are identical before and after
194- new SourceFilter (),
193+ // always filter out files that are identical before and after except for JSON :facepalm:
194+ new SourceWithJsonFilter (),
195195 // process the include and exclude patterns
196196 new FilePatternFilter (
197197 $ this ->includePatternsPath ,
0 commit comments