Tâche #34937
Scénario #34864: EOLE 2.9 : envisager la disparition des modules python "distutils" et "imp"
Étude
Début:
01/10/2022
Echéance:
% réalisé:
100%
Restant à faire (heures):
0.0
Historique
#1 Mis à jour par Benjamin Bohard il y a plus de 3 ans
- Statut changé de Nouveau à En cours
#2 Mis à jour par Benjamin Bohard il y a plus de 3 ans
from distutils.spawn import find_executable
peut être remplacé par
import shutil shutil.which
from distutils.version import StrictVersion
peut être remplacé par
from packaging.version import Version
Le module packaging ne fait pas partie de la bibliothèque standard et il est nécessaire d’installer python3-packaging en dépendance d’un paquet EOLE.
Le module imp peut être remplacé par le module importlib.
import imp
current_plugin = imp.load_source('current_plugin', plugin_module)
peut être remplacé par
import importlib
def load_source(name, module_path):
spec = importlib.util.spec_from_file_location(name, module_path)
module = importlib.util.module_from_spec(spec)
spec.loader.exec_module(module)
return module
current_plugin = load_source('current_plugin', plugin_module)
https://peps.python.org/pep-0632/#migration-advice
https://github.com/cuthbertLab/music21/pull/1424/commits/29eddb71430534114a4695f22de791667c6cd81e
#3 Mis à jour par Benjamin Bohard il y a plus de 3 ans
Le remplacement de imp par importlib a une conséquence curieuse : l’ordre des classes de plugins n’est pas le même.
#4 Mis à jour par Benjamin Bohard il y a plus de 3 ans
- Statut changé de En cours à À valider
#5 Mis à jour par Ludwig Seys il y a plus de 3 ans
- Statut changé de À valider à Résolu
#6 Mis à jour par Joël Cuissinat il y a plus de 3 ans
- Statut changé de Résolu à Fermé
- % réalisé changé de 0 à 100
- Restant à faire (heures) mis à 0.0