Open pa-de-solminihac opened 9 years ago
Quelques pistes pour solutionner le problème...
Solutions envisagées et abandonnées
l'installeur alerte bien qu'un nouvelle version est disponible, mais ne dit pas comment on y passe.
- alerter lors de la mise à jour ?
les mises à jour ne sont pas interactives, l'alerte pourrait trop facilement être ignorée. De plus en faisant ainsi on rompt le contrat des mises à jour automatiques
- modifier le module jquerydatatables pour qu'il ne prenne pas directement la valeur par défaut de son fichier
config.ini
, et qu'il prenne à la place la valeur de celui dejstools
?c'est pas propre : contre-nature, contre-intuitif...
Solutions qui restent envisageables
ça peut rapidement devenir compliqué à gérer, notamment à cause des différents cas d'erreur et du fait qu'on ne peut éventuellement pas prendre systématiquement la meilleure décision automatiquement... à étudier.
- utiliser l'adoption pour faire hériter le module
jquerydatatables
dejstools
?
[clementine_inherit]
jquerydatatable=jstools
- la surcharge concernant le module
jstools
, elle sera elle-même surchargée par la valeur par défaut dejquerydatatable
. Ça fonctionnerait seulement si on ne donne PAS de valeur par défaut dans le fichierconfig.ini
. C'est un peu moins sale que la solution 3. mais c'est pas forcément super non plus...
En fin de compte la solution qui me semble la plus adaptée est un mix de 1. et 4. :
jstools
, c'est rapide à mettre en œuvre.À noter que pour le cas de jstools
, comme on l'éclate en plusieurs modules, le script serait réutilisable pour chacun des nouveaux modules.
J'ai un module
jstools
avec notamment cette configuration par défaut :Si j'ai un module
site
qui surcharge la configuration de jstools ainsi :Lorsque je veux sortir jquery.datatable du module
jstools
pour en faire un module indépendant, je vais donc avoir un modulejquerydatatable
avec cette configuration par défaut :Le problème, c'est que cela casse la compatibilité ascendante : lors de la mise à jour, la surcharge de jstools qui est faite ne sera plus prise en compte par le module
jquerydatatables
.