From 9d8db0f9b1f614ec65b5daf078c0d28a7fd1940c Mon Sep 17 00:00:00 2001 From: gsinghpal Date: Sun, 19 Apr 2026 23:34:45 -0400 Subject: [PATCH] fix(bank_rec): don't shadow Odoo's _() translation function in action_run_migration Line 77 was `_ = super().action_run_migration()`, using `_` as a throwaway variable name. That rebinds the module-level `_` (Odoo's translation function imported at the top) to whatever super() returns \u2014 in our case the parent's notification dict. Lines 84/85 then call `_('Bank-Rec Migration Complete')` which is now `some_dict('Bank-Rec Migration Complete')` \u2192 TypeError: 'dict' object is not callable. User hit this when running the migration wizard from the menu. Fix: drop the assignment; we don't actually use super()'s return value. Made-with: Cursor --- fusion_accounting_bank_rec/models/fusion_migration_wizard.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fusion_accounting_bank_rec/models/fusion_migration_wizard.py b/fusion_accounting_bank_rec/models/fusion_migration_wizard.py index 1e16c7d5..96debf7d 100644 --- a/fusion_accounting_bank_rec/models/fusion_migration_wizard.py +++ b/fusion_accounting_bank_rec/models/fusion_migration_wizard.py @@ -74,7 +74,9 @@ class FusionMigrationWizard(models.TransientModel): Phase 0) and then runs the bank-rec bootstrap. Returns a notification summarizing both. """ - _ = super().action_run_migration() + # Don't bind super()'s return value to `_` \u2014 that shadows the + # imported translation function and breaks the _("...") calls below. + super().action_run_migration() result = self._bank_rec_bootstrap_step() return { 'type': 'ir.actions.client',