Manual:Pywikibot/Compat/deprecation

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:Pywikibot/Compat/deprecation and the translation is 46% complete.
Outdated translations are marked like this.
Other languages:
Bahasa Indonesia • ‎English • ‎Türkçe • ‎español • ‎français • ‎polski • ‎čeština • ‎Ελληνικά • ‎български • ‎русский • ‎العربية • ‎中文 • ‎日本語

Pywikibot compact est périmé. Les utilisateurs de la librairie doivent se tourner vers la version core actuellement maintenue.

Contexte

Pywikibot (auparavant Pywikipédiabot) est apparu en 2002, lorsque MediaWiki n'avait pas encore d'API. Pywikibot simulait donc un utilisateur humain afin d’interagir avec le site. En 2007, une nouvelle branche du logiciel (revue entièrement) utilisant donc la nouvelle API. Au fil des années Core devient de plus en plus mature et de nombreux scripts ont étés portés sur cette nouvelle version. En 2013, core dépasse compact en nombre de modifications sur le code source. 2015 a vu l'arrêt officiel du développement et du support de la version compact de Pywikibot (voir phab:T99365 et phab:T101214). In 2002 MediaWiki didn't have an api so pywikibot used screen scraping to interact with MediaWiki. In 2007 a new branch (rewrite, now core) was started from scratch using the (then new) MediaWiki api. Over the years core got more mature and most scripts were migrated. In 2013 core surpassed compat in number of changes. In 2015 the developers of Pywikibot decided to deprecate the compat version of Pywikibot and discontinue support for compat (see phab:T99365 and phab:T101214). MediaWiki 1.27 était la dernière version supportée par la branche compact (voir phab:T150613).

Utiliser les scripts

Si vous utilisez les scripts de Pywikibot vous pouvez simplement installer la version core de la librairie. La plupart des scripts ont étés portés sur cette nouvelle version. La version core utilise un wrapper pour faire fonctionner ses scripts. Si vous en utilisez des connus, tel que redirect.py, vous pouvez facilement les utilisez avec core en les lançant avec pwb.py. Par exemple : Most scripts have been migrated. Pywikibot core uses a wrapper to run all the scripts. If you are using standard scripts (like redirect.py), you can run it in core by using pwb.py. For example:

$ python pwb.py redirect #instead of python redirect.py

Migrer les scripts

Si vous avez écrit des scripts basés sur compat, il existe une conversion dans le noyau qui vous aide à migrer. Et il existe un script qui porte automatiquement vers le noyau vos scripts rendus compatibles. And there is a script that automatically port your compat-based scripts to core.

Si vous avez des problèmes pour migrer vos scripts, vous pouvez demander de l'aide à la communauté.

Problèmes connus

pywikibot.Site().dbName() n'ajoute pas le suffixe '_p', donc en cas d'utilisation d'une librairie MySQL pour se connecter aux bases de données des Labs, vous devez ajouter un '_p' manuellement à la fin de la base. Par exemple :

mysqldb.connect("testwiki.labsdb", db = pywikibot.Site().dbName() + "_p", user = config.db_username, passwd = config.db_password)

Problèmes embêtants ?

Si vous obtenez des problèmes bloquants vous empêchant d'utiliser vos scripts avec core, merci de les reporter via un ticket sur Phabricator en le mentionnant dans cette conversation.