Last modified: 2007-11-30 03:42:09 UTC
Created attachment 4357 [details] screen capture about Edittools My own wiki (http://grondin.tuxfamily.org) doesn't display correctly two pages about parsers : 1) Special:Version displays the followings message errorWarning: DOMDocument::loadXML() [function.DOMDocument-loadXML]: Premature end of data in tag root line 1 in Entity, line: 71 in /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/Parser.php on line 2967 Erreur interne Parser::preprocessToDom generated invalid XML Backtrace: #0 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/Parser.php(3021): Parser->preprocessToDom('__NOTOC__?This ...') #1 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/Parser.php(915): Parser->replaceVariables('__NOTOC__?This ...') #2 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/Parser.php(295): Parser->internalParse('__NOTOC__?This ...') #3 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/OutputPage.php(361): Parser->parse('__NOTOC__?This ...', Object(Title), Object(ParserOptions), true, true, NULL) #4 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/OutputPage.php(338): OutputPage->addWikiTextTitle('__NOTOC__?This ...', Object(Title), true) #5 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/SpecialVersion.php(34): OutputPage->addWikiText('__NOTOC__?This ...') #6 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/SpecialVersion.php(17): SpecialVersion->execute() #7 [internal function]: wfSpecialVersion(NULL, Object(SpecialPage)) #8 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/SpecialPage.php(654): call_user_func('wfSpecialVersio...', NULL, Object(SpecialPage)) #9 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/SpecialPage.php(460): SpecialPage->execute(NULL) #10 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/Wiki.php(193): SpecialPage::executePath(Object(Title)) #11 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/includes/Wiki.php(45): MediaWiki->initializeSpecialCases(Object(Title), Object(OutputPage), Object(WebRequest)) #12 /data/web/6c/03/7c/grondin.tuxfamily.org/htdocs/index.php(89): MediaWiki->initialize(Object(Title), Object(OutputPage), Object(User), Object(WebRequest)) #13 {main} 2) The charinsert tag doesn't display correctly caracters in Mediawiki:Edittools. Outils d'édition: UNIQ502424a61cae77e5-charinsert-00000001-QINU UNIQ502424a61cae77e5-charinsert-00000002-QINU · UNIQ502424a61cae77e5-charinsert-00000003-QINU · UNIQ502424a61cae77e5-charinsert-00000004-QINU UNIQ502424a61cae77e5-charinsert-00000005-QINU ··· UNIQ502424a61cae77e5-charinsert-00000006-QINU ··· UNIQ502424a61cae77e5-charinsert-00000007-QINU ··· UNIQ502424a61cae77e5-charinsert-00000008-QINU ··· UNIQ502424a61cae77e5-charinsert-00000009-QINU ··· UNIQ502424a61cae77e5-charinsert-0000000A-QINU ··· UNIQ502424a61cae77e5-charinsert-0000000B-QINU ··· UNIQ502424a61cae77e5-charinsert-0000000C-QINU ··· UNIQ502424a61cae77e5-charinsert-0000000D-QINU ··· UNIQ502424a61cae77e5-charinsert-0000000E-QINU ··· UNIQ502424a61cae77e5-charinsert-0000000F-QINU ··· UNIQ502424a61cae77e5-charinsert-00000010-QINU ··· UNIQ502424a61cae77e5-charinsert-00000011-QINU ... UNIQ502424a61cae77e5-charinsert-00000012-QINU ... UNIQ502424a61cae77e5-charinsert-00000013-QINU ··· UNIQ502424a61cae77e5-charinsert-00000014-QINU Alphabet : UNIQ502424a61cae77e5-charinsert-00000015-QINU - UNIQ502424a61cae77e5-charinsert-00000016-QINU see screen capture 3) Scripts in Mediawiki:Common.js or Mediawiki:monobook.js don't run.
See by example my wiki Special:Version page : http://grondin.tuxfamily.org/index.php?title=Special:Version and try to edit a page.
Please give a list of the extensions you have enabled.
(In reply to comment #2) > Please give a list of the extensions you have enabled. > This is the list from my LocalSettings.php $path = array( $IP, "$IP/includes", "$IP/languages" ); set_include_path( implode( PATH_SEPARATOR, $path ) . PATH_SEPARATOR . get_include_path() ); require_once( "includes/DefaultSettings.php" ); # Extension NUKE à inclure juste après DefaultSettings.php et avant tout autre require_oncee require_once('extensions/Nuke/SpecialNuke.php'); ## For a detailed description of the following switches see ## http://meta.wikimedia.org/Enotif and http://meta.wikimedia.org/Eauthent ## There are many more options for fine tuning available see ## /includes/DefaultSettings.php ## UPO means: this is also a user preference option $wgEnotifUserTalk = true; # UPO $wgEnotifWatchlist = true; # UPO $wgEmailAuthentication = true; # Schemas for Postgres $wgDBmwschema = "mediawiki"; $wgDBts2schema = "public"; # Experimental charset support for MySQL 4.1/5.0. $wgDBmysql5 = false; ## Shared memory settings $wgMainCacheType = CACHE_NONE; $wgMemCachedServers = array(); ## To enable image uploads, make sure the 'images' directory ## is writable, then set this to true: $wgEnableUploads = true; $wgUseImageResize = true; $wgUseImageMagick = true; $wgImageMagickConvertCommand = "/usr/bin/convert"; $wgFetchCommonsDescriptions = true; $wgCategoryMagicGallery = true; ## If you want to use image uploads under safe mode, ## create the directories images/archive, images/thumb and ## images/temp, and make them all writable. Then uncomment ## this, if it's not already uncommented: $wgHashedUploadDirectory = true; ## If you have the appropriate support software installed ## you can enable inline LaTeX equations: $wgUseTeX = false; $wgLocalInterwiki = $wgSitename; $wgLanguageCode = "fr"; ## Default skin: you can change the default skin. Use the internal symbolic ## names, ie 'standard', 'nostalgia', 'cologneblue', 'monobook': $wgDefaultSkin = 'monobook'; ## For attaching licensing metadata to pages, and displaying an ## appropriate copyright notice / icon. GNU Free Documentation ## License and Creative Commons licenses are supported so far. $wgEnableCreativeCommonsRdf = true; $wgRightsPage = ""; # Set to the title of a wiki page that describes your license/copyright $wgRightsUrl = "http://www.gnu.org/copyleft/fdl.html"; $wgRightsText = "GNU Free Documentation License 1.2"; $wgRightsIcon = "${wgScriptPath}/skins/common/images/gnu-fdl.png"; # $wgRightsCode = "gfdl"; # Not yet used $wgDiff3 = ""; # When you make changes to this configuration file, this will make # sure that cached pages are cleared. $configdate = gmdate( 'YmdHis', @filemtime( __FILE__ ) ); $wgCacheEpoch = max( $wgCacheEpoch, $configdate ); #Activation de la fonctionnalé transwiki, faut bien tenter ! #$wgImportTargetNamespace = array (100, 101, 102, 103, 104, 105); $wgTmpDirectory = "{$wgUploadDirectory}/tmp"; $wgImportSources = array( 'w', 'wikt', 's', 'b', 'q', 'v', 'n'); # Extention charinsert pour Mediawiki require_once("extensions/CharInsert/CharInsert.php"); # Extension DynamicLinkPage2 require_once("extensions/DynamicPageList2/DynamicPageList2.php"); # Personnalisation de mon wiki $wgSharedUploadDBname = true; $wgAllowCopyUploads = true; $wgUploadNavigationUrl = 'http://commons.wikimedia.org/wiki/Special:Upload'; $wgBlockAllowsUTEdit = true; # Blocks allow users to edit their own user talk page $wgGroupPermissions['sysop']['deleterevision'] = true; $wgGroupPermissions['oversight']['deleterevision'] = true; $wgGroupPermissions['bureaucrat']['hiderevision'] = true; $wgGroupPermissions['steward']['hiderevision'] = true; $wgGroupPermissions['oversight']['hiderevision'] = true; $wgGroupPermissions['developer']['siteadmin'] = true; $wgGroupPermissions['oversight']['oversight'] = true; $wgRestrictionLevels = array( '', 'autoconfirmed', 'sysop', 'interwiki', 'bureaucrat', 'developer', 'oversight', 'steward' ); $wgEnotifWatchlist = true; # UPO $wgEnotifUserTalk = true; # UPO $wgEnotifRevealEditorAddress = true; # UPO; reply-to address may be filled with page editor's address (if user allowed this in the preferences) $wgRCShowWatchingUsers = true; # UPO $wgPageShowWatchingUsers = true; $wgSVGMaxSize = 102400; $wgUseCopyrightUpload = true; $wgExportAllowListContributors = true ; $wgAllowUserJs = true; $wgAllowUserCss = true; $wgBlockAllowsUTEdit=true; $wgRateLimitsExcludedGroups = array( 'sysop', 'bureaucrat', 'developer', 'steward', 'oversight' ); $wgEnableScaryTranscluding = true; $wgAllowExternalImages = true; $wgUseXMLparser = true; $wgUseImageResize = true; $wgLocalInterwiki = 'gdn'; # Extension Translate include("$IP/extensions/Translate/Translate.php"); $wgTranslateEC = array_keys($wgTranslateAC); // All modules $wgTranslateFuzzyBotName = 'FuzzyBot'; $wgTranslateTryLoad = true; $wgGroupPermissions['Translators']['translate'] = true; $wgGroupPermissions['steward']['translate'] = true; $wgGroupPermissions['bureaucrat']['translate'] = true; #Spécial Interwiki require_once("extensions/SpecialInterwiki.php"); $wgGroupPermissions['*']['interwiki'] = false; $wgGroupPermissions['interwiki']['interwiki'] = true; #Renommage utilisateurs require_once("extensions/Renameuser/SpecialRenameuser.php"); $wgGroupPermissions['*']['renameuser'] = false; $wgGroupPermissions['bureaucrat']['renameuser'] = true; $wgGroupPermissions['steward']['renameuser'] = true; #CheckUser for Special:CheckUser require_once("$IP/extensions/CheckUser/CheckUser.php"); $wgGroupPermissions['checkuser']['checkuser'] = true; $wgCheckUserLog = true; #fonction <ref> require_once( "$IP/extensions/Cite/Cite.php" ); require_once( "$IP/extensions/Cite/SpecialCite.php" ); #fonction EditCount require_once( "$IP/extensions/Editcount/SpecialEditcount.php" ); #fonction CountEdit require_once( 'extensions/CountEdit/CountEdits.php'); #Fonction InputBox require_once("extensions/inputbox/inputbox.php"); require_once("extensions/create.php"); # for SubPageList extension require_once("extensions/SubPageList2.php"); # Parseur fonctions require_once( "$IP/extensions/ParserFunctions/ParserFunctions.php" ); #Fonction DeleteUser require_once("extensions/Deleteuser/SpecialDeleteuser.php"); #Fonction NewUserLog require_once("$IP/extensions/Newuserlog/Newuserlog.php"); #Fonction Poem require_once("$IP/extensions/Poem/Poem.php"); #Fonction Patrouilleur; require_once( 'extensions/Patroller/Patroller.php' ); #BadImageList require_once( 'extensions/BadImage/BadImage.php' ); // $wgGroupPermissions['oversight']['badimages'] = true; #Permission steward require_once( 'extensions/Makesysop/SpecialMakesysop.php' ); $wgGroupPermissions['steward' ]['makesysop' ] = true; $wgGroupPermissions['steward' ]['userrights'] = true; $wgGroupPermissions['bureaucrat']['makesysop' ] = true; $wgGroupPermissions['bureaucrat']['userrights'] = false; #Deleted contributions require_once( 'extensions/DeletedContributions/SpecialDeletedContributions.php' ); #Oversight require_once( 'extensions/Oversight/HideRevision.php' ); #AskSql require_once( 'extensions/Asksql/Asksql.php' ); $wgGroupPermissions['*']['asksql'] = false; $wgGroupPermissions['developer']['asksql'] = true; #Interdiction de création, d'édition ou de modification de certains titre require_once("$IP/extensions/BlockTitles/BlockTitles.php"); #Fonction Makebot pour Bureaucrates require_once('extensions/Makebot/Makebot.php'); $wgGroupPermissions['steward']['makebot' ] = true; #Fonction CrudeProtextion require_once('extensions/CrudeProtection/CrudeProtection.php'); #Email nouvels utilisateurs require_once('extensions/NewUserNotif/NewUserNotif.php'); #Liste noire des utilisateurs require_once('extensions/UsernameBlacklist/UsernameBlacklist.php'); #Liste des pages les plus récentes require_once('extensions/NewestPages/NewestPages.php'); #Category Tree $wgUseAjax = true; require_once( 'extensions/CategoryTree/CategoryTree.php' ); # Messages de déboyages $wgShowExceptionDetails = true; #Contributions editcount require_once('extensions/Contributionseditcount/Contributionseditcount.php' ); # Spam Black List require_once( "$IP/extensions/SpamBlacklist/SpamBlacklist.php" ); # ConfirmEdit : un filtre anti-spam pour éviter qu'un bot nous casse les pieds require_once( "$IP/extensions/ConfirmEdit/ConfirmEdit.php" ); # ConfirmAccount : filtre pour les nouveaux comptes. éviter des créations abusives. require_once( "$IP/extensions/ConfirmAccount/SpecialConfirmAccount.php"); $wgGroupPermissions['bureaucrat']['confirmaccount'] = true; $wgGroupPermissions['steward']['confirmaccount'] = true; $wgGroupPermissions['developer']['confirmaccount'] = true; # Import des images libres depuis Flickfr require_once('extensions/ImportFreeImages/ImportFreeImages.php'); $wgIFI_FlickrAPIKey = 'fab715ff5545e7f5a034afe0fd0724fd'; # StubManager require 'extensions/StubManager/StubManager.php'; # Secure HTML require 'extensions/SecureHTML/SecureHTML.php';
About the first problem : Special:version It would seem that the problem provides from SecureHTML extension I've tried to desactivate it on my own and Special:Version it's displaying correctly. About the two others one, the problems are the same
The real problem consists by all breaking tag I seen after éditing a page, all tags are broken (<charinsert> <inputbox> <quiz>) etc. I think that the problem is from Parserfunction of mediawiki.
The problem is the revision of Parser.php between version 27629 and 27667. r1=27629&r2=27667&pathrev=27707">http://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/includes/Parser.php?r1=27629&r2=27667&pathrev=27707. I've tested my wiki and the newest versions of Parser.php since 27667 (include) make broken tag, and block Special:Version. I think that you ought to revert these revision to 27629. I did that and all runs perfectly.
Changed title to reflect the updated report.
Should be fixed in r27871. Please confirm.
(In reply to comment #8) > Should be fixed in r27871. Please confirm. > <charinsert></charinsert> runs now. But, the new release of Parser.php makes still breaking tags as <Quiz></Quiz> or <DPL></DPL>. So I'can't see the [[Special:Version]] page, too. this one has the following message : Warning: DOMDocument::loadXML() [function.DOMDocument-loadXML]: Premature end of data in tag root line 1 in Entity, line: 88 in /var/www/wiki/includes/Parser.php on line 2972 Erreur interne Parser::preprocessToDom generated invalid XML Backtrace: #0 /var/www/wiki/includes/Parser.php(3026): Parser->preprocessToDom('__NOTOC__?This ...') #1 /var/www/wiki/includes/Parser.php(920): Parser->replaceVariables('__NOTOC__?This ...') #2 /var/www/wiki/includes/Parser.php(300): Parser->internalParse('__NOTOC__?This ...') #3 /var/www/wiki/includes/OutputPage.php(361): Parser->parse('__NOTOC__?This ...', Object(Title), Object(ParserOptions), true, true, NULL) #4 /var/www/wiki/includes/OutputPage.php(338): OutputPage->addWikiTextTitle('__NOTOC__?This ...', Object(Title), true) #5 /var/www/wiki/includes/SpecialVersion.php(34): OutputPage->addWikiText('__NOTOC__?This ...') #6 /var/www/wiki/includes/SpecialVersion.php(17): SpecialVersion->execute() #7 [internal function]: wfSpecialVersion(NULL, Object(SpecialPage)) #8 /var/www/wiki/includes/SpecialPage.php(660): call_user_func('wfSpecialVersio...', NULL, Object(SpecialPage)) #9 /var/www/wiki/includes/SpecialPage.php(461): SpecialPage->execute(NULL) #10 /var/www/wiki/includes/Wiki.php(193): SpecialPage::executePath(Object(Title)) #11 /var/www/wiki/includes/Wiki.php(45): MediaWiki->initializeSpecialCases(Object(Title), Object(OutputPage), Object(WebRequest)) #12 /var/www/wiki/index.php(89): MediaWiki->initialize(Object(Title), Object(OutputPage), Object(User), Object(WebRequest)) #13 {main}
(In reply to comment #10) > (In reply to comment #8) > > Should be fixed in r27871. Please confirm. > > > > <charinsert></charinsert> runs now. > > But, the new release of Parser.php makes still breaking tags as <Quiz></Quiz> > or <DPL></DPL>. It's even worse. <extensiontag>Something</extension> tag doesn't only *render* as UNIQ-...-QINU crap, it's actually *replaced* by a UNIQ token *in the revision itself*. Something in there is trying to render those tags pre-save, I think. Setting severity to blocker as we can't possibly release a version that breaks almost all extension tags.
Can't reproduce. Can someone narrow this down for me a little bit please? DPL1 and Quiz are working fine for me with trivial input text, and Special:Version is working with a decent list of extensions. Maybe it's PHP version related, can I have your version numbers please?
(In reply to comment #12) > Maybe it's PHP version related, can I have your version numbers please? Here you go: * MediaWiki: 1.12alpha (r27946) * PHP: 5.2.4 (cgi-fcgi) * MySQL: 5.0.45-community-nt * [[mw:Extension:Redircite]], latest SVN version Edit a page, add "<redircite>Something</redircite>" (without the quotes) and save. This renders as UNIQ-...-QINU crap. Edit the page again, and it turns out the <redircite> tags were actually *replaced* by the UNIQ-...-QINU stuff. [[mw:Extension:ToggleDisplay]] and even [[mw:Extension:Cite]] are affected as well. On a clean 1.11 install, everything works just fine. I don't have any Special:Version problems, however.
When I try to reproduce following directions in comment #13 with redircite, I do not have any problem. The page renders and saves apparently fine. * MediaWiki: 1.12alpha (r27951) * PHP: 5.2.4RC2 (cgi-fcgi) * MySQL: 5.0.27-standard
(In reply to comment #14) > The page renders and saves apparently fine. Weird. For me, even x<nowiki>y</nowiki>z isn't rendering correctly. > * PHP: 5.2.4RC2 (cgi-fcgi) Could you upgrade to 5.2.4?
(In reply to comment #15) > Weird. For me, even x<nowiki>y</nowiki>z isn't rendering correctly. Same problem on Commons: http://commons.wikimedia.org/w/index.php?title=Template_talk:AdminWelcome/en&diff=8765512&oldid=8763902
The issue I described in the bug title, which is the one Bertrand Grodin initially reported, is fixed. The issue presently being discussed is unrelated. I've created a new bug (Bug 12154) for the problem of erratic total failure. I'm marking this bug as closed. See bug 12154.
Ok, thanks.