Hi everyone!


This is an announcement for a change to the example configuration of the WikibaseClient extension, which only affects Client wikis which are not also Repository wikis. If you don’t operate a non-Repo Client wiki, or if you don’t use the example settings, you can ignore this message. (Wikibase-Docker users, in particular, can ignore it.) The change will become effective on the master branch soon, and then in the future 1.36 release (but not yet in the upcoming 1.35 release).


Currently, the WikibaseClient example settings (client/ExampleSettings.php or client/config/WikibaseClient.example.php) define an example Repo for the Client if the WikibaseRepository extension is not also being loaded. As we are moving towards using extension registration for Wikibase (T88258), this will no longer be possible (extensions loaded using wfLoadExtension() are processed later, so the example settings file can’t detect if WikibaseRepo is loaded or not). Therefore, we will be removing this code from the Client example settings, and if your wiki is not also a Repo wiki, you will have to configure the Repo manually. (For wikis that are both Repo and Client, the default Client settings are sufficient, and nothing needs to be done.) This means that if your configuration (LocalSettings.php) currently contains a line like

require_once "$IP/extensions/Wikibase/client/ExampleSettings.php";

or

require_once "$IP/extensions/Wikibase/client/config/WikibaseClient.example.php";

but not a line like

require_once "$IP/extensions/Wikibase/repo/Wikibase.php";

then you should copy the example settings into your configuration and adjust them as needed (at least the repoUrl, http://repo.example.org, is certainly wrong). If you already configure some of these client settings, then you can skip copying the corresponding example settings lines.


We will be making this change on the Wikibase master branch very soon, so if you use the latest MediaWiki and Wikibase from Git, then you will probably have to update your configuration ahead of the next update too. However, the change will not be in the upcoming MediaWiki 1.35 release (or the REL1_35 Wikibase branch), so if you are sticking to release versions, you don’t need to change anything yet. That said, you could still update your configuration in preparation for this future change – the only potential problem with copying this block is the repeated define(), which may raise a PHP Notice, so you might want to wrap those two lines in an if ( !defined( 'WB_REPO_NS_ITEM' ) ) block when copying them (unless you stop loading the example settings altogether, which is also an option).


I also want to stress that, while the eventual goal of this work is to load WikibaseRepo and WikibaseClient using extension registration (i. e., JSON files, not PHP entry points), we do not yet recommend that third-party installs do this. When Wikibase is fully ready for extension registration, we will send another announcement, and the PHP entry points will probably still be kept for compatibility for a good while longer even after they’re no longer required.


If you have any issue or question, feel free to leave a comment at T257449. For more information, see also T256238.


Cheers,

Lucas


--
Lucas Werkmeister (he/er)
Full Stack Developer

Wikimedia Deutschland e. V. | Tempelhofer Ufer 23-24 | 10963 Berlin
Phone: +49 (0)30 219 158 26-0
https://wikimedia.de

Imagine a world in which every single human being can freely share in the sum of all knowledge. Help us to achieve our vision!
https://spenden.wikimedia.de

Wikimedia Deutschland - Gesellschaft zur Förderung Freien Wissens e. V. Eingetragen im Vereinsregister des Amtsgerichts Berlin-Charlottenburg unter der Nummer 23855 B. Als gemeinnützig anerkannt durch das Finanzamt für Körperschaften I Berlin, Steuernummer 27/029/42207.