Phan/local-config.php
The distributed .phan/config.php
file contains an include at the bottom for this file. So, if you create this file in your MediaWiki $IP (Install Path) at .phan/local-config.php
, then it will automatically be interpreted by phan when you run it on your MediaWiki codebase.
This example purposely ignores all 'core' MediaWiki for analysis, and adds a long list of extensions for analysis.
This is a sample 'local' configuration for Phan
// DO analyze every extension $cfg['directory_list'] = array_merge( $cfg['directory_list'], [ 'extensions/AbuseFilter', 'extensions/Arrays', 'extensions/CategoryTree',
- 'extensions/CiteThisPage',
- 'extensions/CollapsibleVector',
- 'extensions/ConfirmEdit',
- 'extensions/ContributionScores',
- 'extensions/CreateUserPage',
- 'extensions/CSS',
- 'extensions/DataTransfer',
- 'extensions/DeleteBatch',
- 'extensions/DisplayTitle',
- 'extensions/FlexDiagrams',
- 'extensions/Gadgets',
- 'extensions/HeaderFooter',
- 'extensions/HeaderTabs',
- 'extensions/Html5mediator',
- 'extensions/Maps',
- 'extensions/Math',
- 'extensions/MediaFunctions',
- 'extensions/Mermaid',
- 'extensions/ModernTimeline',
- 'extensions/Network',
- 'extensions/Nuke',
- 'extensions/NumerAlpha',
- 'extensions/OATHAuth',
- 'extensions/OpenLayers',
- 'extensions/PdfHandler',
- 'extensions/PipeEscape',
- 'extensions/Poem',
- 'extensions/Renameuser',
- 'extensions/SecureLinkFixer',
- 'extensions/SemanticCompoundQueries',
- 'extensions/SemanticDependencyUpdater',
- 'extensions/SemanticDrilldown',
- 'extensions/SemanticExtraSpecialProperties',
- 'extensions/SemanticMediaWiki',
- 'extensions/SemanticResultFormats',
- 'extensions/SemanticScribunto',
- 'extensions/SimpleBatchUpload',
- 'extensions/SimpleMathJax',
- 'extensions/SpamBlacklist',
- 'extensions/SubpageFun',
- 'extensions/SubPageList',
- 'extensions/TalkRight',
- 'extensions/TitleBlacklist',
- 'extensions/Validator',
- 'extensions/VEForAll',
- 'extensions/WatchAnalytics',
- 'extensions/WhitelistPages',
- 'extensions/WhoIsWatching',
- 'extensions/WhosOnline',
- 'extensions/Widgets',
- 'extensions/Wiretap',
- 'extensions/YouTube',
- 'extensions/',
] );
// Do NOT analyze all the regular 'core' directories $cfg['exclude_analysis_directory_list'] = array_merge( $cfg['exclude_analysis_directory_list'], [ 'includes/', 'languages/', 'maintenance/', 'mw-config/', 'resources/', 'vendor/', 'tests/common/', 'tests/parser/', 'tests/phpunit/mocks/', ] );
- To get a picture of the full configuration, just print it and exit.
- print_r( $cfg ); exit();