jenkins-bot has submitted this change and it was merged.
Change subject: Moved getTitleInvalidRegex() from Title to MediaWikiTitleCodec
......................................................................
Moved getTitleInvalidRegex() from Title to MediaWikiTitleCodec
Deprecated it in Title, and updated all current references to use the
non-deprecated version in MediaWikiTitleCodec
Change-Id: I2b9c36992028c97f695f2b95ba027fbb11904b57
---
M includes/Title.php
M includes/title/MediaWikiTitleCodec.php
M languages/Language.php
M resources/src/mediawiki/mediawiki.Title.js
4 files changed, 35 insertions(+), 21 deletions(-)
Approvals:
Umherirrender: Looks good to me, approved
jenkins-bot: Verified
diff --git a/includes/Title.php b/includes/Title.php
index cf11bd3..d0c8b3b 100644
--- a/includes/Title.php
+++ b/includes/Title.php
@@ -614,28 +614,13 @@
* Note that this doesn't pick up many things that could be wrong with
titles, but that
* replacing this regex with something valid will make many titles
valid.
*
- * @todo move this into MediaWikiTitleCodec
+ * @deprecated since 1.25, use
MediaWikiTitleCodec::getTitleInvalidRegex() instead
*
* @return string Regex string
*/
static function getTitleInvalidRegex() {
- static $rxTc = false;
- if ( !$rxTc ) {
- # Matching titles will be held as illegal.
- $rxTc = '/' .
- # Any character not allowed is forbidden...
- '[^' . self::legalChars() . ']' .
- # URL percent encoding sequences interfere with
the ability
- # to round-trip titles -- you can't link to
them consistently.
- '|%[0-9A-Fa-f]{2}' .
- # XML/HTML character references produce similar
issues.
- '|&[A-Za-z0-9\x80-\xff]+;' .
- '|&#[0-9]+;' .
- '|&#x[0-9A-Fa-f]+;' .
- '/S';
- }
-
- return $rxTc;
+ wfDeprecated( __METHOD__, '1.25' );
+ return MediaWikiTitleCodec::getTitleInvalidRegex();
}
/**
diff --git a/includes/title/MediaWikiTitleCodec.php
b/includes/title/MediaWikiTitleCodec.php
index 0185b97..c05a87d 100644
--- a/includes/title/MediaWikiTitleCodec.php
+++ b/includes/title/MediaWikiTitleCodec.php
@@ -323,7 +323,7 @@
}
# Reject illegal characters.
- $rxTc = Title::getTitleInvalidRegex();
+ $rxTc = self::getTitleInvalidRegex();
if ( preg_match( $rxTc, $dbkey ) ) {
throw new MalformedTitleException( 'Illegal characters
found in title: ' . $text );
}
@@ -398,4 +398,33 @@
return $parts;
}
+
+ /**
+ * Returns a simple regex that will match on characters and sequences
invalid in titles.
+ * Note that this doesn't pick up many things that could be wrong with
titles, but that
+ * replacing this regex with something valid will make many titles
valid.
+ * Previously Title::getTitleInvalidRegex()
+ *
+ * @return string Regex string
+ * @since 1.25
+ */
+ public static function getTitleInvalidRegex() {
+ static $rxTc = false;
+ if ( !$rxTc ) {
+ # Matching titles will be held as illegal.
+ $rxTc = '/' .
+ # Any character not allowed is forbidden...
+ '[^' . Title::legalChars() . ']' .
+ # URL percent encoding sequences interfere with
the ability
+ # to round-trip titles -- you can't link to
them consistently.
+ '|%[0-9A-Fa-f]{2}' .
+ # XML/HTML character references produce similar
issues.
+ '|&[A-Za-z0-9\x80-\xff]+;' .
+ '|&#[0-9]+;' .
+ '|&#x[0-9A-Fa-f]+;' .
+ '/S';
+ }
+
+ return $rxTc;
+ }
}
diff --git a/languages/Language.php b/languages/Language.php
index 72cc1ac..d46845f 100644
--- a/languages/Language.php
+++ b/languages/Language.php
@@ -318,7 +318,7 @@
// see bugs 37564, 37587, 36938
$cache[$code] =
strcspn( $code, ":/\\\000&<>'\"" ) === strlen( $code )
- && !preg_match( Title::getTitleInvalidRegex(), $code );
+ && !preg_match(
MediaWikiTitleCodec::getTitleInvalidRegex(), $code );
return $cache[$code];
}
diff --git a/resources/src/mediawiki/mediawiki.Title.js
b/resources/src/mediawiki/mediawiki.Title.js
index 5e594ad..eaf079f 100644
--- a/resources/src/mediawiki/mediawiki.Title.js
+++ b/resources/src/mediawiki/mediawiki.Title.js
@@ -119,7 +119,7 @@
rSplit = /^(.+?)_*:_*(.*)$/,
- // See Title.php#getTitleInvalidRegex
+ // See MediaWikiTitleCodec.php#getTitleInvalidRegex
rInvalid = new RegExp(
'[^' + mw.config.get( 'wgLegalTitleChars' ) + ']' +
// URL percent encoding sequences interfere with the ability
--
To view, visit https://gerrit.wikimedia.org/r/181942
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I2b9c36992028c97f695f2b95ba027fbb11904b57
Gerrit-PatchSet: 8
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: McIntireEvan <[email protected]>
Gerrit-Reviewer: Alex Monk <[email protected]>
Gerrit-Reviewer: Bartosz DziewoĆski <[email protected]>
Gerrit-Reviewer: Daniel Friesen <[email protected]>
Gerrit-Reviewer: Daniel Kinzler <[email protected]>
Gerrit-Reviewer: Florianschmidtwelzow <[email protected]>
Gerrit-Reviewer: Jack Phoenix <[email protected]>
Gerrit-Reviewer: McIntireEvan <[email protected]>
Gerrit-Reviewer: Nemo bis <[email protected]>
Gerrit-Reviewer: Reedy <[email protected]>
Gerrit-Reviewer: TTO <[email protected]>
Gerrit-Reviewer: Umherirrender <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits