Install MediaWiki/Modifications pour la 1.42.1

Article publié le :  28 septembre 2024 06:48:21


Install MediaWiki/Modifications pour la 1.42.1
Nom mediawiki
Version 1.42.1



Information Information: 

MediaWiki n'est pas encore compatible avec mysql version 8.x



  Install_MediaWiki


Installation

  • sauvegarde du fichier  LocalSettings.php
  • décompression de la version sur un nouveau répertoire, puis recopie sur le répertoire d'installation de MediaWiki


J'ai récupéré le targz mediawiki-1.42.1
puis je l'ai dézippé à l'aide d'un script php  upgrade.php
//supression anciens répertoires
system("rm -rf ../MediaWiki/bin ../MediaWiki/cache ../MediaWiki/docs ../MediaWiki/includes ../MediaWiki/langages");
system("rm -rf  ../MediaWiki/maintenance ../MediaWiki/mw-config ../MediaWiki/resources ../MediaWiki/serialized ../MediaWiki/tests");
//dézipper
system("tar -C  ../MediaWiki --strip-components 1 -zxf ../tmp/mediawiki-1.42.1.tar.gz ");


  • lancement de l'installation
http://www.jltryoen.fr/MediaWiki/mw-config/


=> mise à jour de la base de données
  • reprise/vérification du fichier  LocalSettings.php
 



Incompatibilités d'API

Function Modification
$dbw = wfGetDB( DB_PRIMARY ); $dbw = MediaWikiServices::getInstance()->getDBLoadBalancer()

->getConnection( DB_REPLICA );

$title->getRestrictions('edit'); $services = MediaWikiServices::getInstance();

$restrictionStore = $services->getRestrictionStore(); if (! $restrictionStore->getRestrictions( $title, 'read' ))

PArser->mTitle Parser->getTitle()


L'extension Tabber n'est plus maintenue , je l'ai remplacée par TabberNeue

Semantic MediaWiki

  • désactiver Semantic, pour cela modifier le fichier  LocalSettings.php
##enableSemantics('www.jltryoen.fr/wiki/');
#require_once( "$IP/extensions/SemanticForms/SemanticForms.php");
#require_once( "$IP/extensions/SemanticExtraSpecialProperties/SemanticExtraSpecialProperties.php");
#require_once( "$IP/extensions/SemanticFormsInputs/SemanticFormsInputs.php");


Il est nécessaire de rétablir après l'installation le fichier  composer.json pour récupérer
  MediaWiki/Semantic_MediaWiki

et de rétablir Semantic dans le fichier  LocalSettings.php
J'ai utilisé composer-merge-plugin qui permet d'utiliser un fichier séparé pour les extensions :  composer.local.json

{
        "require": {
                "mediawiki/semantic-media-wiki": "~4.1.3",
                "mediawiki/semantic-result-formats": "~4.0.x-dev",
                "mediawiki/semantic-extra-special-properties": "~3.0",
                "professional-wiki/modern-timeline": "1.2.0",
                "simplehtmldom/simplehtmldom": "~2.0-RC2",
                "twbs/bootstrap": "5.1.3",
                "components/jquery": "3.6.0",
                "components/font-awesome": "5.15.4"
        }
}


Une fois SemanticMediaWiki rétabli dans les fichiers (ajouter désormais les lignes dans le fichier  LocalSettings.php)

wfLoadExtension( 'SemanticMediaWiki' );
enableSemantics( $semanticURL, true );


lancer un update avec composer
composer update --no-dev


j'ai eu besoin pour SemanticMediaWiki de mettre à jour la base de données (répertoire  extensions/SemanticMediawiki/maintenance 
php setupstore.php


L'extension n'est pas compatible en l'état (version 4.1.3) avec la version 1.42.1 de MediaWiki,
un correctif a été fait sur la branche de dev:
in your composer.local.json file, set

"mediawiki/semantic-media-wiki": "dev-master"


Information Information: 

La version de SemantiMediaWiki 4.1.3 est maintenant compatible avec php 8.x'
Je suis passé en php 8.3.3 sur l'hébergement OVH.