dépôts
/
lhc
/
web
/
wiklou.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Don't hard fail when we couldn't find an entry point for an extension
[lhc/web/wiklou.git]
/
maintenance
/
mergeMessageFileList.php
diff --git
a/maintenance/mergeMessageFileList.php
b/maintenance/mergeMessageFileList.php
index
20b333e
..
bb47631
100644
(file)
--- a/
maintenance/mergeMessageFileList.php
+++ b/
maintenance/mergeMessageFileList.php
@@
-36,11
+36,6
@@
$mmfl = false;
* @ingroup Maintenance
*/
class MergeMessageFileList extends Maintenance {
* @ingroup Maintenance
*/
class MergeMessageFileList extends Maintenance {
- /**
- * @var bool
- */
- protected $hasError;
-
function __construct() {
parent::__construct();
$this->addOption(
function __construct() {
parent::__construct();
$this->addOption(
@@
-70,7
+65,7
@@
class MergeMessageFileList extends Maintenance {
"\$wgExtensionEntryPointListFiles is not set", 1 );
}
"\$wgExtensionEntryPointListFiles is not set", 1 );
}
- $mmfl =
array( 'setupFiles' => array() )
;
+ $mmfl =
[ 'setupFiles' => [] ]
;
# Add setup files contained in file passed to --list-file
if ( $this->hasOption( 'list-file' ) ) {
# Add setup files contained in file passed to --list-file
if ( $this->hasOption( 'list-file' ) ) {
@@
-81,16
+76,21
@@
class MergeMessageFileList extends Maintenance {
# Now find out files in a directory
if ( $this->hasOption( 'extensions-dir' ) ) {
$extdir = $this->getOption( 'extensions-dir' );
# Now find out files in a directory
if ( $this->hasOption( 'extensions-dir' ) ) {
$extdir = $this->getOption( 'extensions-dir' );
- $entries = scandir( $extdir );
+ # Allow multiple directories to be passed with ":" as delimiter
+ $extdirs = explode( ':', $extdir );
+ $entries = [];
+ foreach ( $extdirs as $extdir ) {
+ $entries = array_merge( $entries, scandir( $extdir ) );
+ }
foreach ( $entries as $extname ) {
if ( $extname == '.' || $extname == '..' || !is_dir( "$extdir/$extname" ) ) {
continue;
}
foreach ( $entries as $extname ) {
if ( $extname == '.' || $extname == '..' || !is_dir( "$extdir/$extname" ) ) {
continue;
}
- $possibilities =
array(
+ $possibilities =
[
"$extdir/$extname/extension.json",
"$extdir/$extname/skin.json",
"$extdir/$extname/$extname.php"
"$extdir/$extname/extension.json",
"$extdir/$extname/skin.json",
"$extdir/$extname/$extname.php"
-
)
;
+
]
;
$found = false;
foreach ( $possibilities as $extfile ) {
if ( file_exists( $extfile ) ) {
$found = false;
foreach ( $possibilities as $extfile ) {
if ( file_exists( $extfile ) ) {
@@
-101,7
+101,6
@@
class MergeMessageFileList extends Maintenance {
}
if ( !$found ) {
}
if ( !$found ) {
- $this->hasError = true;
$this->error( "Extension {$extname} in {$extdir} lacks expected entry point: " .
"extension.json, skin.json, or {$extname}.php." );
}
$this->error( "Extension {$extname} in {$extdir} lacks expected entry point: " .
"extension.json, skin.json, or {$extname}.php." );
}
@@
-114,10
+113,6
@@
class MergeMessageFileList extends Maintenance {
$mmfl['setupFiles'] = array_merge( $mmfl['setupFiles'], $extensionPaths );
}
$mmfl['setupFiles'] = array_merge( $mmfl['setupFiles'], $extensionPaths );
}
- if ( $this->hasError ) {
- $this->error( "Some files are missing (see above). Giving up.", 1 );
- }
-
if ( $this->hasOption( 'output' ) ) {
$mmfl['output'] = $this->getOption( 'output' );
}
if ( $this->hasOption( 'output' ) ) {
$mmfl['output'] = $this->getOption( 'output' );
}
@@
-133,7
+128,7
@@
class MergeMessageFileList extends Maintenance {
private function readFile( $fileName ) {
global $IP;
private function readFile( $fileName ) {
global $IP;
- $files =
array()
;
+ $files =
[]
;
$fileLines = file( $fileName );
if ( $fileLines === false ) {
$this->hasError = true;
$fileLines = file( $fileName );
if ( $fileLines === false ) {
$this->hasError = true;
@@
-163,7
+158,7
@@
class MergeMessageFileList extends Maintenance {
require_once RUN_MAINTENANCE_IF_MAIN;
require_once RUN_MAINTENANCE_IF_MAIN;
-$queue =
array()
;
+$queue =
[]
;
foreach ( $mmfl['setupFiles'] as $fileName ) {
if ( strval( $fileName ) === '' ) {
continue;
foreach ( $mmfl['setupFiles'] as $fileName ) {
if ( strval( $fileName ) === '' ) {
continue;
@@
-182,7
+177,7
@@
foreach ( $mmfl['setupFiles'] as $fileName ) {
if ( $queue ) {
$registry = new ExtensionRegistry();
$data = $registry->readFromQueue( $queue );
if ( $queue ) {
$registry = new ExtensionRegistry();
$data = $registry->readFromQueue( $queue );
- foreach (
array( 'wgExtensionMessagesFiles', 'wgMessagesDirs' )
as $var ) {
+ foreach (
[ 'wgExtensionMessagesFiles', 'wgMessagesDirs' ]
as $var ) {
if ( isset( $data['globals'][$var] ) ) {
$GLOBALS[$var] = array_merge( $data['globals'][$var], $GLOBALS[$var] );
}
if ( isset( $data['globals'][$var] ) ) {
$GLOBALS[$var] = array_merge( $data['globals'][$var], $GLOBALS[$var] );
}
@@
-197,11
+192,11
@@
$s =
'$wgExtensionMessagesFiles = ' . var_export( $wgExtensionMessagesFiles, true ) . ";\n\n" .
'$wgMessagesDirs = ' . var_export( $wgMessagesDirs, true ) . ";\n\n";
'$wgExtensionMessagesFiles = ' . var_export( $wgExtensionMessagesFiles, true ) . ";\n\n" .
'$wgMessagesDirs = ' . var_export( $wgMessagesDirs, true ) . ";\n\n";
-$dirs =
array(
+$dirs =
[
$IP,
dirname( __DIR__ ),
realpath( $IP )
$IP,
dirname( __DIR__ ),
realpath( $IP )
-
)
;
+
]
;
foreach ( $dirs as $dir ) {
$s = preg_replace( "/'" . preg_quote( $dir, '/' ) . "([^']*)'/", '"$IP\1"', $s );
foreach ( $dirs as $dir ) {
$s = preg_replace( "/'" . preg_quote( $dir, '/' ) . "([^']*)'/", '"$IP\1"', $s );