Dotclear

Ticket #1842 (closed enhancement: fixed)

Opened 10 years ago

Last modified 4 years ago

Gestion des dépendances entre plugins / thèmes

Reported by: bruno Owned by: bruno
Priority: normal Milestone:
Component: module:core Version: dev
Severity: normal Keywords:
Cc:

Description

(Mazette, je le croyais créé, ce ticket).

Donc : implémenter un système de gestion de dépendances entre plugins, et entre un thème et un ou des plugins.

  • ajouter une propriété "depends" dans le _define.php des modules, comprenant un tableau de valeurs : chaque clé est le nom du module requis, la valeur est soit vide (on teste uniquement que le module requis est présent), soit un numéro de version minimale, soit un tableau (version minimale, version maximale) du module requis
  • voir si une propriété "conflicts" serait bénéfique (je pense notamment à menu freshy / menu qui se marchent dessus)
  • vois si une propriété "recommends" serait bénéfique (ie. un thème qui recommande un plugin particulier, sans pour antant qu'il soit indispensable)

Concernant la vérification des dépendances :

  • on la fait à la page d'accueil, ainsi qu'à la page des plugins
  • si les dépendances d'un module/thème ne sont pas valides, on désactive le plugin (voir ce qu'on fait dans le cas d'un thème)
  • dans le gestionnaire de plugins, on ne peut activer un plugin que si ses dépendances sont valides, sinon on affiche les prérequis pour pouvoir l'activer
  • Si on installe un plugin dont les dépendances ne sont pas là (module requis non installé ou non activé), ce dernier est installé, mais désactivé immédiatement
  • On empêche de désactiver un plugin si un autre en dépend (ou alors on désactive aussi tous les modules qui en dépendent). Idem pour la suppression

Change History

comment:1 Changed 9 years ago by bruno

  • Milestone changed from A definir to 2.8

comment:2 Changed 9 years ago by franck

  • Owner changed from team to bruno

comment:3 Changed 9 years ago by Dsls

(In [aa297059d2a0]) Disable plugins with unmetdependencies, in admin home and plugins.php admin page. See #1842, fixed partially (need to see how to cope with themes now)

comment:4 Changed 9 years ago by franck

  • Milestone changed from 2.8 to 2.9

comment:5 Changed 8 years ago by franck

  • Milestone changed from 2.9 to 2.10

comment:6 Changed 8 years ago by franck

  • Milestone changed from 2.10 to 2.11

comment:7 Changed 7 years ago by franck

  • Milestone changed from 2.11 to 2.12

comment:8 Changed 7 years ago by franck

  • Milestone changed from 2.12 to A definir

comment:9 Changed 7 years ago by franck

  • Milestone A definir deleted

comment:10 Changed 4 years ago by franck

  • Status changed from new to closed
  • Resolution set to fixed

Ouvert en face pour la partie thème :  https://git.dotclear.org/dev/dotclear/issues/43

Note: See TracTickets for help on using tickets.

Sites map