The text report puts a thousand lines between the two things that decide: what the copy holds that the module view does not — all a reset gives up — and which child no longer finds its anchor, which is why anything breaks. Space switches between them, « c » copies the reset command. Offered as [4] on the error prompt, next to check and reset, and run on the real terminal: a full screen started through the capturing executor falls back to the text report with nothing to tell the two apart. The diff is rendered in one place, shared with the command line. Two renderings would drift without anything saying so. --- FR --- [ADD] migration : parcourir les copies COW dérivées en plein écran Le rapport texte met mille lignes entre les deux choses qui décident : ce que la copie porte et que la vue module n'a pas — tout ce qu'une réinitialisation abandonne — et quel enfant ne trouve plus son ancrage, la raison pour laquelle quoi que ce soit casse. L'espace bascule, « c » copie la commande de réparation. Proposé en [4] à l'invite d'erreur, à côté de vérifier et réinitialiser, et lancé sur le vrai terminal : un plein écran passé par l'exécuteur qui capture retombe sur le rapport texte, sans rien qui les distingue. Le diff est rendu à un seul endroit, partagé avec la ligne de commande. Deux rendus dériveraient sans que rien ne le signale. Assisted-by: Claude Opus 5 |
||
|---|---|---|
| .. | ||
| check_cow_views.py | ||
| check_stale_scss.py | ||
| check_stale_scss_tui.py | ||
| cow_drift.py | ||
| cow_drift_tui.py | ||
| fix_migration_odoo130_to_odoo140.sql | ||
| fix_migration_odoo140_to_odoo150.py | ||
| neutralize_cow_views.py | ||
| README.base.md | ||
| README.fr.md | ||
| README.md | ||
| reset_stale_cow_tui.py | ||
| reset_stale_cow_views.py | ||
| smoke_public_url.py | ||
| snapshot_cow_views.py | ||
| uninstall_module_list_odoo140_to_odoo150.txt | ||
Migration
Run this script when doing database migration. Example :
source ./.venv.odoo15.0_python3.8.20/bin/activate && cat ./script/odoo/migration/fix_migration_odoo140_to_odoo150.py | ./odoo15.0/odoo/odoo-bin shell -d DATABASE
Check uninstall_module_list_odoo140_to_odoo150.txt
Module lists to uninstall
Before a version bump, the migration uninstalls the modules listed in
uninstall_module_list_odoo<from>_to_odoo<to>.txt. Two locations are read, the
private one first, and the results are merged (duplicates dropped):
private/odoo/migration/<database>/uninstall_module_list_odooXX0_to_odooYY0.txt— specific to ONE database, not versioned. Which modules must be dropped depends on the data, so this is where nearly every entry belongs.script/odoo/migration/uninstall_module_list_odooXX0_to_odooYY0.txt— shared defaults, versioned, valid for every database.
Syntax: one module per line, with a justification after #. Commas and several
names per line are accepted; blank lines and full-line comments are ignored.
A module without a stated reason is flagged at runtime: removing a module is a
decision someone must be able to review later.
queue_job # blocks 12->13, trigger queue_job_notify
mgmtsystem_hazard # not ported to 13.0
web_syncer # dropped upstream