Open Anton-Latukha opened 5 years ago
I have been reading the RESTbase installation instructions, which I don't find that clear, so I don't feel comfortable with just trying to follow them on the production wiki. Instead, I will test them on my own computer's mediawiki-1.31.1 (LTS) installation to make sure I can set RESTbase up properly first. MediaWiki has a lot of Easter eggs! I am starting to feel like I'm going down the rabbit hole.
Yes quite a broad topic. Ironically MediaWiki engine keeps it's own big Wiki. It is a very broad and deep topic. One rabbit hole at a time.
Thank you @hgolden
Please, if you can, keep relative track of your setup somewhere on GitHub/GitLab or gitlab.haskell.org.
I think this is resolved?
@gbaz, no I still need to work on this. I had overlooked it. Sorry! It appears that the Typeclassopedia article displays correctly, but the RESTbase extension may be needed for the visual editor or something else (I still don't have a good understanding of RESTbase and its use). I will work on this starting tomorrow (2019-09-04), implementing it first on my local machine to avoid damaging the production wiki since I need to experiment first.
Updated.
Overall - I'd would not hurry with it, lowering priority, but make a good diagnose, and solution probably must be simple.
It indeed happens particularly on Firefox (even in clean safe-mode of a browser).
Also I use NixOS - that also is special about setup and can be somehow related, like something searching hardcoded /...
path of something.
@hgolden If you would direct me roughly what to look for - I would know what to look to profile, and return with results. If you do not know the cause - then I would learn how to do general web-profiling procedure.
@Anton-Latukha @gbaz I am going to implement RESTBase using the SQLite backend on my own desktop computer first. At the same time I will upgrade to the latest LTS version. I will test everything as well as I can doing this. Only then will I update the production wiki. I would be happy to allow each of you to run your own tests on my machine to get your concurrence before updating the production wiki. I will set up a dynamic DNS to allow your access once it is ready to test. (I have just upgraded my desktop with more RAM, disk and CPU cores so I can do the work locally.)
You are serious about this stuff.
I would test how I can.
But as I said, I were a contributor on Arch Wiki pages & learned back then that in depth, and learned MediaWiki and setted-it up locally with some number of plugins. It was years ago.
I can take upon an effort to move your configuration to Ansible, or contained build, or even after that - NixOS, or even try Guix. If talking about the community - I can clean-up my other efforts & devote time to manage NixOS configs for Haskell MediaWiki, I would need to write management of in nixpkgs
at first, because there is MediaWiki package, but there is no automatic server deployment options written for it. I think MediaWiki inside is pretty stateful, not including the data, so writing automation for it in NixOS can take effort.
But at the time - I would test.
I willl include RESTbase in the dockerized upgrade to MediaWiki-1.35.2 I am working on presently.
In brief, reports:
Full report
```text MediaWiki internal error. Original exception: [ee6c477732ad443c708512c7] /Typeclassopedia MWException from line 200 of /var/lib/mediawiki/extensions/Math/MathRestbaseInterface.php: Math extension can not find Restbase URL. Please specify $wgMathFullRestbaseURL. Backtrace: #0 /var/lib/mediawiki/extensions/Math/MathRestbaseInterface.php(339): MathRestbaseInterface->getUrl(string) #1 /var/lib/mediawiki/extensions/Math/MathRestbaseInterface.php(138): MathRestbaseInterface->getCheckRequest() #2 /var/lib/mediawiki/extensions/Math/Math.hooks.php(385): MathRestbaseInterface::batchEvaluate(array) #3 /usr/share/mediawiki/includes/Hooks.php(195): MathHooks::onParserAfterTidy(Parser, string) #4 /usr/share/mediawiki/includes/parser/Parser.php(1393): Hooks::run(string, array) #5 /usr/share/mediawiki/includes/parser/Parser.php(455): Parser->internalParseHalfParsed(string, boolean, boolean) #6 /usr/share/mediawiki/includes/content/WikitextContent.php(331): Parser->parse(string, Title, ParserOptions, boolean, boolean, integer) #7 /usr/share/mediawiki/includes/content/AbstractContent.php(497): WikitextContent->fillParserOutput(Title, integer, ParserOptions, boolean, ParserOutput) #8 /usr/share/mediawiki/includes/poolcounter/PoolWorkArticleView.php(139): AbstractContent->getParserOutput(Title, integer, ParserOptions) #9 /usr/share/mediawiki/includes/poolcounter/PoolCounterWork.php(123): PoolWorkArticleView->doWork() #10 /usr/share/mediawiki/includes/page/Article.php(673): PoolCounterWork->execute() #11 /usr/share/mediawiki/includes/actions/ViewAction.php(44): Article->view() #12 /usr/share/mediawiki/includes/MediaWiki.php(493): ViewAction->show() #13 /usr/share/mediawiki/includes/MediaWiki.php(288): MediaWiki->performAction(Article, Title) #14 /usr/share/mediawiki/includes/MediaWiki.php(735): MediaWiki->performRequest() #15 /usr/share/mediawiki/includes/MediaWiki.php(509): MediaWiki->main() #16 /usr/share/mediawiki/index.php(43): MediaWiki->run() #17 {main} Exception caught inside exception handler: [ee6c477732ad443c708512c7] /Typeclassopedia MWException from line 200 of /var/lib/mediawiki/extensions/Math/MathRestbaseInterface.php: Math extension can not find Restbase URL. Please specify $wgMathFullRestbaseURL. Backtrace: #0 /var/lib/mediawiki/extensions/Math/MathRestbaseInterface.php(339): MathRestbaseInterface->getUrl(string) #1 /var/lib/mediawiki/extensions/Math/MathRestbaseInterface.php(138): MathRestbaseInterface->getCheckRequest() #2 /var/lib/mediawiki/extensions/Math/Math.hooks.php(385): MathRestbaseInterface::batchEvaluate(array) #3 /usr/share/mediawiki/includes/Hooks.php(195): MathHooks::onParserAfterTidy(Parser, string) #4 /usr/share/mediawiki/includes/parser/Parser.php(1393): Hooks::run(string, array) #5 /usr/share/mediawiki/includes/parser/Parser.php(455): Parser->internalParseHalfParsed(string, boolean, boolean) #6 /usr/share/mediawiki/includes/cache/MessageCache.php(1108): Parser->parse(string, Title, ParserOptions, boolean) #7 /usr/share/mediawiki/includes/Message.php(1159): MessageCache->parse(string, Title, boolean, boolean, Language) #8 /usr/share/mediawiki/includes/Message.php(824): Message->parseText(string) #9 /usr/share/mediawiki/includes/Message.php(880): Message->toString() #10 /usr/share/mediawiki/includes/skins/Skin.php(620): Message->parse() #11 /usr/share/mediawiki/includes/skins/SkinTemplate.php(459): Skin->printSource() #12 /usr/share/mediawiki/includes/skins/SkinTemplate.php(246): SkinTemplate->prepareQuickTemplate(OutputPage) #13 /usr/share/mediawiki/includes/OutputPage.php(2335): SkinTemplate->outputPage() #14 /usr/share/mediawiki/includes/exception/MWException.php(206): OutputPage->output() #15 /usr/share/mediawiki/includes/exception/MWException.php(246): MWException->reportHTML() #16 /usr/share/mediawiki/includes/exception/MWExceptionHandler.php(69): MWException->report() #17 /usr/share/mediawiki/includes/exception/MWExceptionHandler.php(180): MWExceptionHandler::report(MWException) #18 /usr/share/mediawiki/includes/MediaWiki.php(518): MWExceptionHandler::handleException(MWException) #19 /usr/share/mediawiki/index.php(43): MediaWiki->run() #20 {main} ```
The saved page: page.tar.gz