From 9d50d978bd37994f84603d06002043acc2d20a4e Mon Sep 17 00:00:00 2001 From: Reedy Date: Thu, 20 Sep 2018 23:56:48 +0100 Subject: [PATCH] Drop support for array syntax for $wgSpecialPages Bug: T204863 Change-Id: I03fc19cf70a7feeb7d0003de7fbc7b254a3e9560 --- RELEASE-NOTES-1.32 | 1 + includes/specialpage/SpecialPageFactory.php | 11 ----------- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/RELEASE-NOTES-1.32 b/RELEASE-NOTES-1.32 index 9f0bc1b777..51a149814c 100644 --- a/RELEASE-NOTES-1.32 +++ b/RELEASE-NOTES-1.32 @@ -311,6 +311,7 @@ because of Phabricator reports. * ChangesListSpecialPage::customFilters * The global function wfUseMW, deprecated since 1.26, has now been removed. Use the "requires" property of static extension registration instead. +* $wgSpecialPages no longer accepts array syntax, deprecated since 1.18. === Deprecations in 1.32 === * HTMLForm::setSubmitProgressive() is deprecated. No need to call it. Submit diff --git a/includes/specialpage/SpecialPageFactory.php b/includes/specialpage/SpecialPageFactory.php index c6ffbe4d70..e136ce0b1e 100644 --- a/includes/specialpage/SpecialPageFactory.php +++ b/includes/specialpage/SpecialPageFactory.php @@ -34,7 +34,6 @@ use RequestContext; use SpecialPage; use Title; use User; -use Wikimedia\ObjectFactory; /** * Factory for handling the special page list and generating SpecialPage objects. @@ -401,16 +400,6 @@ class SpecialPageFactory { } elseif ( is_string( $rec ) ) { $className = $rec; $page = new $className; - } elseif ( is_array( $rec ) ) { - $className = array_shift( $rec ); - // @deprecated, officially since 1.18, unofficially since forever - wfDeprecated( "Array syntax for \$wgSpecialPages is deprecated ($className), " . - "define a subclass of SpecialPage instead.", '1.18' ); - $page = ObjectFactory::getObjectFromSpec( [ - 'class' => $className, - 'args' => $rec, - 'closure_expansion' => false, - ] ); } elseif ( $rec instanceof SpecialPage ) { $page = $rec; // XXX: we should deep clone here } else { -- 2.20.1