Dico:Technique
sur le Dico des Ados : ton dictionnaire collaboratif, libre et gratuit !
Mise à jour MediaWiki 1.39[modifier le wikicode]
https://demo.fr.dicoado.org/dico/Dico:Accueil
Tableau des tâches[modifier le wikicode]
Intervenants Wiki Valley : Seb35 (SB)
Date | Task | duration
hours |
Worker | Status |
---|---|---|---|---|
TOTAL[modifier le wikicode] |
21 | |||
2024-03-11 | Re-résolution de problème graphique :
|
1,5 | Mathis | Done |
2024-01-16 | Résolution de problème graphique :
|
0,5 | Mathis | Done |
2023-12-22 | Résolution de divers problèmes graphiques :
Documentation des changements locaux sur le skin Foreground [1] |
0,5+1=1,5 | Mathis + Seb | Done |
2023-12-21 | Résolution de divers problèmes graphiques :
|
1x2=2 | Mathis + Seb | Done |
2023-12-20 | Étude de divers problèmes graphiques : icônes FontAwesome | 3x2=6 | Mathis + Seb | Done |
2023-12-12 | Aspects esthétiques | 2 | Mathis | Done |
Warning en bas des pages Deprecated: Use of BaseTemplate::getFooterIcons was deprecated in MediaWiki 1.35. [Called from foregroundTemplate::execute in /var/www/dicoado.demo/fr/httpdocs/w/skins/foreground/Foreground.skin.php at line 227] in /var/www/dicoado.demo/fr/httpdocs/w/includes/debug/MWDebug.php on line 381
Problème très mineur, peut être ignoré (comme tous les deprecated qui sont des avertissements que la fonctionnalité marche encore, mais que ça ne sera plus le cas lors des prochaines mises à jour majeures). (lors de la mise en prod, il faudra bien paramétrer |
||||
2023-12-08 | Icônes manquantes sur le formulaire d’édition, par exemple près de "Rechercher dans le Wiktionnaire" (ça a peut-être un lien avec le warning dans la console JS "Glyph bbox was incorrect")
La différence est que l’ancien site a FontAwesome 5.15.1 dans cette feuille de style qui définit la classe CSS "fas" (celle qui est utilisée dans le Modèle:Liens externes article) et le site de demo (avec le skin Foreground REL1_39) a FontAwesome 4.7.0 dans cette feuille de style qui ne définit pas la classe CSS "fas", juste "fa". En regardant l’historique du fichier assets/stylesheets/font-awesome.css dans https://github.com/thingles/foreground puis dans https://github.com/wikimedia/mediawiki-skins-Foreground, j’ai l’impression que la version 5.15.1 est une modification locale, est-ce bien cela ? Réponse affirmative de Vivian sur Telegram. Corrigé en copiant l’ancien fichier skins/foreground/assets/stylesheets/font-awesome.css et l’ancien répertoire skins/foreground/assets/webfonts dans l’installation 1.39. L’idéal serait de soumettre officiellement le changement à l’auteur du skin foreground. |
4,5 | SB | Corrigé localement |
2023-12-08 | https://demo.fr.dicoado.org/dico/Sp%C3%A9cial:AjouterDonn%C3%A9es/Ajouter_un_mot/wikifier
Impossible d'enregistrer les modifications faites depuis un formulaire. Un clic sur le bouton Enregistrer ne fait rien. Le bandeau en bas est un peu trop grand |
SB | Corrigé | |
2023-12-08 | En mode wikicode en cliquant sur le crayon pour passer en mode VE
|
SB | Corrigé | |
2023-12-08 | Dans la console JavaScript, il y a une erreur "variable pf non définie" qui fait planter le module "ext.pageforms.rating" | SB | Corrigé | |
2023-12-08 | Quand on modifie un mot avec le formulaire exemple https://demo.fr.dicoado.org/w/index.php?title=infundibuliforme&action=formedit
Notice: Uninitialized string offset: 35 in /var/www/dicoado.demo/fr/httpdocs/w/extensions/PageForms/includes/PF_FormPrinter.php on line 1004 Notice: Uninitialized string offset: 33 in /var/www/dicoado.demo/fr/httpdocs/w/extensions/PageForms/includes/PF_FormPrinter.php on line 1004 |
SB | Corrigé | |
2023-12-08 | Test fonctionnement extensions. (voir erreur ci dessus) | 0.5 | NN MB | |
2023-12-04- | Revue des erreurs et bugs, gestion de projet | 1 | NN SB | |
On page Dico:Accueil
Bug : $wgShowExceptionDetails = true; at the bottom of LocalSettings.php n'affiche rien :( Solution : Commentaire de $wgUseFileCache = true; # Obsolète depuis 15 ans TODO : A Remplacer par mécanisme de cache d'Apache |
0.5 | |||
Extension Variables https://www.mediawiki.org/wiki/Topic:Xstgpcsbv122qkpe
utilisée dans les modèles Article, Liens externes, Liens externes articles, Lowercase title, Traduction, Uppercase title, Wikimedia Commons. Est elle vraiment utile ? |
||||
GoogleRichCards ("A laisser si on peut") | ||||
ExtRegexFun
PHP Notice: Undefined property: Parser::$mExtRegexFun in /var/www/dicoado.demo/fr/httpdocs/w/includes/debug/DeprecationHelper.php on line 211, referer: https://demo.fr.dicoado.org/dico/Dico:Accueil |
extension useful ?
could be replaced by Extension ReplaceText. | |||
See on Special:Version
Deprecated: Use of InternalParseBeforeSanitize hook (used in VariablesHooks::onInternalParseBeforeSanitize) was deprecated in MediaWiki 1.35. [Called from MediaWiki\HookContainer\HookContainer::run in /var/www/dicoado.demo/fr/httpdocs/w/includes/HookContainer/HookContainer.php at line 137] in /var/www/dicoado.demo/fr/httpdocs/w/includes/debug/MWDebug.php on line 381 |
0 | ✔️ | ||
2023-12-05 | Special:Drilldown/Article
Solution : installer dernière version REL de 1.39 de Cargo Erreur interne [5b1396ff76f420a500bfe25e] /w/index.php?title=Sp%C3%A9cial:Drilldown/Article&limit=250&offset=0 TypeError: Argument 2 passed to Wikimedia\Rdbms\Database::assertQueryIsCurrentlyAllowed() must be of the type string, null given, called in /var/www/dicoado.demo/fr/httpdocs/w/includes/libs/rdbms/database/Database.php on line 936 Backtrace: from /var/www/dicoado.demo/fr/httpdocs/w/includes/libs/rdbms/database/Database.php(1365) #0 /var/www/dicoado.demo/fr/httpdocs/w/includes/libs/rdbms/database/Database.php(936): Wikimedia\Rdbms\Database->assertQueryIsCurrentlyAllowed() #1 /var/www/dicoado.demo/fr/httpdocs/w/includes/libs/rdbms/database/Database.php(1711): Wikimedia\Rdbms\Database->query() POUR LA SUITE VOIR COMMENTAIRE CI-DESSOUS |
0.75 | SB | ✔️ |
2023-12-05 | Error message on top of main page :
Deprecated: Use of InternalParseBeforeSanitize hook Hook |
0.25 | SB | ✔️ |
Performance[modifier le wikicode]
Ideas to improve performance:
- Activate HTTP/2 in Apache
- Install memcached and use it as main cache
- Install an HTTP cache to replace $wgUseFileCache; might be with Apache or Varnish or something else
Farm[modifier le wikicode]
This is the initial proposition for MediaWikiFarm and options to be chosen.
Files[modifier le wikicode]
Actual:
/etc /apache2 /sites-enabled /home /www-dicoado /storage /images <- - - - - - - - - images for fr.dicoado.org /var /www /dicoado /fr /httpdocs <- - - - - - - Apache DocumentRoot /w <- - - - - - - - - - contains MediaWiki 1.39.5 /LocalSettings.php /cache <- - - - - - - contains all l10n_cache-*.cdb /images → /home/www-dicoado/storage/images
Target with MediaWikiFarm:
/etc /apache2 /sites-enabled (CHANGED: add the new websites/virtual hosts) /mediawiki (NEW) /farms.yml (NEW) /CommonSettings.yml (NEW) /PrivateSettings.yml (NEW) /frSettings.yml (NEW) /deSettings.yml (NEW) /itSettings.yml (NEW) /enSettings.yml (NEW) /home /www-dicoado /storage /fr (NEW) /images (NEW) /cache (NEW) /tmp (NEW) /assets (NEW) /config (NEW) /de (NEW) /images (NEW) /cache (NEW) /tmp (NEW) /assets (NEW) /config (NEW) /it (NEW) /images (NEW) /cache (NEW) /tmp (NEW) /assets (NEW) /config (NEW) /en (NEW) /images (NEW) /cache (NEW) /tmp (NEW) /assets (NEW) /config (NEW) /rm (NEW) /images (NEW) /cache (NEW) /tmp (NEW) /assets (NEW) /config (NEW)
/opt (NEW) /mediawiki (NEW) /1.39.5 (NEW) /1.39.5-test (NEW) /var /cache (NEW) /mediawikifarm (NEW)
Config[modifier le wikicode]
2 URLs:
- (?<lang>fr|de|en|it)\.dicoado\.org
- (?<lang>fr|de|en|it)\.demo\.dicoado\.org
Multiple choices about organising the configuration files:
- Keep like currently the LocalSettings.php and add some
"if( $lang === 'fr' ) { } else if( $lang === 'de' ) { }
- PRO: the current order of the various thematics is kept (but there is no real ordering currently)
- CON: could add confusion if there are many "if/else"
- PRO: it keep the maximum expressivity (=ability to characterise very fine situations)
- We use a PHP array (or YAML): (prefered for MediaWikiFarm)
- PRO: More "orthogonal", may be easier to understand because there are no PHP, and it fully uses the hierarchical configuration (define global settings, then specific settings)
- PRO: The configuration is considered as data instead of code, which is also the trend for MediaWiki more generally (see the experimental configuration system)
- PRO: We can keep an order in the thematics
- CON: Light learning to understand the logic
- CON: Less expressivity; but if we want to keep the PHP expressivity, we can use a dedicated PHP file (there is such feature in MediaWikiFarm)
- 2 possible organisations:
- (a) InitialiseSettings.yml + PrivateSettings.yml + ExecSettings.php: all non-private parameters for all languages in the 1st, the private settings in the 2nd, the 3rd is a raw PHP file to keep PHP expressivity (option)
- (b) CommonSettings.yml + frSettings.yml + PrivateSettings.yml + ExecSettings.php: the 1st contains all commun parameters, the 2nd the parameters for the language "fr" (resp. other languages), the 3rd the private settings, the 4th is a raw PHP file to keep PHP expressivity (option)
Notes:
- all filenames (CommonSettings.yml, InitialiseSettings.yml, ExecSettings.php…) are completely arbitrary
- The Wikimedia Foundation has something like the organisation (a) but with some thematic files (partly like organisation (b)) – keep in mind it’s a huge wiki farm:
- InitialiseSettings.php: main file with a PHP array for config for all wikis
- CommonSettings.php: raw PHP file with PHP code to use PHP expressivity (like ExecSettings.php above)
- extension-specific arrays for CirrusSearch, GrowthExperiments, ORES, Wikibase
- they partly splitted between production and labs (their pre-production), and between their 2 main datacenters (eqiad in North Virginia, codfw in Texas)
- they have a PrivateSettings.php (unpublished :-)
- most of their config is available here (mirror of Phabricator)
- MediaWikiFarm is quite flexible: there may be as much config files as wished, and each config file could apply either to a single wiki either to all wikis either to some wikis defined in the config file itself (see InitialiseSettings.yml below)
- Array formats:
- PHP: maybe slightly more difficult to read than YAML, but it’s possible to use PHP syntax like constants (
CACHE_NONE
,CACHE_MEMCACHED
…) or class names (MediaWiki\Deferred\DeferredUpdates::class
- YAML: the syntax must be known (see Wikipedia), it’s not possible to use the constants and class names (only the basic types string, number, boolean, null, which is 99% of the values)
- JSON: quite equivalent to YAML, but keep in mind it’s not possible to use comments in JSON
- PHP: maybe slightly more difficult to read than YAML, but it’s possible to use PHP syntax like constants (
Organisation (a)[modifier le wikicode]
InitialiseSettings.yml with a YAML array:
# Website name
wgSitename:
fr: 'Le Dico des Ados'
de: 'Das Wörterbuch der Jugendlicher'
wgMetaNamespace:
fr: 'Dico'
de: 'Wörterbuch'
wgServer:
fr: 'https://fr.dicoado.org'
de: 'https://de.dicoado.org'
# Path settings
wgScriptPath:
default: '/w'
wgArticlePath:
default: '/dico/$1'
wgUsePathInfo:
default: false
InitialiseSettings.php with a PHP array:
<?php
return [
// Website name
'wgSitename' => [
'fr' => 'Le Dico des Ados',
'de' => 'Das Wörterbuch der Jugendlicher',
],
'wgMetaNamespace' => [
'fr' => 'Dico',
'de' => 'Wörterbuch',
],
'wgServer' => [
'fr' => 'https://fr.dicoado.org',
'de' => 'https://de.dicoado.org',
],
// Path settings
'wgScriptPath' => [
'default' => '/w',
],
'wgArticlePath' => [
'default' => '/dico/$1',
],
'wgUsePathInfo' => [
'default' => false,
],
];
Organisation (b)[modifier le wikicode]
CommonSettings.yml:
# This file contains commun settings for all wikis
# Path settings
wgScriptPath: '/w'
wgArticlePath: '/dico/$1'
wgUsePathInfo: false
frSettings.yml:
# This file is about fr.dicoado.org
# Website name
wgSitename: 'Le Dico des Ados'
wgMetaNamespace: 'Dico'
wgServer: 'https://fr.dicoado.org'
deSettings.yml:
# This file is about de.dicoado.org
# Website name
wgSitename: 'Das Wörterbuch der Jugendlicher'
wgMetaNamespace: 'Wörterbuch'
wgServer: 'https://de.dicoado.org'
To be decided[modifier le wikicode]
- Is there remarks about the files organisation? see #Files
- What is the prefered organisation of the config? see #Config
- 1. Raw PHP files like currently OR
- 2. YAML/PHP arrays like Wikimedia/MediaWikiFarm and possibly a small raw PHP file
- In case of 2, something more like organisation (a) or (b) (or a mix)
- In case of 2, what prefered format for arrays: PHP or YAML files