Projet

Général

Profil

Tâche #34937

Scénario #34864: EOLE 2.9 : envisager la disparition des modules python "distutils" et "imp"

Étude

Ajouté par Benjamin Bohard il y a plus d'un an. Mis à jour il y a plus d'un an.

Statut:
Fermé
Priorité:
Normal
Assigné à:
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 d'un an

  • Statut changé de Nouveau à En cours

#2 Mis à jour par Benjamin Bohard il y a plus d'un an

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 d'un an

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 d'un an

  • Statut changé de En cours à À valider

#5 Mis à jour par Ludwig Seys il y a plus d'un an

  • Statut changé de À valider à Résolu

#6 Mis à jour par Joël Cuissinat il y a plus d'un an

  • Statut changé de Résolu à Fermé
  • % réalisé changé de 0 à 100
  • Restant à faire (heures) mis à 0.0

Formats disponibles : Atom PDF