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 de 3 ans. Mis à jour il y a plus de 3 ans.

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 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

Formats disponibles : Atom PDF