Bonjour,
J’utilise une très vieille version de Dokos (bench et docli 2.1.6), pour utilisation assez minimale de l’outil depuis 5 ans. Je n’entrevois pas de passer toutes les versions jusqu’à la version 5 (j’ai trois versions d’OS de retard, c’est une galère), mais j’aurais souhaité migrer les données (configuration, facturation, articles…) sur une nouvelle VM avec un OS tout neuf. Pensez-vous que ce soit possible ? Quitte à perdre certains éléments au vol, j’ai bien conscience que je n’ai pas assuré de ne pas faire les montées de version au fur et à mesure.
Merci par avance pour vos pistes.
Bonjour Stéphane,
Idéalement, si c’est possible, je te conseille de faire la migration par étape.
Ceci étant ça va être compliqué d’installer la v3 sur une VM moderne…
Si tu pars sur une restauration sur une v5, le problème est que tu vas rencontrer un grand nombre d’erreurs lorsque les patchs de migration vont être exécutés.
Leur rôle est d’aligner les schémas de ta base de données avec le code de Dokos.
Imaginons le cas suivant: en v3 on a ajouté un champ « note » dans une table et en v5 ce champ a été renommé en « super_note ». Lors de la tentative de renommage, le patch va tomber en erreur car le champ n’existera pas dans ta base.
Il va donc falloir analyser toutes les erreurs et les corriger au cas par cas.
C’est faisable, mais fastidieux, avec le risque qu’il y ait quelques divergences dans ta base de données, qu’il faudra corriger par la suite, à l’usage.
Tiens nous au courant si tu as besoin d’aide !
Bonjour Charles-Henry,
Merci beaucoup pour ces informations et pour ton aide. Je me doutais que ça allait se terminer comme ça, passer les mises à jour les unes après les autres, et faire de l’archéologie pour trouver les versions d’OS Debian intermédiaires à upgrader en parallèle au fur et à mesure. Bien fait pour moi. Je vous tiendrai au courant de la méthode choisie et de l’évolution.
J’ai mis à jour l’OS (Debian Buster), mise à jour dokos-cli de 2.1.6 à 2.6.0 (python est en version 3.7). Bench se lance, j’accède à l’IHM. Montée de version de Debian (Bullseye), réinstall de dokos-cli 2.6.0, test de lancement de bench start, erreur :
Error while finding module specification for ‹ frappe.utils.bench_helper › (ModuleNotFoundError: No module named ‹ frappe ›)
J’ai perdu Frappe en cours de route 
Il faut que j’arrive à passer sous Debian Bookworm pour pouvoir passer sous Dokos v3 (Python 3.9.2 sous Bullseye). Toutes les idées et pistes sont les bienvenues 
Donc la suite. J’ai upgradé sous Bookworm. J’ai suivi la documentation, forcé Nodejs en version 16.x. Par contre, la version système de python est 3.11 et non 3.10 comme dans la doc.
Lorsque je lance bench migrate-env python3.11 ça plante sur la compilation de numpy :
build/temp.linux-x86_64-cpython-311/numpy/core/src/multiarray/scalarapi.o.d" failed with exit status 1
Si vous avez une piste, je prends !