Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Call to undefined method Interwiki::fetch()

未关闭
#33 1 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
45/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
php
领域
backend, search

调研方向

在链接的 sandbox 测试页面上重现该故障,然后从 src/ByHttpRequestQueryLookup.php 开始,重点检查第 59 行报告的调用。跟踪外部查询如何处理 interwiki 匹配,并确认 fix 完成后页面不再引发未定义方法错误。

由索引模型根据 Issue 内容生成。

描述

bug
Setup and configuration
  • MediaWiki | 1.35.0-rc.2 (5f6c9d1)16:32, 21 August 2020
  • PHP | 7.2.24-0ubuntu0.18.04.7 (apache2handler)
  • MariaDB | 10.1.47-MariaDB-0ubuntu0.18.04.1
  • Elasticsearch | 6.5.4
Issue

[98d7e10a2693aa30c5a558aa] /wiki/My_first_external_query Error from line 59 of /../w/extensions/SemanticExternalQueryLookup/src/ByHttpRequestQueryLookup.php: Call to undefined method Interwiki::fetch()

Backtrace
#0 /../w/extensions/SemanticExternalQueryLookup/src/ByHttpRequestQueryLookup.php(48): SEQL\ByHttpRequestQueryLookup->tryToMatchInterwikiFor(SMWQuery)
#1 /../w/extensions/SemanticMediaWiki/includes/query/SMW_QueryProcessor.php(338): SEQL\ByHttpRequestQueryLookup->getQueryResult(SMWQuery)
#2 /../w/extensions/SemanticMediaWiki/src/ParserFunctions/AskParserFunction.php(364): SMWQueryProcessor::getResultFromQuery(SMWQuery, array, integer, integer)
#3 /../w/extensions/SemanticMediaWiki/src/ParserFunctions/AskParserFunction.php(197): SMW\ParserFunctions\AskParserFunction->doFetchResultsFromFunctionParameters(array, array)
#4 /../w/extensions/SemanticMediaWiki/src/ParserFunctionFactory.php(402): SMW\ParserFunctions\AskParserFunction->parse(array)
#5 /../w/includes/parser/Parser.php(3340): SMW\ParserFunctionFactory->SMW\{closure}(Parser, string, string, string, string, string, string, string, string)
#6 /../w/includes/parser/Parser.php(3047): Parser->callParserFunction(PPFrame_Hash, string, array)
#7 /../w/includes/parser/PPFrame_Hash.php(253): Parser->braceSubstitution(array, PPFrame_Hash)
#8 /../w/includes/parser/Parser.php(2887): PPFrame_Hash->expand(PPNode_Hash_Tree, integer)
#9 /../w/includes/parser/Parser.php(1556): Parser->replaceVariables(string)
#10 /../w/includes/parser/Parser.php(651): Parser->internalParse(string)
#11 /../w/includes/content/WikitextContent.php(374): Parser->parse(string, Title, ParserOptions, boolean, boolean, integer)
#12 /../w/includes/content/AbstractContent.php(590): WikitextContent->fillParserOutput(Title, integer, ParserOptions, boolean, ParserOutput)
#13 /../w/includes/Revision/RenderedRevision.php(266): AbstractContent->getParserOutput(Title, integer, ParserOptions, boolean)
#14 /../w/includes/Revision/RenderedRevision.php(235): MediaWiki\Revision\RenderedRevision->getSlotParserOutputUncached(WikitextContent, boolean)
#15 /../w/includes/Revision/RevisionRenderer.php(215): MediaWiki\Revision\RenderedRevision->getSlotParserOutput(string)
#16 /../w/includes/Revision/RevisionRenderer.php(152): MediaWiki\Revision\RevisionRenderer->combineSlotOutput(MediaWiki\Revision\RenderedRevision, array)
#17 [internal function]: MediaWiki\Revision\RevisionRenderer->MediaWiki\Revision\{closure}(MediaWiki\Revision\RenderedRevision, array)
#18 /../w/includes/Revision/RenderedRevision.php(197): call_user_func(Closure, MediaWiki\Revision\RenderedRevision, array)
#19 /../w/includes/poolcounter/PoolWorkArticleView.php(216): MediaWiki\Revision\RenderedRevision->getRevisionParserOutput()
#20 /../w/includes/poolcounter/PoolCounterWork.php(162): PoolWorkArticleView->doWork()
#21 /../w/includes/page/Article.php(810): PoolCounterWork->execute()
#22 /../w/includes/actions/ViewAction.php(74): Article->view()
#23 /../w/includes/MediaWiki.php(527): ViewAction->show()
#24 /../w/includes/MediaWiki.php(313): MediaWiki->performAction(Article, Title)
#25 /../w/includes/MediaWiki.php(940): MediaWiki->performRequest()
#26 /../w/includes/MediaWiki.php(543): MediaWiki->main()
#27 /../w/index.php(53): MediaWiki->run()
#28 /../w/index.php(46): wfIndexMain()
#29 {main}

Steps to reproduce the observation (recommendation is to use the sandbox):

--> test page

主要语言
PHP
星标
9
派生
8
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

SemanticMediaWiki/SemanticExternalQueryLookup 的其他 Issue

查看 SemanticMediaWiki/SemanticExternalQueryLookup 的全部 Issue

相似的 Issue

更多 PHP Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。