MediaWiki 1.31

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page MediaWiki 1.31 and the translation is 100% complete.

Other languages:
العربية • ‎asturianu • ‎dansk • ‎English • ‎español • ‎français • ‎עברית • ‎日本語 • ‎한국어 • ‎Lëtzebuergesch • ‎मराठी • ‎português do Brasil • ‎русский • ‎ᱥᱟᱱᱛᱟᱲᱤ • ‎中文



MediaWiki 1.31 は、MediaWiki の最新リリースです。 変更点の完全な一覧については、RELEASE NOTES ファイルを参照してください。 2017年9月26日より、漸増する「wmf」ブランチを通して、ウィキメディア財団のウィキ群に展開されました。 1.31.0 安定版リリースは、2018年6月13日にリリースされました。 最新のスナップショットをダウンロードするか、Git 内REL1_31 ブランチをチェックアウトしてこのリリースに追随してください。

新着情報

より多く同梱された拡張機能

この画像上でクリックすると MultimediaViewer 拡張機能が動作します(個人設定で無効にしていない場合)

MediaWiki の tarball に同梱されている拡張機能集が増加しています。新しく追加されたものは以下のとおりです:

手違いにより、Nuke 拡張機能は MediaWiki 1.31.0 の tarball には含まれていません。この拡張機能を使用したい場合は、個別にダウンロードしてください。これは次回の MediaWiki のリリースで修正される予定です。

外装

Timeless スキン

Timeless は MediaWiki の新しいレスポンシブスキンで、同梱されるようになりました。

CologneBlue および Modern

CologneBlue および Modern スキンは、現在も MediaWiki に対応していますが、同梱されなくなりました。それらのスキンを更新またはインストールする場合は、個別にダウンロードしてください。

HTML 5 構文解析アルゴリズムに置換された Tidy

詳細はよくある質問Parsing/Replacing Tidy/FAQを参照してください

正しくないウィキテキストを現代的で標準に準拠した方法で整形するため、HTML 4 ベースの Tidy ライブラリが PHP のみで書かれた HTML 5 構文解析器 RemexHtml に置き換えられています。行われなくなる tidy の整形にコンテンツが依存している場合は、それらを修正する必要があります。

Parsoid とともに Linter 拡張機能 を使用することで、RemexHtml 構文解析器を利用したレンダリングの際に差異が生じる問題が発生するページを割り出すことができます。ParserMigration 拡張機能は、エディタに tidy および RemexHtml を利用したレンダリングの比較を横に並べて表示します。

ウィキ間利用者名

MediaWiki は、版やログエントリ等において "iw>Example" のような形式の「ウィキ間」利用者名をサポートするようになりました。これにより、外部のウィキ(例えば Wikibase によって生成されたもの)からのページの取り込みやイベントの正確な記録が可能となり、 現在存在する、あるいは将来作成される可能性があるローカルアカウントによって混乱することがなくなります。

  • (task T9240) ページの取り込みは、不明な(オプションで既知のものも)利用者名を "iw>Example" のような形式で記録するようになります。
  • (task T20209) Linker(履歴ページ、ログページ等で使用されています)は、[[iw:User:Example|iw>Example]] というウィキテキストのように、"iw>Example" という形で利用者名を表示します。

さらなる UI の標準化

TODO: ここを拡充してください
  • MediaWiki プロジェクトを横断したダイアログボックスの標準化の最初のパスとして、Html クラスが messageBox、successBox、errorBox および warningBox を生成するためのヘルパーメソッドを提供するようになりました。

その他の機能の変更

  • すべての利用者に対して、90編集/分という既定の編集速度制限を追加します。これは $wgRateLimits の設定によって変更することができます。
  • (task T143790) $wgEmailConfirmToEditedit アクションにのみ影響します。
  • (task T76554) ….json と名付けられた利用者サブページは、….js….css ページと同様の方法で保護されるようになりました。そのため、そのページに環境設定オプションを安全に配置することができます。
  • (task T181651) ファイルページの情報ページは、基本情報表においてファイルの base-16 SHA1 ハッシュ値を表示するようになりました。
  • (task T189785) pingback 機能は、1月に1回、活動中のウィキを割り出すための heartbeat ping を送信します。
  • (task T19099) 存在しないページにリンクするタブ(未作成の議論ページへのタブ等)は、色だけでなく、状態を示すツールチップを持つようになります。

1.31 において更新された言語

MediaWiki は 350 以上の言語をサポートしています。多くのローカライゼーションは定期的に更新されています。以下では、Phabricator のレポートによる言語への変更、新しい言語および削除された言語のみが記載されています。

  • (task T180052) ミランダ語(mwl)は、文法的性が付与された NS_USER/NS_USER_TALK をサポートするようになりました。
  • (task T182305) 新規言語サポート: ニュンガル語(nys)。
  • (task T186359) 新規言語サポート:シベリアタタール語[cебертатар](sty)。
  • (task T186635) 新規言語サポート:Guianan Creole(gcr)。
  • (task T186647) 新規言語サポート:クムク語[къумукъ](kum)。
  • (task T187750) 新規言語サポート:Spanish formal address(es-formal)。
  • (task T187824) 新規言語サポート:Hungarian formal address(hu-formal)。
  • (task T189127) 新規言語サポート:ゴロンタロ語(gor)。

MediaWiki 管理者向けのアップグレードの注意点

PHP7 または HHVM が必要になりました

MediaWiki 1.31 は PHP 7.0.0 以降を必要とします。HHVM 3.18.5 以降もサポートしますが、長期間のサポートのため、一般に PHP 7.0.0 以降の使用が推奨されます。

データベースの変更

1.31 には 1.30 からいくつかのデータベース変更があり、スキーマ更新をしなければ動作しません。PostgreSQL のユーザーの皆さんはバージョン 9.2以降をご利用ください。

Revision テーブル

リビジョンテーブルのようないくつかのとても大きなテーブルへの変更のため、スキーマ更新には非常に長い時間(中規模サイトで数分、大規模サイトで数時間)がかかる可能性があることに注意してください。更新前には常にデータベースをバックアップすることを忘れないでください!

Archive テーブル

MySQL、SQLite、あるいは MSSQL を利用していて、スキーマ変更の適用に update.php を使用しておらず、かつ手動での migrateArchiveText.php の実行と patch-drop-ar_text.sql の適用のためのダウンタイムを確保できない場合は、MediaWiki 1.31 への更新の前に、archive テーブルの ar_text および ar_flags カラムに既定値を適用するか、それらのカラムが NULL を許可するように設定する必要があります。maintenance/archives/patch-nullable-ar_text.sql は、MySQL でこれを行う方法を示します。

Actor テーブル

ログイン済みあるいはIPの「アクター」の識別が、新しい actor テーブルに移されています。Revision や logging のようなテーブルの行は、各行に利用者 ID と利用者名/IP を格納するのではなく、アクター ID を参照します。

  • これは現在 $wgActorTableSchemaMigrationStage によって制御されています。ほとんどのウィキでは、すべての必要な拡張機能が更新され次第、これを MIGRATION_NEW に設定し、maintenance/migrateActors.php を実行することができます。
  • データベース上の記録されたアクションの行にアクセスするほとんどのコードは、SQL クエリの構築に必要な情報を取得するために関連する getQueryInfo() メソッドを使用するべきです。移行期間中は、アクター関連フィールドへのアクセスに必要となる機能フラグが付加された情報を取得するために、ActorMigration クラスを使用することもできます。

環境設定の変更

  • $wgEnableAPI および $wgEnableWriteAPI は非推奨となり、将来のバージョンでは削除される予定です。API は現在安定しており、安全で、必須であると考えられています。
  • 現在は既定値となっているため、$wgUsejQueryThree は削除されました。これは移行期間中の一時的な変数と説明されており、1.29 より廃止予定となっていました。
  • $wgLogoHD が SVG 画像をサポートするように更新されています。これは $wgLogo を使用します。$wgLogo では PNG のようなフォールバック画像を指定することができます。
  • (task T44246) 利用者にページを巡回済みにする権利がない場合、$wgFilterLogTypes は〈patrol'〉を無視しないで処理するようになりました。
  • 取り込まれた版または CentralAuth のグローバルブロックを含むウィキでは、maintenance/cleanupUsersWithNoId.php を実行する必要があります。
  • 1.27 より非推奨となっていた、構成設定$wgResourceLoaderMinifierStatementsOnOwnLine および $wgResourceLoaderMinifierMaxLineLength が削除されました。
  • (task T180921) $wgReferrerPolicyは最新版のReferrer Policy設定を採用していないブラウザでも、ファールバックをサポートするように変更されました。
  • $wgFragmentMode が既定で [ 'legacy', 'html5' ] に設定されるようになりました。これは人間が読めるセクション ID への移行の最初の段階で、後に既定のモードとなる 'html5' へと変わるでしょう。
  • CACHE_ACCEL は、現在 APC(u) または WinCache のみをサポートします。アップストリームが活発でないため、XCache のサポートは削除されました。また、PHP 7へ移行する計画もありません。
  • 関連する構成オプション $wgAllowCategorizedRecentChanges を含む、古いCategorizedRecentChanges 機能は削除されています。
  • (task T188472) $wgArticleCountMethodに対する〈comma〉の値のサポートはパフォーマンス上の理由から終了し、その設定のままインストールすると、値を〈any〉に設定した状態で実行されます。
  • (task T185753) MediaWikiでは利用者の入力を整えるため、これまで既定で無効だったRemexHtmlが有効になりました。HTML整形を完全に無効にするには、$wgTidyConfignullに設定します。すでに廃止された昔のTidyを外部バイナリとして使うには、$wgTidyConfignullに、かつ$wgUseTidytrueに設定します。
  • $wgLogAutopatrol の既定値が true ではなくfalse になりました。
  • $wgValidateAllHtml は削除され、無視されるようになります。
  • 1.25 より非推奨となり無視されるようになっていた $wgScriptExtension が削除されました。詳細は 1.25 のリリースノートを参照してください。
  • $wgUseAjaxはすでに廃止された連動するAJAXフレームワーク同様、非推奨になりました。いくつかの拡張機能ではこれを誤用してAJAX機能を有効にするかどうか判断しており、問題をさらに複雑にしていたからです。
  • $wgDBmysql5 は非推奨となり、将来のバージョンから削除されます。これは導入時より実験的とマークされてきた拡張機能でした。
  • $wgDBmwschemaの対象が全種のデータベースに拡大しました。旧版のMediaWikiではこれをインストール段階で〈mediawiki〉に設定し、データベースがPostgreSQLあるいはMSSQL以外の場合、更新時にエラーの原因になっていました。その場合はこの拡張機能をLocalSettings.phpの設定から削除してください。

MediaWiki 開発者向けのアップグレードの注意点

MediaWiki 1.31.0-rc.2 からの変更点

  • (task T195783) 通常の自動読み込み機能と同じ段階でPSR-4名前空間を初期化。
  • (task T196092) インストーラーのMySQL binary/utf-8 文字エンコーディングの選択肢を非表示にする。
  • (task T196185) インストーラーが$wgDBmysql5を有効にできなくする機能。
  • (task T196125) PHP管理にmemcached

3.0(PHP 7.0に付属)のサポートを開始しました。

  • (task T182366) PHP 7.1+でUploadBase::checkXMLEncodingMissmatch()が稼働
  • (task T118683) TitleMoveCompleteフックでHHVMの&$user参照外し演算子の例外処理を修正
  • (task T196672) extension.jsonファイルのmtimeをゼロに設定可能にしました。
  • (task T180403) padleft/padright パーサ機能で$length を認証します。

MediaWiki 1.31.0-rc0 からの変更点

  • (task T33223) archive.ar_textおよびar_flagsをdrop(削除)。
  • (task T187645) IcuCollationで1文字目の取得にコードポイントをタイブレイカーとして使用。
  • (task T191947) シェルリングが無効になっている場合は、インストーラ中にシェルしないでください。
  • (task T194319) 拡張機能の登録の一部として、設定の重複設定を改善。
  • (task T195211) PSR-4オートローダーのディレクトリにスラッシュが不要になりました。
  • (task T186565) `FileRepo::streamFile()`におけるPHP通知を`ob_end_flush()`から修正。
  • インストーラの名前空間の入力フィールドを非表示にするエラーを修正。
  • (task T186456) PEAR maikライブラリを探すリファクタリングチェックがより明確になりました。

1.31 における新しい開発者向け機能

  • Wikimedia\Rdbms\IDatabase->select()および同等のメソッドはグループ化において丸カッコを記述する結合をサポートします。
  • MediaWiki 品群でダイアログボックスの標準化を進める第1段階として、HTMLクラスにヘルパーメソッドを提供、messageBoxsuccessBoxerrorBoxおよびwarningBoxを生成。
  • (task T111605) 'ImportHandleUnknownUser'フックで拡張機能の読み込み中に複数ユーザーの自動作成を許可。
  • ParserOutputPostCacheTransformフックを追加し、拡張機能にParserOutput::getText()キャッシュ後の変換。
  • UploadForm:getInitialPageTextのフックを追加、ファイルの読み込み時に拡張機能にページの文の冒頭を変更させる。
  • 'data-mw-deduplicate'属性のある書式タグを重複排除してParserOutput::getText()キャッシュ後に変換。そのメソッドに'deduplicateStyles' => falseを通すと無効化できます。
  • Wikimedia\Rdbms\IDatabase::cancelAtomic()を追加、トランザクション全体ではなく、アトミック・セクションのみ巻き戻しができます。
  • 失敗したトランザクションの巻き戻しに、Wikimedia\Rdbms\IDatabase::doAtomicSection()と非ネイティブの::insertSelect()および非MySQLの::replace()あるいは::upsert()を使用できなくなりました。
  • CLIインストーラ(maintenance/install.php)に拡張機能を学習させ、インクルードさせます。この機能を有効にするには、--with-extensionsをパスさせます。
  • (task T184791) rc_patrolledに3つの状態を示すようになりました。「0」はunpatrolledに、「1」 は手動の巡回に、「2」は自動巡回にそれぞれ対応。
  • エディタの提供もしくは編集経験を拡充する拡張機能では、種別を「editor」に設定できるようになりました。
  • 拡張機能でオートローダのPSR-4を使用するには、extension.jsonで「AutoloadNamespaces」属性を設定します。詳細とサンプルは説明文書を参照してください。

1.31 における外部ライブラリの変更

  • pear/mailpear/mail_mime および pear/mail_mime-decodesuggested から required へ移されました。これらのパッケージは PEAR 自身ではなく composer によってインストールされるようになりました。

更新された外部ライブラリ

  • jquery.chosen を v0.9.14 から v1.8 に更新しました
  • composer/spdx-licenses を 1.1.4 から 1.3.0 に更新しました(開発時依存)。
  • nikic/php-parser を 2.1.0 から 3.1.3 に更新しました(開発時依存)。
  • wikimedia/ip-set を 1.1.0 から 1.2.0 に更新しました。
  • wikimedia/relpath を 2.0.0 から 2.1.1 に更新しました。
  • wikimedia/running-stat を 1.1.0 から 1.2.0 に更新しました。
  • wikimedia/wrappedstring を 2.2.0 から 2.3.0 に更新しました。
  • mediawiki/at-ease を 1.1.0 から 1.2.0 に更新しました。
  • wikimedia/php-session-serializer を 1.0.4 から 1.0.6 に更新しました。
  • wikimedia/remex-html を 1.0.2 から 1.0.3 に更新しました。
  • wikimedia/html-formatter を 1.0.1 から 1.0.2 に更新しました。

新しい外部ライブラリ

  • wikimedia/object-factory 1.0.0 を追加しました

削除または置換された外部ライブラリ

  • (task T17845) 非推奨のモジュール'jquery.badge'を削除。
  • 非推奨のモジュール'jquery.autoEllipsis'を削除。CSS text-overflowプロパティを代用してください。
  • 非推奨のモジュール'jquery.placeholder'を削除。
  • 非推奨のモジュール'jquery.appear'を削除。'mediawiki.viewport'モジュールを代用してください。
  • mediawiki/at-easeを廃止、wikimedia/at-easeに置換しました。

1.31 におけるバグ修正

  • (task T90902) ヘッダID内の空白スペースでアンカーが無効になる。
  • (task T189375) CSSMin では'url()'シンタックスで挟んだ引用URLの冒頭に、空白スペースを書けるようになりました。
  • (task T2087, task T10897, task T87753, task T174639): カテゴリと言語間リンクでホワイトスペースが生じた場合、予想外の箇所に空行を置く代わりに、ホワイトスペースを削除します。
  • (task T3780) Windows サーバ上でPHP7.1+によるUTF-8 名称でのアップロードが可能になりました。
  • (task T182366) PHP 7.1+でUploadBase::checkXMLEncodingMissmatch()が使用可能になりました。

1.31における操作APIの変更

  • (task T185058) action=query&list=tagsにおけるtgpropに対する'name'値を削除。出力になんら影響を与えず、nameはいずれにしても必ず返されたため。
  • action=moveに対するパラメータの'watch'および'unwatch'を削除。非推奨で、2010年に1.17以降は偶発的に機能しなくなりました。'watchlist'を代用してください。

1.31における操作APIの内部的な変更

  • ApiBase::getProfileDBTimeは 1.25以降非推奨で、削除されました。
  • ApiBase::getModuleProfileNameは 1.25以降非推奨で、削除されました。
  • ApiBase::getProfileTimeは 1.25以降非推奨で、削除されました。

1.31 における後方互換性のない変更

  • MessageBlobStore::insertMessageBlob()は 1.27以降非推奨で、削除されました。
  • OutputPageクラスコンストラクタにcontextパラメータが必須になりました。コンテキストなしでインスタンス化することは、1.18で非推奨になりました。
  • mw.page JavaScript singletonは 1.30以降非推奨で、削除されました。
  • Article::getLastPurgeTimestamp()WikiPage::getLastPurgeTimestamp()ならびに関連するWikiPage::PURGE_* コンスタンスは 1.29以降非推奨で、削除されました。
  • Article::selectFields()::onArticleCreate()::onArticleDelete()::onArticleEdit()方式は 1.24以降非推奨で、削除されました。
  • Installer::locateExecutable()および::locateExecutableInDefaultPaths()は削除されました。ExecutableFinder::findInDefaultPaths()を代用してください。
  • 非推奨のMW_DIFF_VERSION コンスタントを削除しました。DifferenceEngine::MW_DIFF_VERSIONを代用してください。
  • リファクタリングが顕著なため、アクセス制限のないContribsPager::getUserCond()を削除しました。
  • Blockクラスは'byText'あるいは->setBlocker()に対する利用できるが存在しない利用者名を受け付けなくなりました。呼び出し側はブロッカーがローカルに存在することを確認するか、「iw>Example」のような新しいウィキ間フォーマットの利用者名を使用する必要があります。
  • WatchedItemクラスの以下の方法とコンスタンスは1.27以降非推奨で、削除されました。
    • WatchedItem::getTitle()
    • WatchedItem::fromUserTitle()
    • WatchedItem::addWatch()
    • WatchedItem::removeWatch()
    • WatchedItem::isWatched()
    • WatchedItem::duplicateEntries()
    • WatchedItem::IGNORE_USER_RIGHTS
    • WatchedItem::CHECK_USER_RIGHTS
    • WatchedItem::DEPRECATED_USAGE_TIMESTAMP
  • JavaScriptMinifier::minifyに対する$statementsOnOwnLineパラメータは削除されました。$wgResourceLoaderMinifierStatementsOnOwnLineおよび対応する構成変数は1.27以降非推奨で、こちらも削除されました。
  • JavaScriptMinifier::minifyに対する$maxLineLengthパラメータは削除されました。対応する構成変数$wgResourceLoaderMinifierMaxLineLength,は1.27以降非推奨で、こちらも削除されました。
  • HtmlFormatterクラスは1.27以降非推奨で、削除されました。名前空間名付きのHtmlFormatter\HtmlFormatterクラスを代用してください。
  • MySQL用ドライバ'mysql'はMediaWiki 1.30以降非推奨で、削除されました。ドライバはPHP 5.5以降非推奨で、PHP 7.0て^_^削除されました。MySQL 既定のドライバはMediaWiki 1.22以降、'mysqli'です。
  • The following properties of PreparedEditの以下のプロパティは1.21以降、非推奨で、削除されました。
    • PreparedEdit->newText
    • PreparedEdit->oldText
    • PreparedEdit->pst
  • ParserOptions::setWrapOutputClass()の既定以外の値で生成したParserOutputオブジェクトは、パーサのキャッシュに追加できなくなりました。
  • OutputPageクラスによる以下の非推奨の方法は、削除されました。
    • OutputPage::addExtensionStyle(); 1.27で非推奨
    • OutputPage::getExtStyle(); 1.27で非推奨
    • OutputPage::setETag(); 1.28で非推奨 (廃止され無操作)
    • OutputPage::setSquidMaxage(); 1.27で非推奨
    • OutputPage::readOnlyPage(); 1.25で非推奨
    • OutputPage::rateLimited(); 1.25で非推奨
  • *さらに、保護されたOutputPage::$mExtStyles アレーは、前述を介してのみアクセス可能だったものの、削除されました。
  • 1.27で非推奨になった無操作メソッドSkin::showIPinHeader()を削除しました。
  • MediaWiki 1.30で非推奨になった、EditPageの以下の属性とメソッドを削除しました。
    • $isCssJsSubpage::isUserConfigPage()を使用
    • $isCssSubpage::isUserCssConfigPage()を使用
    • $isJsSubpage::isUserJsConfigPage()を使用
    • $isWrongCaseCssJsPage::isWrongCaseUserConfigPage()を使用
    • ::getSummaryInput()::getSummaryInputWidget()を使用
    • ::getSummaryInputOOUI()::getSummaryInputWidget()を使用
    • ::getCheckboxes()::getCheckboxesWidget()もしくは::getCheckboxesDefinition()を使用
    • ::getCheckboxesOOUI()::getCheckboxesWidget()もしくは::getCheckboxesDefinition()を使用
  • 1.29で非推奨になったResourceLoaderModule::getPosition()を削除しました。
  • Userで対応するオブジェクトの関数のラッパーとなるクッキー関連の以下のメソッドは、1.27で非推奨になり、今回、削除されました。
    • ::setCookie()
    • ::clearCookie()
    • ::setExtendedLoginCookie()
  • *注記:User::setCookies()は存続し、推奨のままです。
  • 同じくUserにおいて、1.27で非推奨になった認証関連の一部のメソッドを削除しました:
    • ::getEditTokenTimestamp()MediaWiki\Session\Token::getTimestamp()を使用
    • ::getPasswordFactory() – 直接 PasswordFactoryを生成
    • ::passwordChangeInputAttribs()
  • 1.25で非推奨となったグローバルな関数wfProfileInならびにwfProfileOutは、削除されました。
  • 1.24で非推奨となったSpecialPageFactory::getList()は削除されました。::getNames()を代用してください。
  • 1.25で非推奨になったOpenSearch::getOpenSearchTemplate()は削除されました。ApiOpenSearch::getOpenSearchTemplate()を代用してください。
  • 1.27で非推奨となったグローバルな関数wfBaseConvertは削除されました。直接、Wikimedia\base_convert()を使ってください。
  • 完全なトランザクション中もしくはDBO_TRXが有効な状態で、明示的にDatabase::begin()を呼び出すと、予想外の結果を招きます。完全なトランザクション中に明示的にDatabase::commit()を呼び出すと、やはり結果は予想外となります。旧来は、これらはエラーとして記録されました。代わりにstartAtomic()およびendAtomic()のメソッドあるいはAtomicSectionUpdateを使用してください。
  • グローバルな関数wfOutputHandler()を削除しました。代替としてMediaWiki\OutputHandler::handle()を使ってください。グローバルな関数はたまにしか定義されません。代替関数は常にオートローダ経由で利用できます。
  • 1.28で非推奨になったChangeTags::listExtensionActivatedTagsならびに::listExtensionDefinedTagsは削除しました。::listSoftwareActivatedTags()および::listSoftwareDefinedTags()を代用してください。
  • 1.25で非推奨になったTitle::getTitleInvalidRegex()を削除しました。MediaWikiTitleCodec::getTitleInvalidRegex()を代用してください。
  • 1.25で非推奨となったHTMLFormならびにVFormHTMLForm::isVForm()は既に削除されています。
  • 1.25で非推奨になり使用不可となったProfileSectionクラスを削除しました。
  • 1.30で非推奨になったResourceLoaderGetLessVarsフックを削除しました。ResourceLoaderModule::getLessVars()はグローバル変数ではなくローカル変数を公開します。
  • ユーザが作成したコンテンツのクリーンアップを最新化する作業の一環として、環境設定のオプションおよびHTML有効性関連のメソッドは、非推奨の処理をせずに削除しました。テストメソッドのMediaWikiTestCase::assertValidHtmlSnippet()および::assertValidHtmlDocument()同様、公式メソッドであるMWTidy::checkErrors()ならびに呼び出しパスTidyDriverBase::validate()を削除しました。環境設定のオプションである$wgValidateAllHtmlを削除、今後は無視されます。
  • Execution of external programs using MediaWiki\Shell\Commandを使用する外部プログラムの実行には、現在、既定でRESTRICT_DEFAULTFirejail規制がかかります(訳注:FirejailとはLinuxとWineの下書き用サンドボックス)
  • 1.26で非推奨になったResourceLoaderModule::getHashMtime()および::getDefinitionMtime()メソッドを削除しました。
  • 非推奨になったモジュールエイリアス

'mediawiki.widgets.CategorySelector'を削除しました。直接'mediawiki.widgets.CategoryMultiselectWidget'モジュールを使用してください。

1.31 における廃止予定

  • Revisionクラスを非推奨にした代わりに、RevisionStoreBlobStoreおよびそのRevisionRecord下位クラスを推奨します。
  • グローバル関数wfBCP47を非推奨にし、代わりにLanguageCode::bcp47を推奨します。
  • グローバル関数wfCountDownを非推奨にし、代わりにMaintenance::countDownを推奨します。
  • データベースから選択してフィールドリストを返すメソッドのいくつかは非推奨になり、同様の、選択元のテーブル群およびそれらの結合条件を返すメソッドが使用されています。
    • Block::selectFields()Block::getQueryInfo()
    • RecentChange::selectFields()RecentChange::getQueryInfo()
    • ArchivedFile::selectFields()ArchivedFile::getQueryInfo()
    • LocalFile::selectFields()LocalFile::getQueryInfo()
    • 接頭辞付きのLocalFile::getCacheFields()は使用不可
    • 接頭辞付きのLocalFile::getLazyCacheFields()は使用不可
    • OldLocalFile::selectFields()OldLocalFile::getQueryInfo()
    • RecentChange::selectFields()RecentChange::getQueryInfo()
    • Revision::userJoinCond()Revision::getQueryInfo( [ 'user' ] )
    • Revision::selectUserFields()Revision::getQueryInfo( [ 'user' ] )
    • Revision::pageJoinCond()Revision::getQueryInfo( [ 'page' ] )
    • Revision::selectPageFields()Revision::getQueryInfo( [ 'page' ] )
    • Revision::selectTextFields()Revision::getQueryInfo( [ 'text' ] )
    • Revision::selectFields()Revision::getQueryInfo()
    • Revision::selectArchiveFields()Revision::getArchiveQueryInfo()
    • User::selectFields()User::getQueryInfo()
    • WikiPage::selectFields()WikiPage::getQueryInfo()
  • Revision::setUserIdAndName()を非推奨にしました。
  • TitleValueクラスの属性へのアクセスは非推奨となったので、代わりに対応するgettersを使ってください。
  • DifferenceEngine::getDiffBodyCacheKey()が非推奨になりました。代わりにサブクラスのオーバーライドはDifferenceEngine::getDiffBodyCacheKeyParams()を使ってください。
  • スクリプト終了に使用するMaintenance::error( $err, $die )は非推奨になりました。代わりにMaintenance::fatalError()を使ってください。
  • ParserOptionsオブジェクトをOutputPage::parserOptions()にパスすることは非推奨になりました。
  • RevisionInsertCompleteフックは非推奨になりました。RevisionRecordInsertedフックを代用してください。RevisionInsertCompleteは現在も呼び出ししますが第2および第3パラメタは常にnullになります。1.32でハードな非推奨を予定しています。.
  • ParserOutput状態のゲッターでもセッターでもある以下のメソッドを非推奨にしました。呼び出しにはParserOutput::getText()に対して状態を保持しない$options属性を使用します。**ParserOptions::getEditSection()
    • ParserOptions::setEditSection()
    • ParserOutput::getEditSectionTokens()
    • ParserOutput::setEditSectionTokens()
    • ParserOutput::getTOCEnabled()
    • ParserOutput::setTOCEnabled()
    • OutputPage::enableSectionEditLinks()
    • OutputPage::sectionEditLinksEnabled()
  • *公開のParserOutput状況フィールドとして$mTOCEnabledおよび$mEditSectionTokensも非推奨になりました。
  • License::getLicensesは非推奨になりました。代わりにLicense::getLinesを使ってください。
  • QuickTemplate::setRef()は非推奨とされ、QuickTemplate::set()を使います。テンプレート変数を参照によって設定すると、一度スキンテンプレートに追加したデータの不変性の原則に違反する可能性があります。このメソッドは実際には使われていませんでした。むしろPHP 4においてsetRef()はメモリ最適化として存在していました。
  • QuickTemplate::setTranslator()およびMediaWikiI18N::set()は非推奨になりました。Skin::msg()属性を使ってください。
  • MediaWikiI18N::translate()は非推奨になりました。代わりにSkin::msg()もしくはwfMessage()を使ってください。
  • ParserOptions::setWrapOutputClass()にパスするfalseは非推奨になりました。代わりに'unwrap'変換をParserOutput::getText()に使ってください。
  • \ObjectFactory(名前空間なし)は非推奨となりました。wikimedia/object-factory名前空間に由来する名前空間付きの\Wikimedia\ObjectFactoryクラスを使ってください。
  • CommentStore::newKeyは非推奨になりました。代わりにMediaWikiServicesから例を見つけてください。
  • 以下のCommentStoreメソッドはシグネチャを変更して$key属性を導入しました。CommentStore::newKeyから取得したインスタンスにメソッドを使用することは、変更しないまま非推奨にします:
    • CommentStore::getFields
    • CommentStore::getJoin
    • CommentStore::getComment
    • CommentStore::getCommentLegacy
    • CommentStore::insert
    • CommentStore::insertWithTemplate
  • Titleにおける以下のメソッドは改名し、旧来の名称は非推奨になりました。
    • Title::getSkinFromCssJsSubpage::getSkinFromConfigSubpageを使用
    • Title::isCssOrJsPage::isSiteConfigPageを使用
    • Title::isCssJsSubpage::isUserConfigPageを使用
    • Title::isCssSubpage::isUserCssConfigPageを使用
    • Title::isJsSubpage::isUserJsConfigPageを使用
  • The following methods related to caching of half-parsed HTML were deprecated:
    • Parser::serializeHalfParsedText()
    • Parser::unserializeHalfParsedText()
    • Parser::isValidHalfParsedText()
    • StripState::getSubState()
    • StripState::merge()
  • DeferredStringifierクラスは非推奨になりました。Message::listParam()を代用してください。
  • DateFormatter::getInstanceに対する属性$langstringは非推奨です。
  • Wikimedia\Rdbms\SavepointPostgresは非推奨です。
  • DO_MAINTENANCE定数を非推奨にしました。代わりにRUN_MAINTENANCE_IF_MAINを使ってください。
  • wfShellWikiCmd()関数を非推奨としたので、代わりにMediaWiki\Shell::makeScriptCommand()を使ってください。
  • 将来的にフックとして'PreferencesFormPreSave'および'PreferencesGetLegend'はPreferencesFormに代わり、あらゆるHTMLFormのオブジェクトを提示するようになります。

1.31 におけるその他の変更

  • Internet Explorer 10 に対するブラウザサポートは、グレード A からグレード C に下げられました。
  • Opera 12 以前に対するブラウザサポートは完全に中止されました。Opera 15 以上はグレード A が続いています。
  • ストレージ層に複数コンテンツの更新機能を導入しました。<https://mediawiki.org/wiki/Requests_for_comment/Multi-Content_Revisions>を参照してください。
  • "free" CSS クラスは、ウィキテキスト中の角括弧で囲まれていない URL にのみ適用されるようになりました。角括弧を使用して書かれたリンクは、"free" ではなく "text" を得るようになります。
  • タスク T157418: ウィキテキスト見出し、ウィキテキストリスト項目、ウィキテキスト表キャプション、ウィキテキスト表見出し、ウィキテキスト表セルから空白が取り除かれます。HTML 見出し、HTML リスト項目、HTML 表キャプション、HTML 表見出し、HTML 表セルはこの除去動作を行いません。

下位ページ