Introduction
Une erreur de dépendance de module Odoo survient lorsque l’installation ou la mise à jour d’un module est interrompue parce qu’un ou plusieurs modules requis sont absents, mal déclarés ou dans un état invalide.
Ce type d’erreur se manifeste le plus souvent lors de quatre opérations clés :
- l’installation d’un module
- la mise à niveau d’un module
- la migration de base de données
- le déploiement d’un module personnalisé
Quand les dépendances ne sont pas correctement configurées, Odoo bloque l’opération pour éviter des incohérences fonctionnelles dans le système.
Ce guide décrit les raisons courantes de ces erreurs et présente des solutions pratiques et durables pour les corriger.
Qu’est-ce qu’une dépendance de module dans Odoo ?
Chaque module Odoo dispose d’un fichier __manifest__.py contenant une section depends qui liste les dépendances :
{
'name': 'My Custom Module',
'depends': ['base', 'sale'],
}
Autrement dit, cette déclaration indique les attentes du module vis‑à‑vis de la plateforme.
- Le module exige que 'base' et 'sale' soient présents pour fonctionner correctement.
- Odoo installera automatiquement ces dépendances si elles sont disponibles dans les chemins d’addons configurés.
- Le module s’appuie sur les modèles et fonctionnalités fournis par ces dépendances.
Si l’une des dépendances est manquante ou incorrectement nommée, Odoo génère une erreur de dépendance empêchant l’opération.
Causes fréquentes d’erreurs de dépendances dans Odoo
1. Module requis manquant
Lorsque votre module dépend d’un composant qui n’a pas été installé, Odoo ne peut pas continuer l’installation.
Exemple courant :
'depends': ['stock']
Si le module stock n’est pas installé → l’installation échoue.
2. Nom de module incorrect dans le manifest
Une simple faute de nom empêche Odoo de retrouver la dépendance.
'depends': ['sales']
alors que le nom correct est :
'depends': ['sale']
Dans ce cas, Odoo ne localise pas le module et déclenche une erreur.
3. Dépendances circulaires
Situation typique :
- Le module A dépend du module B,
- et le module B dépend du module A.
Odoo ne peut pas déterminer dans quel ordre installer les modules.
Les dépendances circulaires provoquent l’échec d’installation.
4. Module personnalisé hors du chemin addons
Si une dépendance personnalisée n’est pas placée dans le addons_path configuré, Odoo ne la détectera pas.
5. Module installé mais mal chargé
Un module partiellement installé ou corrompu après une tentative échouée peut être considéré comme indisponible par le système.
6. Incompatibilité de version entre modules
Un module conçu pour une autre version d’Odoo peut entrer en conflit lors d’une installation ou d’une mise à jour.
Comment résoudre une erreur de dépendance de module Odoo
Étape 1 – Lire le message d’erreur
Le message d’erreur indique généralement exactement quelle dépendance fait défaut.
Exemple courant :
Par exemple : ModuleNotFoundError: No module named 'stock'
Ou bien :
Unmet dependencies: sale_management
Étape 2 – Vérifier le fichier manifest
Ouvrez __manifest__.py et contrôlez les éléments suivants :
- les noms de modules sont-ils corrects ?
- l’orthographe est‑elle exacte ?
- y a‑t‑il des erreurs de syntaxe (virgules superflues, guillemets manquants) ?
Comparez les noms avec les noms techniques officiels des modules dans Odoo.
Étape 3 – Installer les dépendances manquantes
Procédez depuis l’interface :
Applications → Recherchez le module manquant → Installer
Pour un module personnalisé, assurez‑vous qu’il est bien :
- présent dans le dossier addons approprié,
- déclaré dans la variable addons_path,
- et visible dans le menu Apps.
Étape 4 – Redémarrer le serveur Odoo
Après avoir corrigé les dépendances :
- redémarrez le serveur,
- mettez à jour la liste des applications,
- puis retentez l’installation.
Étape 5 – Éviter les dépendances circulaires
Si vous détectez une circularité :
- isolez le code partagé dans un module tiers,
- supprimez les dépendances croisées inutiles,
et établissez une hiérarchie claire entre modules.
Les modules doivent suivre des relations hiérarchiques évidentes.
Étape 6 – Vérifier la configuration du addons_path
Contrôlez le fichier de configuration Odoo :
addons_path = /chemin/vers/odoo/addons,/chemin/vers/custom/addons
Comment éviter les erreurs de dépendances entre modules
- Assurez‑vous que tous les modules requis se trouvent bien dans ces répertoires.
- Déclarez toujours explicitement les dépendances
- Conservez une architecture modulaire et lisible
- N’utilisez que les noms techniques corrects des modules
- Testez les installations dans un environnement de staging
- Documentez les relations entre modules personnalisés
Une architecture de modules bien pensée évite la majorité des échecs d’installation liés aux dépendances.
Comment Dasolo organise des dépendances propres entre modules
Les erreurs de dépendances révèlent souvent des architectures peu claires ou des liens invisibles entre composants personnalisés. À mesure qu’un parc Odoo s’étoffe, l’absence de gouvernance sur les dépendances transforme rapidement des ajouts mineurs en problèmes d’installation récurrents.
Chez Dasolo, nous réduisons les conflits de dépendances en appliquant des principes simples mais stricts :
- déclarations de dépendances explicites,
- limitation nette des responsabilités par module,
- couplage inter‑modules minimal,
- élimination des références circulaires,
- et documentation structurée des composants personnalisés.
Ce cadre garantit des installations prévisibles et facilite la maintenance à long terme des projets Odoo.
Conclusion
En résumé, l’« erreur de dépendance de module » survient quand des modules requis sont absents, mal déclarés ou incompatibles. Le message d’erreur pointe le symptôme, mais la racine est souvent une architecture de modules mal maîtrisée.
Un contrôle rigoureux des manifests, une hiérarchie de modules propre et la validation des dépendances avant déploiement permettent d’éviter la plupart des conflits. Une discipline d’architecture est indispensable pour maintenir des environnements Odoo stables et évolutifs.