From 0159f91bad411f881a959e52dbb4e465cdefbd64 Mon Sep 17 00:00:00 2001 From: Don Kendall Date: Wed, 23 Sep 2026 18:47:21 -0400 Subject: [PATCH] [20.0][OU-FIX] load the noupdate record changes the analysis generated The analysis generated a noupdate_changes.xml for each of these and nothing loaded any of them. A module update skips noupdate records by definition, so those record changes only reach an existing database through an explicit openupgrade.load_data call -- the upgrade ran green while delivering none of them. 30 of the files reload a translatable field. That writes the source term and nothing else, so the stale per-language translations keep the 19.0 wording and Odoo serves those to every non-English user: the reload lands for English and is silently undone for everyone else. Each of those load_data calls is paired with delete_record_translations naming only the fields that record actually reloads, derived from the 20.0 registry rather than guessed. One change with one reason, which is the exception the playbook allows to one module per PR. website_sale, hr_attendance, fleet and maintenance were in an earlier revision of this branch and are not here: both have since grown a substantive script, so each carries its load_data call in its own PR rather than in this mechanical batch. Assisted-by: Claude Opus 5 --- docsource/modules190-200.rst | 114 +- .../20.0.1.0/noupdate_changes.xml | 93 ++ .../20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 13 + .../analytic/20.0.1.2/noupdate_changes.xml | 6 + .../analytic/20.0.1.2/post-migration.py | 9 + .../analytic/20.0.1.2/upgrade_analysis.txt | 27 + .../auth_signup/20.0.1.0/noupdate_changes.xml | 74 + .../auth_signup/20.0.1.0/post-migration.py | 20 + .../auth_signup/20.0.1.0/upgrade_analysis.txt | 8 + .../20.0.1.0/upgrade_analysis_work.txt | 10 + .../20.0.1.0/noupdate_changes.xml | 34 + .../auth_totp_mail/20.0.1.0/post-migration.py | 15 + .../20.0.1.0/upgrade_analysis.txt | 5 + .../20.0.1.0/upgrade_analysis_work.txt | 6 + .../calendar/20.0.1.1/noupdate_changes.xml | 562 +++++++ .../calendar/20.0.1.1/post-migration.py | 32 + .../calendar/20.0.1.1/upgrade_analysis.txt | 115 ++ .../crm_iap_mine/20.0.1.2/pre-migration.py | 22 + .../20.0.1.2/upgrade_analysis.txt | 151 ++ .../delivery/20.0.1.0/noupdate_changes.xml | 13 + .../delivery/20.0.1.0/post-migration.py | 9 + .../delivery/20.0.1.0/upgrade_analysis.txt | 46 + .../20.0.1.0/upgrade_analysis_work.txt | 58 + .../digest/20.0.1.1/noupdate_changes.xml | 480 ++++++ .../scripts/digest/20.0.1.1/post-migration.py | 9 + .../digest/20.0.1.1/upgrade_analysis.txt | 22 + .../digest/20.0.1.1/upgrade_analysis_work.txt | 31 + .../event/20.0.1.9/noupdate_changes.xml | 9 + .../scripts/event/20.0.1.9/post-migration.py | 9 + .../event/20.0.1.9/upgrade_analysis.txt | 110 ++ .../event_sms/20.0.1.0/noupdate_changes.xml | 7 + .../event_sms/20.0.1.0/post-migration.py | 15 + .../event_sms/20.0.1.0/upgrade_analysis.txt | 9 + .../20.0.1.0/upgrade_analysis_work.txt | 12 + .../20.0.1.0/noupdate_changes.xml | 49 + .../gamification/20.0.1.0/post-migration.py | 15 + .../20.0.1.0/upgrade_analysis.txt | 82 + .../20.0.1.0/upgrade_analysis_work.txt | 90 ++ .../hr_expense/20.0.2.1/noupdate_changes.xml | 91 ++ .../hr_expense/20.0.2.1/post-migration.py | 9 + .../hr_expense/20.0.2.1/upgrade_analysis.txt | 96 ++ .../20.0.1.0/noupdate_changes.xml | 6 + .../20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 21 + .../20.0.1.0/upgrade_analysis_work.txt | 24 + .../20.0.1.1/noupdate_changes.xml | 192 +++ .../hr_recruitment/20.0.1.1/post-migration.py | 32 + .../20.0.1.1/upgrade_analysis.txt | 172 +++ .../20.0.1.0/noupdate_changes.xml | 6 + .../20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 49 + .../20.0.1.0/upgrade_analysis_work.txt | 56 + .../20.0.1.0/noupdate_changes.xml | 24 + .../hr_timesheet/20.0.1.0/post-migration.py | 19 + .../20.0.1.0/upgrade_analysis.txt | 72 + .../20.0.1.0/noupdate_changes.xml | 396 +++++ .../hr_work_entry/20.0.1.0/post-migration.py | 64 + .../hr_work_entry/20.0.1.0/pre-migration.py | 29 + .../20.0.1.0/upgrade_analysis.txt | 774 ++++++++++ .../im_livechat/20.0.1.0/noupdate_changes.xml | 75 + .../im_livechat/20.0.1.0/post-migration.py | 9 + .../im_livechat/20.0.1.0/upgrade_analysis.txt | 114 ++ .../l10n_ar/20.0.3.7/noupdate_changes.xml | 10 + .../l10n_ar/20.0.3.7/post-migration.py | 9 + .../l10n_ar/20.0.3.7/upgrade_analysis.txt | 1321 +++++++++++++++++ .../l10n_pe_pos/20.0.1.0/noupdate_changes.xml | 7 + .../l10n_pe_pos/20.0.1.0/post-migration.py | 9 + .../l10n_pe_pos/20.0.1.0/upgrade_analysis.txt | 5 + .../20.0.1.0/upgrade_analysis_work.txt | 7 + .../l10n_pk/20.0.1.1/noupdate_changes.xml | 6 + .../l10n_pk/20.0.1.1/post-migration.py | 15 + .../l10n_pk/20.0.1.1/upgrade_analysis.txt | 224 +++ .../20.0.1.1/upgrade_analysis_work.txt | 227 +++ .../scripts/l10n_th/20.0.2.0/pre-migration.py | 40 + .../l10n_th/20.0.2.0/upgrade_analysis.txt | 79 + .../mail/20.0.1.19/noupdate_changes.xml | 49 + .../scripts/mail/20.0.1.19/post-migration.py | 15 + .../scripts/mail/20.0.1.19/pre-migration.py | 45 + .../mail/20.0.1.19/upgrade_analysis.txt | 471 ++++++ .../mail_group/20.0.1.1/noupdate_changes.xml | 6 + .../mail_group/20.0.1.1/post-migration.py | 9 + .../mail_group/20.0.1.1/upgrade_analysis.txt | 38 + .../20.0.1.1/upgrade_analysis_work.txt | 42 + .../20.0.2.0/noupdate_changes.xml | 367 +++++ .../payment_adyen/20.0.2.0/post-migration.py | 9 + .../20.0.2.0/upgrade_analysis.txt | 77 + .../20.0.2.0/upgrade_analysis_work.txt | 80 + .../payment_aps/20.0.1.0/noupdate_changes.xml | 38 + .../payment_aps/20.0.1.0/post-migration.py | 9 + .../payment_aps/20.0.1.0/upgrade_analysis.txt | 14 + .../20.0.1.0/upgrade_analysis_work.txt | 21 + .../20.0.1.0/noupdate_changes.xml | 183 +++ .../20.0.1.0/post-migration.py | 25 + .../20.0.1.0/upgrade_analysis.txt | 46 + .../20.0.1.0/upgrade_analysis_work.txt | 69 + .../20.0.2.0/noupdate_changes.xml | 79 + .../20.0.2.0/post-migration.py | 15 + .../20.0.2.0/upgrade_analysis.txt | 36 + .../20.0.2.0/upgrade_analysis_work.txt | 54 + .../20.0.2.0/noupdate_changes.xml | 24 + .../payment_custom/20.0.2.0/post-migration.py | 21 + .../20.0.2.0/upgrade_analysis.txt | 12 + .../noupdate_changes-transformation.xml | 13 + .../20.0.2.0/noupdate_changes.xml | 14 + .../payment_demo/20.0.2.0/post-migration.py | 20 + .../20.0.2.0/upgrade_analysis.txt | 7 + .../20.0.2.0/upgrade_analysis_work.txt | 11 + .../20.0.1.0/noupdate_changes.xml | 44 + .../20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 17 + .../20.0.1.0/upgrade_analysis_work.txt | 28 + .../20.0.1.0/noupdate_changes.xml | 77 + .../20.0.1.0/post-migration.py | 15 + .../20.0.1.0/upgrade_analysis.txt | 29 + .../20.0.1.0/upgrade_analysis_work.txt | 42 + .../20.0.1.0/noupdate_changes.xml | 7 + .../payment_mollie/20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 33 + .../20.0.1.0/upgrade_analysis_work.txt | 37 + .../20.0.1.0/noupdate_changes.xml | 65 + .../payment_nuvei/20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 27 + .../20.0.1.0/upgrade_analysis_work.txt | 40 + .../20.0.2.0/noupdate_changes.xml | 22 + .../payment_paypal/20.0.2.0/post-migration.py | 9 + .../20.0.2.0/upgrade_analysis.txt | 29 + .../20.0.2.0/upgrade_analysis_work.txt | 36 + .../20.0.1.0/noupdate_changes.xml | 22 + .../20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 19 + .../20.0.1.0/upgrade_analysis_work.txt | 27 + .../20.0.2.0/noupdate_changes.xml | 24 + .../payment_stripe/20.0.2.0/post-migration.py | 9 + .../20.0.2.0/upgrade_analysis.txt | 52 + .../20.0.2.0/upgrade_analysis_work.txt | 63 + .../20.0.1.0/noupdate_changes.xml | 38 + .../20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 40 + .../20.0.1.0/upgrade_analysis_work.txt | 50 + .../20.0.1.0/noupdate_changes.xml | 169 +++ .../payment_xendit/20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 52 + .../20.0.1.0/upgrade_analysis_work.txt | 77 + .../portal/20.0.1.0/noupdate_changes.xml | 18 + .../scripts/portal/20.0.1.0/post-migration.py | 9 + .../portal/20.0.1.0/upgrade_analysis.txt | 51 + .../20.0.1.0/noupdate_changes.xml | 6 + .../pos_restaurant/20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 54 + .../20.0.1.0/noupdate_changes.xml | 57 + .../pos_self_order/20.0.1.0/post-migration.py | 15 + .../20.0.1.0/upgrade_analysis.txt | 36 + .../project/20.0.1.4/noupdate_changes.xml | 29 + .../project/20.0.1.4/post-migration.py | 9 + .../project/20.0.1.4/upgrade_analysis.txt | 306 ++++ .../20.0.1.0/noupdate_changes.xml | 193 +++ .../project_todo/20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 24 + .../20.0.1.0/upgrade_analysis_work.txt | 29 + .../sale_gelato/20.0.1.0/noupdate_changes.xml | 6 + .../sale_gelato/20.0.1.0/post-migration.py | 9 + .../sale_gelato/20.0.1.0/upgrade_analysis.txt | 10 + .../20.0.1.0/upgrade_analysis_work.txt | 15 + .../20.0.1.0/noupdate_changes.xml | 15 + .../sale_timesheet/20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 33 + .../stock_sms/20.0.1.0/noupdate_changes.xml | 8 + .../stock_sms/20.0.1.0/post-migration.py | 15 + .../stock_sms/20.0.1.0/upgrade_analysis.txt | 10 + .../20.0.1.0/upgrade_analysis_work.txt | 12 + .../scripts/uom/20.0.1.0/noupdate_changes.xml | 6 + .../scripts/uom/20.0.1.0/post-migration.py | 15 + .../scripts/uom/20.0.1.0/upgrade_analysis.txt | 45 + .../uom/20.0.1.0/upgrade_analysis_work.txt | 56 + .../scripts/utm/20.0.1.2/noupdate_changes.xml | 6 + .../scripts/utm/20.0.1.2/post-migration.py | 9 + .../scripts/utm/20.0.1.2/upgrade_analysis.txt | 55 + .../website/20.0.1.0/noupdate_changes.xml | 17 + .../website/20.0.1.0/post-migration.py | 9 + .../website/20.0.1.0/upgrade_analysis.txt | 456 ++++++ .../20.0.1.1/noupdate_changes.xml | 14 + .../website_blog/20.0.1.1/post-migration.py | 9 + .../20.0.1.1/upgrade_analysis.txt | 97 ++ .../20.0.1.3/noupdate_changes.xml | 262 ++++ .../20.0.1.3/post-migration.py | 15 + .../20.0.1.3/upgrade_analysis.txt | 65 + .../20.0.1.2/noupdate_changes.xml | 118 ++ .../website_forum/20.0.1.2/post-migration.py | 9 + .../20.0.1.2/upgrade_analysis.txt | 218 +++ .../20.0.1.0/noupdate_changes.xml | 6 + .../20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 9 + .../20.0.1.0/upgrade_analysis_work.txt | 13 + .../20.0.1.0/noupdate_changes.xml | 19 + .../20.0.1.0/post-migration.py | 15 + .../20.0.1.0/upgrade_analysis.txt | 8 + .../20.0.1.0/upgrade_analysis_work.txt | 11 + .../20.0.1.0/noupdate_changes.xml | 18 + .../20.0.1.0/post-migration.py | 15 + .../20.0.1.0/upgrade_analysis.txt | 8 + .../20.0.1.0/upgrade_analysis_work.txt | 12 + .../20.0.1.0/noupdate_changes.xml | 6 + .../20.0.1.0/post-migration.py | 9 + .../20.0.1.0/upgrade_analysis.txt | 23 + .../20.0.1.0/upgrade_analysis_work.txt | 29 + 206 files changed, 12509 insertions(+), 57 deletions(-) create mode 100644 openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/analytic/20.0.1.2/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/analytic/20.0.1.2/post-migration.py create mode 100644 openupgrade_scripts/scripts/analytic/20.0.1.2/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/auth_signup/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/auth_signup/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/auth_signup/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/auth_signup/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/calendar/20.0.1.1/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/calendar/20.0.1.1/post-migration.py create mode 100644 openupgrade_scripts/scripts/calendar/20.0.1.1/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/crm_iap_mine/20.0.1.2/pre-migration.py create mode 100644 openupgrade_scripts/scripts/crm_iap_mine/20.0.1.2/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/delivery/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/delivery/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/delivery/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/delivery/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/digest/20.0.1.1/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/digest/20.0.1.1/post-migration.py create mode 100644 openupgrade_scripts/scripts/digest/20.0.1.1/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/digest/20.0.1.1/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/event/20.0.1.9/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/event/20.0.1.9/post-migration.py create mode 100644 openupgrade_scripts/scripts/event/20.0.1.9/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/event_sms/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/event_sms/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/event_sms/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/event_sms/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/gamification/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/gamification/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/gamification/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/gamification/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/hr_expense/20.0.2.1/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/hr_expense/20.0.2.1/post-migration.py create mode 100644 openupgrade_scripts/scripts/hr_expense/20.0.2.1/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/hr_gamification/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/hr_gamification/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/hr_gamification/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/hr_gamification/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/post-migration.py create mode 100644 openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/pre-migration.py create mode 100644 openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/im_livechat/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/im_livechat/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/im_livechat/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/l10n_ar/20.0.3.7/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/l10n_ar/20.0.3.7/post-migration.py create mode 100644 openupgrade_scripts/scripts/l10n_ar/20.0.3.7/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/l10n_pk/20.0.1.1/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/l10n_pk/20.0.1.1/post-migration.py create mode 100644 openupgrade_scripts/scripts/l10n_pk/20.0.1.1/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/l10n_pk/20.0.1.1/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/l10n_th/20.0.2.0/pre-migration.py create mode 100644 openupgrade_scripts/scripts/l10n_th/20.0.2.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/mail/20.0.1.19/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/mail/20.0.1.19/post-migration.py create mode 100644 openupgrade_scripts/scripts/mail/20.0.1.19/pre-migration.py create mode 100644 openupgrade_scripts/scripts/mail/20.0.1.19/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/mail_group/20.0.1.1/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/mail_group/20.0.1.1/post-migration.py create mode 100644 openupgrade_scripts/scripts/mail_group/20.0.1.1/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/mail_group/20.0.1.1/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_adyen/20.0.2.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_adyen/20.0.2.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_adyen/20.0.2.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_adyen/20.0.2.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_aps/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_aps/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_aps/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_aps/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_custom/20.0.2.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_custom/20.0.2.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_custom/20.0.2.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_demo/20.0.2.0/noupdate_changes-transformation.xml create mode 100644 openupgrade_scripts/scripts/payment_demo/20.0.2.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_demo/20.0.2.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_demo/20.0.2.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_demo/20.0.2.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_mollie/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_mollie/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_mollie/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_mollie/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_paypal/20.0.2.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_paypal/20.0.2.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_paypal/20.0.2.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_paypal/20.0.2.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_stripe/20.0.2.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_stripe/20.0.2.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_stripe/20.0.2.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_stripe/20.0.2.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_worldline/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_worldline/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_worldline/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_worldline/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/payment_xendit/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/payment_xendit/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/payment_xendit/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/payment_xendit/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/portal/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/portal/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/portal/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/pos_self_order/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/pos_self_order/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/pos_self_order/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/project/20.0.1.4/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/project/20.0.1.4/post-migration.py create mode 100644 openupgrade_scripts/scripts/project/20.0.1.4/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/project_todo/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/project_todo/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/project_todo/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/project_todo/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/sale_gelato/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/sale_gelato/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/sale_gelato/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/sale_gelato/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/stock_sms/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/stock_sms/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/stock_sms/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/stock_sms/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/uom/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/uom/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/uom/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/uom/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/utm/20.0.1.2/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/utm/20.0.1.2/post-migration.py create mode 100644 openupgrade_scripts/scripts/utm/20.0.1.2/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/website/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/website/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website_blog/20.0.1.1/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/website_blog/20.0.1.1/post-migration.py create mode 100644 openupgrade_scripts/scripts/website_blog/20.0.1.1/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website_event_track/20.0.1.3/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/website_event_track/20.0.1.3/post-migration.py create mode 100644 openupgrade_scripts/scripts/website_event_track/20.0.1.3/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website_forum/20.0.1.2/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/website_forum/20.0.1.2/post-migration.py create mode 100644 openupgrade_scripts/scripts/website_forum/20.0.1.2/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website_livechat/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/website_livechat/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/website_livechat/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website_livechat/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/website_profile/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/website_profile/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/website_profile/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website_profile/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/upgrade_analysis_work.txt create mode 100644 openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/noupdate_changes.xml create mode 100644 openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/post-migration.py create mode 100644 openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/upgrade_analysis.txt create mode 100644 openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/upgrade_analysis_work.txt diff --git a/docsource/modules190-200.rst b/docsource/modules190-200.rst index 8da46d62bbc..ad5882a0682 100644 --- a/docsource/modules190-200.rst +++ b/docsource/modules190-200.rst @@ -18,7 +18,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | account_edi_proxy_client | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| account_edi_ubl_cii | | | +| account_edi_ubl_cii |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | account_fleet | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -40,7 +40,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | account_update_tax_tags | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| analytic | | | +| analytic |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | api_doc | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -60,11 +60,11 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | auth_password_policy_signup | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| auth_signup | | | +| auth_signup |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | auth_totp | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| auth_totp_mail | | | +| auth_totp_mail |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | auth_totp_portal | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -100,7 +100,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | bus | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| calendar | | | +| calendar |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | calendar_sms | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -120,7 +120,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | crm_iap_enrich | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| crm_iap_mine | | | +| crm_iap_mine |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | crm_livechat | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -132,15 +132,15 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | data_recycle | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| delivery | | | +| delivery |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| delivery_mondialrelay | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| delivery_stock_picking_batch | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| digest | | | +| digest |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| event | | | +| event |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | event_booth | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -154,13 +154,13 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | event_sale | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| event_sms | | | +| event_sms |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | fleet | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |new| fleet_maintenance | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| gamification | | | +| gamification |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | gamification_sale_crm | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -182,11 +182,11 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | |new| hr_calendar_google | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| hr_expense | | | +| hr_expense |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | hr_fleet | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| hr_gamification | | | +| hr_gamification |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | hr_holidays | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -208,13 +208,13 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | hr_presence | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| hr_recruitment | | | +| hr_recruitment |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | hr_recruitment_skills | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | hr_recruitment_sms | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| hr_recruitment_survey | | | +| hr_recruitment_survey |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | hr_skills | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -224,11 +224,11 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | hr_skills_survey | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| hr_timesheet | | | +| hr_timesheet |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | hr_timesheet_attendance | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| hr_work_entry | | | +| hr_work_entry |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| hr_work_entry_holidays | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -244,7 +244,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | iap_mail | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| im_livechat | | | +| im_livechat |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| iot_base | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -260,7 +260,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | l10n_anz_ubl_pint | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| l10n_ar | | | +| l10n_ar |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | l10n_ar_pos | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -576,11 +576,11 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | l10n_pe | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| l10n_pe_pos | | | +| l10n_pe_pos |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | l10n_ph | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| l10n_pk | | | +| l10n_pk |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | l10n_pl | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -638,7 +638,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | l10n_tg | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| l10n_th | | | +| l10n_th |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | l10n_tn | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -698,13 +698,13 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | lunch | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| mail | | | +| mail |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | mail_bot | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | mail_bot_hr | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| mail_group | | | +| mail_group |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | mail_plugin | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -778,43 +778,43 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | payment | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_adyen | | | +| payment_adyen |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_aps | | | +| payment_aps |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_asiapay | | | +| payment_asiapay |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | payment_authorize | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_buckaroo | | | +| payment_buckaroo |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_custom | | | +| payment_custom |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_demo | | | +| payment_demo |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_flutterwave | | | +| payment_flutterwave |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_mercado_pago | | | +| payment_mercado_pago |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_mollie | | | +| payment_mollie |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_nuvei | | | +| payment_nuvei |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_paypal | | | +| payment_paypal |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_razorpay | | | +| payment_razorpay |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_stripe | | | +| payment_stripe |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_worldline | | | +| payment_worldline |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| payment_xendit | | | +| payment_xendit |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | phone_validation | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | point_of_sale | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| portal | | | +| portal |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |new| portal_discuss | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -854,7 +854,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | pos_repair | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| pos_restaurant | | | +| pos_restaurant |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| pos_restaurant_adyen | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -872,7 +872,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | |new| pos_sale_stock | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| pos_self_order | | | +| pos_self_order |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| pos_self_order_adyen | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -908,7 +908,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | product_matrix | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| project | | | +| project |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | project_account | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -942,7 +942,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | project_timesheet_holidays | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| project_todo | | | +| project_todo |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | purchase | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -982,7 +982,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | sale_expense_margin | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| sale_gelato | | | +| sale_gelato |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | sale_gelato_stock | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1026,7 +1026,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | sale_stock_product_expiry | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| sale_timesheet | | | +| sale_timesheet |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | sale_timesheet_margin | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1088,7 +1088,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| stock_picking_batch | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| stock_sms | | | +| stock_sms |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | survey | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1098,9 +1098,9 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| transifex | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| uom | | | +| uom |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| utm | | | +| utm |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | web | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1110,11 +1110,11 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | web_unsplash | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| website | | | +| website |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |new| website_address_autocomplete | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| website_blog | | | +| website_blog |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_cf_turnstile | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1146,7 +1146,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_event_sale | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| website_event_track | | | +| website_event_track |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_event_track_live | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1154,7 +1154,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_event_track_quiz | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| website_forum | | | +| website_forum |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_google_map | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1162,7 +1162,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_links | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| website_livechat | | | +| website_livechat |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_mail | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1180,7 +1180,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_payment | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| website_profile | | | +| website_profile |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_project | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1188,7 +1188,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| website_sale_autocomplete | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| website_sale_collect | | | +| website_sale_collect |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | |del| website_sale_collect_wishlist | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ @@ -1220,7 +1220,7 @@ Module coverage 19.0 -> 20.0 +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_slides_forum | | | +---------------------------------------------------+----------------------+-------------------------------------------------+ -| website_slides_survey | | | +| website_slides_survey |Done | | +---------------------------------------------------+----------------------+-------------------------------------------------+ | website_sms | |No DB layout changes. | +---------------------------------------------------+----------------------+-------------------------------------------------+ diff --git a/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..6bc583a3b88 --- /dev/null +++ b/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,93 @@ + + + + CMT + + + FTQ + + + INQ + + + MTQ + + + DAY + + + DZN + + + OZA + + + FOT + + + GLL + + + GRM + + + HUR + + + INH + + + KGM + + + KMT + + + KWH + + + LBR + + + LTR + + + MTR + + + SMI + + + MLT + + + MMT + + + MIN + + + ONZ + + + P6 + + + QTL + + + FTK + + + MTK + + + TNE + + + C62 + + + YRD + + diff --git a/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..f03d3ffa05c --- /dev/null +++ b/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "account_edi_ubl_cii", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..8695969be7d --- /dev/null +++ b/openupgrade_scripts/scripts/account_edi_ubl_cii/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,13 @@ +---Models in module 'account_edi_ubl_cii'--- +---Fields in module 'account_edi_ubl_cii'--- +account_edi_ubl_cii / account.move / has_grouped_lines (boolean) : NEW +account_edi_ubl_cii / account.tax / ubl_cii_tax_exemption_reason (char): NEW +account_edi_ubl_cii / res.partner / peppol_eas (selection) : DEL selection_keys: ['0002', '0007', '0009', '0037', '0060', '0088', '0096', '0097', '0106', '0130', '0135', '0142', '0151', '0183', '0184', '0188', '0190', '0191', '0192', '0193', '0195', '0196', '0198', '0199', '0200', '0201', '0202', '0204', '0208', '0209', '0210', '0211', '0213', '0216', '0218', '0221', '0225', '0230', '0235', '0240', '0244', '0245', '0246', '9910', '9913', '9914', '9915', '9918', '9919', '9920', '9922', '9923', '9924', '9925', '9926', '9927', '9928', '9929', '9930', '9931', '9932', '9933', '9934', '9935', '9936', '9937', '9938', '9939', '9940', '9941', '9942', '9943', '9944', '9945', '9946', '9947', '9948', '9949', '9950', '9951', '9952', '9953', '9955', '9957', '9959', 'AN', 'AQ', 'AS', 'AU', 'EM'] +account_edi_ubl_cii / res.partner / peppol_endpoint (char) : DEL +account_edi_ubl_cii / res.partner / routing_endpoint (char) : NEW hasdefault: compute +account_edi_ubl_cii / res.partner / routing_scheme (selection) : NEW selection_keys: ['0002', '0007', '0009', '0037', '0060', '0088', '0096', '0097', '0106', '0130', '0135', '0142', '0151', '0183', '0184', '0188', '0190', '0191', '0192', '0193', '0195', '0196', '0198', '0199', '0200', '0201', '0202', '0204', '0208', '0209', '0210', '0211', '0213', '0216', '0218', '0221', '0225', '0230', '0235', '0240', '0244', '0245', '0246', '9910', '9913', '9914', '9915', '9918', '9919', '9920', '9922', '9923', '9924', '9925', '9926', '9927', '9928', '9929', '9930', '9931', '9932', '9933', '9934', '9935', '9936', '9937', '9938', '9939', '9940', '9941', '9942', '9943', '9944', '9945', '9946', '9947', '9948', '9949', '9950', '9951', '9952', '9953', '9955', '9957', '9959', 'AN', 'AQ', 'AS', 'AU', 'EM'], hasdefault: compute +account_edi_ubl_cii / uom.uom / unece_code (char) : NEW +---XML records in module 'account_edi_ubl_cii'--- +ir.config_parameter: account_edi_ubl_cii.disable_pdf_in_xml (noupdate switched) +NEW ir.model.constraint: account_edi_ubl_cii.constraint_uom_uom_unece_code_unique +NEW ir.ui.view: account_edi_ubl_cii.uom_uom_view_form_inherit diff --git a/openupgrade_scripts/scripts/analytic/20.0.1.2/noupdate_changes.xml b/openupgrade_scripts/scripts/analytic/20.0.1.2/noupdate_changes.xml new file mode 100644 index 00000000000..6e1465e5c4a --- /dev/null +++ b/openupgrade_scripts/scripts/analytic/20.0.1.2/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + Project Plan + + diff --git a/openupgrade_scripts/scripts/analytic/20.0.1.2/post-migration.py b/openupgrade_scripts/scripts/analytic/20.0.1.2/post-migration.py new file mode 100644 index 00000000000..ce381d3b1ff --- /dev/null +++ b/openupgrade_scripts/scripts/analytic/20.0.1.2/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "analytic", "20.0.1.2/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/analytic/20.0.1.2/upgrade_analysis.txt b/openupgrade_scripts/scripts/analytic/20.0.1.2/upgrade_analysis.txt new file mode 100644 index 00000000000..56daf3b0460 --- /dev/null +++ b/openupgrade_scripts/scripts/analytic/20.0.1.2/upgrade_analysis.txt @@ -0,0 +1,27 @@ +---Models in module 'analytic'--- +---Fields in module 'analytic'--- +analytic / account.analytic.distribution.model / analytic_distribution (json) : now required +analytic / account.analytic.line / x_plan1_id (many2one) : NEW relation: account.analytic.account +---XML records in module 'analytic'--- +account.analytic.plan: analytic.analytic_plan_projects (noupdate switched) +decimal.precision: analytic.decimal_percentage_analytic (noupdate switched) +NEW ir.access: analytic.access_account_analytic_account +NEW ir.access: analytic.access_account_analytic_applicability +NEW ir.access: analytic.access_account_analytic_distribution_model +NEW ir.access: analytic.access_account_analytic_plan +NEW ir.access: analytic.analytic_applicability_comp_rule +NEW ir.access: analytic.analytic_comp_rule +NEW ir.access: analytic.analytic_distribution_model_comp_rule +NEW ir.access: analytic.analytic_line_analytic +NEW ir.access: analytic.analytic_line_comp_rule +ir.actions.act_window: analytic.account_analytic_line_action (deleted domain) +ir.actions.act_window: analytic.account_analytic_plan_action (deleted domain) +DEL ir.model.access: analytic.access_account_analytic_account +DEL ir.model.access: analytic.access_account_analytic_applicability +DEL ir.model.access: analytic.access_account_analytic_distribution_model +DEL ir.model.access: analytic.access_account_analytic_line +DEL ir.model.access: analytic.access_account_analytic_plan +DEL ir.rule: analytic.analytic_applicability_comp_rule (noupdate) +DEL ir.rule: analytic.analytic_comp_rule (noupdate) +DEL ir.rule: analytic.analytic_distribution_model_comp_rule (noupdate) +DEL ir.rule: analytic.analytic_line_comp_rule (noupdate) diff --git a/openupgrade_scripts/scripts/auth_signup/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/auth_signup/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..54929c00a47 --- /dev/null +++ b/openupgrade_scripts/scripts/auth_signup/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,74 @@ + + + + + +Dear Mitchell Admin,

+You added the following user(s) to your database but they haven't registered yet: +
  • demo@example.com
+Follow up with them so they can access your database and start working with you. +

+Have a nice day!
+--
The YourCompany Team +
+
+ + + mail.mail_notification_layout +
+ + + + Dear Marc Demo,

+ Your account has been successfully created!
+ Your login is mark.brown23@example.com
+ To gain access to your account, you can use the following link: + + Thanks,
+
--
Mitchell Admin
+
+
+ + + mail.mail_notification_layout +
+ + + + Dear Marc Demo,

+ Welcome to YourCompany's Portal!

+ An account has been created for you with the following login: demo

+ Click on the button below to pick a password and activate your account. + + Welcome to our company's portal. +
+
+ + + mail.mail_notification_layout +
+ + + +Hi Marc Demo,

+This link is valid for link_validity_days days
+ uses Odoo +to run its business. You have been invited by OdooBot to connect. +

+Once accepted, you can reconnect through:
+ +
+ +
+Enjoy Odoo!

+--
The Team +
+ + + mail.mail_notification_layout +
+
diff --git a/openupgrade_scripts/scripts/auth_signup/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/auth_signup/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..a809e817eb5 --- /dev/null +++ b/openupgrade_scripts/scripts/auth_signup/20.0.1.0/post-migration.py @@ -0,0 +1,20 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "auth_signup", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "auth_signup", + [ + "mail_template_data_unregistered_users", + "mail_template_user_signup_account_created", + "portal_set_password_email", + "set_password_email", + ], + ["body_html"], + ) diff --git a/openupgrade_scripts/scripts/auth_signup/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/auth_signup/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..a4ac0e107df --- /dev/null +++ b/openupgrade_scripts/scripts/auth_signup/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,8 @@ +---Models in module 'auth_signup'--- +---Fields in module 'auth_signup'--- +auth_signup / res.users / state (selection) : selection_keys added: [inactive] (most likely nothing to do) +---XML records in module 'auth_signup'--- +mail.template: auth_signup.mail_template_data_unregistered_users (noupdate switched) +mail.template: auth_signup.mail_template_user_signup_account_created (noupdate switched) +mail.template: auth_signup.portal_set_password_email (noupdate switched) +mail.template: auth_signup.set_password_email (noupdate switched) diff --git a/openupgrade_scripts/scripts/auth_signup/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/auth_signup/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..f1378e9c633 --- /dev/null +++ b/openupgrade_scripts/scripts/auth_signup/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,10 @@ +---Models in module 'auth_signup'--- +---Fields in module 'auth_signup'--- +auth_signup / res.users / state (selection) : selection_keys added: [inactive] (most likely nothing to do) +# NOTHING TO DO: keys were added, the existing values stay valid +---XML records in module 'auth_signup'--- +mail.template: auth_signup.mail_template_data_unregistered_users (noupdate switched) +mail.template: auth_signup.mail_template_user_signup_account_created (noupdate switched) +mail.template: auth_signup.portal_set_password_email (noupdate switched) +mail.template: auth_signup.set_password_email (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..7f78027468e --- /dev/null +++ b/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,34 @@ + + + + mail.mail_notification_light + + + +
+Dear

+

Someone is trying to log in into your account with a new device.

+
    N/A
  • Location:
  • Device:
  • Browser:
  • IP address:
+

If this is you, please enter the following code to complete the login:

+ + + +

Expires in .

+ +

+ If you did NOT initiate this log-in, + you should immediately change your password to ensure account security. +

+ +

+ We also strongly recommend enabling the two-factor authentication using an authenticator app to help secure your account. +

+ +

+ Activate my two-factor authentication +

+
+
+ mail.mail_notification_light +
+
diff --git a/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..caa51ece62f --- /dev/null +++ b/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "auth_totp_mail", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "auth_totp_mail", + ["mail_template_totp_mail_code"], + ["body_html"], + ) diff --git a/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..cbc145d59f3 --- /dev/null +++ b/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,5 @@ +---Models in module 'auth_totp_mail'--- +---Fields in module 'auth_totp_mail'--- +---XML records in module 'auth_totp_mail'--- +mail.template: auth_totp_mail.mail_template_totp_invite (noupdate switched) +mail.template: auth_totp_mail.mail_template_totp_mail_code (noupdate switched) diff --git a/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..de750b8b6de --- /dev/null +++ b/openupgrade_scripts/scripts/auth_totp_mail/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,6 @@ +---Models in module 'auth_totp_mail'--- +---Fields in module 'auth_totp_mail'--- +---XML records in module 'auth_totp_mail'--- +mail.template: auth_totp_mail.mail_template_totp_invite (noupdate switched) +mail.template: auth_totp_mail.mail_template_totp_mail_code (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/calendar/20.0.1.1/noupdate_changes.xml b/openupgrade_scripts/scripts/calendar/20.0.1.1/noupdate_changes.xml new file mode 100644 index 00000000000..bc94ffadcf9 --- /dev/null +++ b/openupgrade_scripts/scripts/calendar/20.0.1.1/noupdate_changes.xml @@ -0,0 +1,562 @@ + + + + +
+ + + +

+ Event canceled + +

+

+ Hello,
+ + This is to inform you that the event Follow-up for Project proposal organized by Colleen Diaz has been canceled and removed from your calendar. + +

+
+

Details

+ + + + + + + + + + + + + +
Date & Time + Tuesday + 4 + May 2021 + + 11:00 AM + + + (Europe/Brussels) + + + +
Duration + 0H30 +
Location + Bruxelles +
+
+

+ If you have any questions or concerns, please feel free to contact us.
+ Best regards, + The Calendar Team +

+
+
+ Calendar: Event Canceled + Canceled event: {{ object.name }} + mail.mail_notification_light +
+ + +
+ + + + + + +

+ Date Updated + +

+

+ Hello Ready Mat, + + Your appointment with Jesse Brown has been updated: + + Your appointment has been updated: + Schedule a Demo is now scheduled for + 05/04/2021 at (11:00:00 To 11:30:00) (Europe/Brussels). + + + Your appointment Schedule a Demo with Colleen Diaz + is now scheduled for 05/04/2021 at (11:00:00 To 11:30:00) (Europe/Brussels). + + + The date of the meeting Follow-up for Project proposal created by Colleen Diaz is now scheduled for + 05/04/2021 at (11:00:00 To 11:30:00) (Europe/Brussels). + +

+
+ + View +
+
+

Details

+ + + + + + + + + + + + + + + + + + + + + +
Date & Time + Tuesday + 4 + May 2021 + + 11:00 AM + + + (Europe/Brussels) + + + +
When + Every 1 Weeks, for 3 events +
Duration + 0H30 +
Location + Bruxelles + View Map +
+ Join with + Join + + + Odoo Discuss + Video meeting + +
+
+
+ +

Attendees

+
+ + + Mitchell Admin + + + You + +
+
+ ... and 2 more +
+
+
+

Description of the event

+ Internal meeting for discussion for new pricing for product and services. +
+
+ Add to calendar + + + + + + +
+ + iCal + + + + Outlook + + + + Google + +
+

+ Thank you! + Mitchell Admin +

+
+
+ mail.mail_notification_light +
+ + +
+ + + + +

+ Invitation +

+

+ Hello Wood Corner, + + + You have been invited by Customer to the Follow-up for Project proposal meeting. + + Colleen Diaz invited you for the Follow-up for Project proposal meeting. + + + + Your meeting Follow-up for Project proposal has been booked. + +

+
+ + View +
+
+

Details

+ + + + + + + + + + + + + + + + + + + + + +
Date & Time + Tuesday + 4 + May 2021 + + 11:00 AM + + + (Europe/Brussels) + + + +
When + Every 1 Weeks, for 3 events +
Duration + 0H30 +
Location + Bruxelles + View Map +
+ Join with + Join + + + Odoo Discuss + Video meeting + +
+
+
+ +

Attendees

+
+ + + Mitchell Admin + + + You + +
+
+ ... and 2 more +
+
+
+

Description of the event

+ Internal meeting for discussion for new pricing for product and services. +
+
+ Add to calendar + + + + + + +
+ + iCal + + + + Outlook + + + + Google + +
+

+ Thank you! + Mitchell Admin +

+
+
+ mail.mail_notification_light +
+ + +
+ + +

+ Reminder + +

+

+ Hello Gemini Furniture,
+ This is a reminder for the event below. +

+
+ + View +
+
+

Details

+ + + + + + + + + + + + + + + + + + + + + +
Date & Time + Tuesday + 4 + May 2021 + + 11:00 AM + + + (Europe/Brussels) + + + +
When + Every 1 Weeks, for 3 events +
Duration + 0H30 +
Location + Bruxelles + View Map +
+ Join with + Join + + + Odoo Discuss + Video meeting + +
+
+
+ +

Attendees

+
+ + + Mitchell Admin + + + You + +
+
+ ... and 2 more +
+
+
+

Description of the event

+ Internal meeting for discussion for new pricing for product and services. +
+
+ Add to calendar + + + + + + +
+ + iCal + + + + Outlook + + + + Google + +
+

+ Thank you! + Mitchell Admin +

+
+
+ mail.mail_notification_light +
+ + +
+ + + +

+ Event updated + +

+

Hello, + This meeting has been updated. +

+
+

Details

+ + + + + + + + + + + + + + + + + + + + + +
Date & Time + Tuesday + 4 + May 2021 + + 11:00 AM + + + (Europe/Brussels) + + + +
When + Every 1 Weeks, for 3 events +
Duration + 0H30 +
Location + Bruxelles + View Map +
+ Join with + Join + + + Odoo Discuss + Video meeting + +
+
+
+ +

Attendees

+
+ + + Mitchell Admin + + + You + +
+
+ ... and 2 more +
+
+
+

Description of the event

+ Internal meeting for discussion for new pricing for product and services. +
+
+ Add to calendar + + + + + + +
+ + iCal + + + + Outlook + + + + Google + +
+

+ Thank you! + Mitchell Admin +

+
+
+ mail.mail_notification_light +
+ + Invitation Status + +
diff --git a/openupgrade_scripts/scripts/calendar/20.0.1.1/post-migration.py b/openupgrade_scripts/scripts/calendar/20.0.1.1/post-migration.py new file mode 100644 index 00000000000..b8c6fa2c991 --- /dev/null +++ b/openupgrade_scripts/scripts/calendar/20.0.1.1/post-migration.py @@ -0,0 +1,32 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "calendar", "20.0.1.1/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "calendar", + [ + "calendar_template_meeting_changedate", + "calendar_template_meeting_invitation", + "calendar_template_meeting_reminder", + "calendar_template_meeting_update", + ], + ["body_html"], + ) + openupgrade.delete_record_translations( + env.cr, + "calendar", + ["calendar_template_delete_event"], + ["body_html", "name", "subject"], + ) + openupgrade.delete_record_translations( + env.cr, + "calendar", + ["subtype_invitation"], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/calendar/20.0.1.1/upgrade_analysis.txt b/openupgrade_scripts/scripts/calendar/20.0.1.1/upgrade_analysis.txt new file mode 100644 index 00000000000..828502726d0 --- /dev/null +++ b/openupgrade_scripts/scripts/calendar/20.0.1.1/upgrade_analysis.txt @@ -0,0 +1,115 @@ +---Models in module 'calendar'--- +obsolete model calendar.popover.delete.wizard [transient] +obsolete model calendar.provider.config [transient] +new model calendar.calendar +new model calendar.event.archive.or.unlink.wizard [transient] +new model calendar.event.multi.archive.or.unlink.wizard [transient] +new model calendar.user +---Fields in module 'calendar'--- +calendar / calendar.calendar / calendar_default_privacy (selection): NEW required, selection_keys: ['confidential', 'members_only', 'private', 'public'], hasdefault: default +calendar / calendar.calendar / calendar_user_ids (one2many) : NEW relation: calendar.user, hasdefault: default +calendar / calendar.calendar / event_ids (one2many) : NEW relation: calendar.event +calendar / calendar.calendar / name (char) : NEW +calendar / calendar.calendar / recurrence_ids (one2many) : NEW relation: calendar.recurrence +calendar / calendar.event / calendar_id (many2one) : NEW relation: calendar.calendar, hasdefault: compute +calendar / calendar.event / effective_privacy (selection) : selection_keys added: [members_only] (most likely nothing to do) +calendar / calendar.event / is_draft (boolean) : NEW +calendar / calendar.event / meeting_activity_ids (one2many): NEW relation: mail.activity +calendar / calendar.event / privacy (selection) : selection_keys added: [members_only] (most likely nothing to do) +calendar / calendar.filters / partner_checked (boolean) : DEL +calendar / calendar.user / access_role (selection) : NEW required, selection_keys: ['owner', 'writer'] +calendar / calendar.user / calendar_id (many2one) : NEW relation: calendar.calendar, required +calendar / calendar.user / filter_color (integer) : NEW hasdefault: default +calendar / calendar.user / is_filter_active (boolean) : NEW hasdefault: default +calendar / calendar.user / is_filter_checked (boolean) : NEW hasdefault: default +calendar / calendar.user / is_primary (boolean) : NEW +calendar / calendar.user / name (char) : NEW +calendar / calendar.user / user_id (many2one) : NEW relation: res.users, required +calendar / res.users / activity_calendar_event_id (many2one): not related anymore +calendar / res.users / activity_calendar_event_id (many2one): now a function +calendar / res.users / calendar_ids (one2many) : NEW relation: calendar.calendar, hasdefault: compute, stored: False +calendar / res.users / calendar_user_ids (one2many) : NEW relation: calendar.user +calendar / res.users / primary_calendar_id (many2one): NEW relation: calendar.calendar, isfunction: function, stored +calendar / res.users.settings / calendar_default_privacy (selection): DEL required, selection_keys: ['confidential', 'private', 'public'] +calendar / res.users.settings / calendar_show_activities (boolean): NEW hasdefault: default +---XML records in module 'calendar'--- +calendar.alarm: calendar.alarm_mail_1 (noupdate switched) +NEW calendar.alarm: calendar.alarm_mail_1_day +calendar.alarm: calendar.alarm_mail_2 (noupdate switched) +calendar.alarm: calendar.alarm_notif_1 (noupdate switched) +calendar.alarm: calendar.alarm_notif_2 (noupdate switched) +calendar.alarm: calendar.alarm_notif_3 (noupdate switched) +calendar.alarm: calendar.alarm_notif_4 (noupdate switched) +calendar.alarm: calendar.alarm_notif_5 (noupdate switched) +NEW ir.access: calendar.access_calendar_alarm +NEW ir.access: calendar.access_calendar_alarm_manager +NEW ir.access: calendar.access_calendar_attendee_employee +NEW ir.access: calendar.access_calendar_attendee_employee_archive_or_unlink_wizard +NEW ir.access: calendar.access_calendar_attendee_employee_multi_archive_or_unlink_wizard +NEW ir.access: calendar.access_calendar_event_type_all +NEW ir.access: calendar.access_calendar_event_type_manager +NEW ir.access: calendar.access_calendar_filters_all +NEW ir.access: calendar.access_calendar_recurrence +NEW ir.access: calendar.calendar_calendar_rule_system +NEW ir.access: calendar.calendar_calendar_rule_users_create_and_read +NEW ir.access: calendar.calendar_calendar_rule_users_update +NEW ir.access: calendar.calendar_event_rule_employee +NEW ir.access: calendar.calendar_event_rule_my +NEW ir.access: calendar.calendar_event_rule_private +NEW ir.access: calendar.calendar_user_rule_create +NEW ir.access: calendar.calendar_user_rule_own_or_owner +NEW ir.access: calendar.calendar_user_rule_read +NEW ir.actions.act_window: calendar.action_calendar_calendar +DEL ir.actions.act_window: calendar.action_event_delete_wizard +ir.config_parameter: calendar.default_privacy (noupdate switched) +ir.cron: calendar.ir_cron_scheduler_alarm (noupdate switched) +DEL ir.model.access: calendar.access_calendar_alarm +DEL ir.model.access: calendar.access_calendar_alarm_manager +DEL ir.model.access: calendar.access_calendar_attendee_employee +DEL ir.model.access: calendar.access_calendar_attendee_employee_delete_wizard +DEL ir.model.access: calendar.access_calendar_attendee_portal +DEL ir.model.access: calendar.access_calendar_event_all_employee +DEL ir.model.access: calendar.access_calendar_event_all_user +DEL ir.model.access: calendar.access_calendar_event_partner_manager +DEL ir.model.access: calendar.access_calendar_event_type_all +DEL ir.model.access: calendar.access_calendar_event_type_manager +DEL ir.model.access: calendar.access_calendar_filters +DEL ir.model.access: calendar.access_calendar_filters_all +DEL ir.model.access: calendar.access_calendar_provider_config_all +DEL ir.model.access: calendar.access_calendar_provider_config_manager +DEL ir.model.access: calendar.access_calendar_recurrence +NEW ir.model.constraint: calendar.constraint_calendar_event_access_token_unique +NEW ir.model.constraint: calendar.constraint_calendar_event_check_no_recurrent_draft +ir.model.constraint: calendar.constraint_calendar_event_type_name_uniq (changed definition: is now 'False' ('unique (name)')) +ir.model.constraint: calendar.constraint_calendar_filters_user_id_partner_id_unique (changed definition: is now 'False' ('UNIQUE(user_id, partner_id)')) +ir.model.constraint: calendar.constraint_calendar_recurrence_month_day (changed definition: is now 'False' ('CHECK ( rrule_type != 'monthly' OR month_by != 'day' OR day >= 1 AND day <= 31 OR weekday IN ('MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN') AND byday IN ('1', '2', '3', '4', '-1'))')) +NEW ir.model.constraint: calendar.constraint_calendar_user_single_primary_calendar_per_user +NEW ir.model.constraint: calendar.constraint_calendar_user_unique_user_per_calendar +DEL ir.rule: calendar.calendar_attendee_rule_my (noupdate) +DEL ir.rule: calendar.calendar_event_rule_employee (noupdate) +DEL ir.rule: calendar.calendar_event_rule_my (noupdate) +DEL ir.rule: calendar.calendar_event_rule_private (noupdate) +NEW ir.ui.menu: calendar.calendar_submenu_event_type +NEW ir.ui.menu: calendar.menu_calendar_calendars +NEW ir.ui.view: calendar.calendar_alarm_view_kanban +NEW ir.ui.view: calendar.calendar_alarm_view_search +NEW ir.ui.view: calendar.calendar_calendar_view_form +NEW ir.ui.view: calendar.calendar_calendar_view_list +NEW ir.ui.view: calendar.calendar_event_archive_or_unlink_wizard_view_form +NEW ir.ui.view: calendar.calendar_event_multi_archive_or_unlink_wizard_view_form +NEW ir.ui.view: calendar.calendar_user_view_form +NEW ir.ui.view: calendar.message_meeting_activity_done +NEW ir.ui.view: calendar.res_partner_view_form_simplified +NEW ir.ui.view: calendar.res_users_form_view_calendars +DEL ir.ui.view: calendar.calendar_popover_delete_view +DEL ir.ui.view: calendar.calendar_provider_config_view_form +DEL ir.ui.view: calendar.res_users_form_view_calendar_default_privacy +DEL ir.ui.view: calendar.view_event_delete_wizard_form +mail.activity.type: mail.mail_activity_data_meeting (noupdate switched) +NEW mail.message.subtype: calendar.mt_calendar_event_updated +mail.message.subtype: calendar.subtype_invitation (noupdate switched) +mail.template: calendar.calendar_template_delete_event (noupdate switched) +mail.template: calendar.calendar_template_meeting_changedate (noupdate switched) +mail.template: calendar.calendar_template_meeting_invitation (noupdate switched) +mail.template: calendar.calendar_template_meeting_reminder (noupdate switched) +mail.template: calendar.calendar_template_meeting_update (noupdate switched) diff --git a/openupgrade_scripts/scripts/crm_iap_mine/20.0.1.2/pre-migration.py b/openupgrade_scripts/scripts/crm_iap_mine/20.0.1.2/pre-migration.py new file mode 100644 index 00000000000..428c4d38500 --- /dev/null +++ b/openupgrade_scripts/scripts/crm_iap_mine/20.0.1.2/pre-migration.py @@ -0,0 +1,22 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + +# 20.0 replaces the industry list wholesale -- 23 entries become 83 and the +# external ids are renumbered. Matching the two csv files by name, "Real +# Estate" is the only one carried over, and it is the only one that collides: +# crm_iap_lead_industry_name_uniq rejects the new row while the old one is +# still there under its old id. The other 22 are left to the usual removal of +# data records a module no longer declares. +_renamed_xmlids = [ + ( + "crm_iap_mine.crm_iap_mine_industry_114", + "crm_iap_mine.crm_iap_mine_industry_65", + ), +] + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.rename_xmlids(env.cr, _renamed_xmlids) diff --git a/openupgrade_scripts/scripts/crm_iap_mine/20.0.1.2/upgrade_analysis.txt b/openupgrade_scripts/scripts/crm_iap_mine/20.0.1.2/upgrade_analysis.txt new file mode 100644 index 00000000000..ec4d89133ff --- /dev/null +++ b/openupgrade_scripts/scripts/crm_iap_mine/20.0.1.2/upgrade_analysis.txt @@ -0,0 +1,151 @@ +---Models in module 'crm_iap_mine'--- +new model crm.iap.lead.industry.division +---Fields in module 'crm_iap_mine'--- +crm_iap_mine / crm.iap.lead.industry / _order : _order is now 'sequence,division_id,name' ('sequence,id') +crm_iap_mine / crm.iap.lead.industry / division_id (many2one) : NEW relation: crm.iap.lead.industry.division, required +crm_iap_mine / crm.iap.lead.industry / reveal_ids (char) : DEL required +crm_iap_mine / crm.iap.lead.industry / sic_group (integer) : NEW required +crm_iap_mine / crm.iap.lead.industry.division / code (char) : NEW required +crm_iap_mine / crm.iap.lead.industry.division / name (char) : NEW required, translate +crm_iap_mine / crm.iap.lead.industry.division / sequence (integer) : NEW +crm_iap_mine / crm.iap.lead.mining.request / contact_filter_type (selection): DEL selection_keys: ['role', 'seniority'] +crm_iap_mine / crm.iap.lead.mining.request / contact_number (integer) : DEL +crm_iap_mine / crm.iap.lead.mining.request / preferred_role_id (many2one) : DEL relation: crm.iap.lead.role +crm_iap_mine / crm.iap.lead.mining.request / role_ids (many2many) : DEL relation: crm.iap.lead.role +crm_iap_mine / crm.iap.lead.mining.request / search_type (selection) : DEL required, selection_keys: ['companies', 'people'] +crm_iap_mine / crm.iap.lead.mining.request / seniority_id (many2one) : DEL relation: crm.iap.lead.seniority +---XML records in module 'crm_iap_mine'--- +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_01 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_02 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_07 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_08 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_09 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_10 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_12 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_13 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_14 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_15 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_16 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_17 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_20 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_21 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_22 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_23 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_24 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_25 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_26 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_27 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_28 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_29 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_30 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_31 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_32 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_34 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_35 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_36 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_37 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_38 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_39 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_40 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_41 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_42 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_43 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_44 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_45 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_46 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_47 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_48 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_49 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_50 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_51 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_52 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_53 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_54 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_55 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_56 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_57 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_58 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_59 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_60 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_61 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_62 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_63 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_64 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_65 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_67 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_70 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_72 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_73 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_75 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_76 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_78 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_79 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_80 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_81 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_82 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_83 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_84 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_87 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_88 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_89 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_91 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_92 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_93 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_94 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_95 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_96 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_97 +NEW crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_99 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_114 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_136 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_138_156 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_148 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_149 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_150_151 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_152 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_153_154 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_158_159 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_160 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_161 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_162 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_163 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_165 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_166 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_167 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_168 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_238 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_239 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_30_155 +DEL crm.iap.lead.industry: crm_iap_mine.crm_iap_mine_industry_69_157 +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_a +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_b +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_c +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_d +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_e +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_f +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_g +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_h +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_i +NEW crm.iap.lead.industry.division: crm_iap_mine.crm_iap_mine_division_j +NEW ir.access: crm_iap_mine.access_crm_iap_lead_industry +NEW ir.access: crm_iap_mine.access_crm_iap_lead_industry_division +NEW ir.access: crm_iap_mine.access_crm_iap_lead_mining_request +NEW ir.access: crm_iap_mine.access_crm_iap_lead_role +NEW ir.access: crm_iap_mine.access_crm_iap_lead_seniority +DEL ir.model.access: crm_iap_mine.access_crm_iap_lead_helpers +DEL ir.model.access: crm_iap_mine.access_crm_iap_lead_industry +DEL ir.model.access: crm_iap_mine.access_crm_iap_lead_mining_request +DEL ir.model.access: crm_iap_mine.access_crm_iap_lead_role +DEL ir.model.access: crm_iap_mine.access_crm_iap_lead_seniority +NEW ir.model.constraint: crm_iap_mine.constraint_crm_iap_lead_industry_division_name_uniq +ir.model.constraint: crm_iap_mine.constraint_crm_iap_lead_industry_name_uniq (changed definition: is now 'False' ('unique (name)')) +ir.model.constraint: crm_iap_mine.constraint_crm_iap_lead_role_name_uniq (changed definition: is now 'False' ('unique (name)')) +ir.model.constraint: crm_iap_mine.constraint_crm_iap_lead_seniority_name_uniq (changed definition: is now 'False' ('unique (name)')) +ir.sequence: crm_iap_mine.ir_sequence_crm_iap_mine (noupdate switched) +NEW ir.ui.view: crm_iap_mine.crm_iap_lead_industry_view_search +NEW ir.ui.view: crm_iap_mine.crm_iap_lead_industry_view_tree +DEL ir.ui.view: crm_iap_mine.crm_case_kanban_view_leads +DEL ir.ui.view: crm_iap_mine.crm_lead_view_tree_lead +DEL ir.ui.view: crm_iap_mine.crm_lead_view_tree_opportunity +DEL ir.ui.view: crm_iap_mine.view_crm_lead_kanban +mail.template: crm_iap_mine.lead_generation_no_credits (noupdate switched) diff --git a/openupgrade_scripts/scripts/delivery/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/delivery/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..eb7fcd438cd --- /dev/null +++ b/openupgrade_scripts/scripts/delivery/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,13 @@ + + + + + + + + + + True + 30 + + diff --git a/openupgrade_scripts/scripts/delivery/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/delivery/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..db9457422b7 --- /dev/null +++ b/openupgrade_scripts/scripts/delivery/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "delivery", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/delivery/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/delivery/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..2ac854479e2 --- /dev/null +++ b/openupgrade_scripts/scripts/delivery/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,46 @@ +---Models in module 'delivery'--- +new model delivery.note.wizard [transient] +new model delivery.note.wizard.line [transient] +---Fields in module 'delivery'--- +delivery / payment.provider / custom_mode (False) : selection_keys added: [pay_on_invoice] (most likely nothing to do) +delivery / res.partner / is_pickup_location (boolean) : DEL +delivery / sale.order / pickup_location_data (json) : DEL +---XML records in module 'delivery'--- +delivery.carrier: delivery.free_delivery_carrier (noupdate switched) +NEW ir.access: delivery.access_choose_delivery_carrier +NEW ir.access: delivery.access_delivery_carrier +NEW ir.access: delivery.access_delivery_carrier_manager +NEW ir.access: delivery.access_delivery_carrier_partner_manager +NEW ir.access: delivery.access_delivery_note_line_user +NEW ir.access: delivery.access_delivery_note_user +NEW ir.access: delivery.access_delivery_price_rule +NEW ir.access: delivery.access_delivery_price_rule_manager +NEW ir.access: delivery.access_delivery_zip_prefix +NEW ir.access: delivery.access_delivery_zip_prefix_sale_manager +NEW ir.access: delivery.delivery_carrier_comp_rule +NEW ir.actions.report: delivery.action_report_delivery_note +DEL ir.model.access: delivery.access_choose_delivery_carrier +DEL ir.model.access: delivery.access_delivery_carrier +DEL ir.model.access: delivery.access_delivery_carrier_manager +DEL ir.model.access: delivery.access_delivery_carrier_partner_manager +DEL ir.model.access: delivery.access_delivery_carrier_system +DEL ir.model.access: delivery.access_delivery_price_rule +DEL ir.model.access: delivery.access_delivery_price_rule_manager +DEL ir.model.access: delivery.access_delivery_price_rule_sale_manager +DEL ir.model.access: delivery.access_delivery_zip_prefix +DEL ir.model.access: delivery.access_delivery_zip_prefix_sale_manager +ir.model.constraint: delivery.constraint_delivery_carrier_margin_not_under_100_percent (changed definition: is now 'False' ('CHECK (margin >= -1)')) +ir.model.constraint: delivery.constraint_delivery_carrier_shipping_insurance_is_percentage (changed definition: is now 'False' ('CHECK(shipping_insurance >= 0 AND shipping_insurance <= 100)')) +ir.model.constraint: delivery.constraint_delivery_zip_prefix_name_uniq (changed definition: is now 'False' ('unique (name)')) +DEL ir.rule: delivery.delivery_carrier_comp_rule (noupdate) +NEW ir.sequence: delivery.seq_delivery_note +NEW ir.ui.view: delivery.delivery_note_form_view +NEW ir.ui.view: delivery.delivery_note_list_view +NEW ir.ui.view: delivery.report_delivery_note +NEW ir.ui.view: delivery.state_header +NEW ir.ui.view: delivery.view_delivery_carrier_so_list +NEW mail.template: delivery.mail_template_data_delivery_note +payment.method: delivery.payment_method_cash_on_delivery (noupdate switched) +payment.provider: delivery.payment_provider_cod (noupdate switched) +product.category: delivery.product_category_deliveries (noupdate switched) +product.product: delivery.product_product_delivery (noupdate switched) diff --git a/openupgrade_scripts/scripts/delivery/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/delivery/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..604cc7a65c8 --- /dev/null +++ b/openupgrade_scripts/scripts/delivery/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,58 @@ +---Models in module 'delivery'--- +new model delivery.note.wizard [transient] +new model delivery.note.wizard.line [transient] +# NOTHING TO DO: a transient model holds no persistent data +---Fields in module 'delivery'--- +delivery / payment.provider / custom_mode (False) : selection_keys added: [pay_on_invoice] (most likely nothing to do) +# NOTHING TO DO: keys were added, the existing values stay valid +delivery / res.partner / is_pickup_location (boolean) : DEL +delivery / sale.order / pickup_location_data (json) : DEL +# NOTHING TO DO: the column is left in place for database_cleanup +---XML records in module 'delivery'--- +delivery.carrier: delivery.free_delivery_carrier (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW ir.access: delivery.access_choose_delivery_carrier +NEW ir.access: delivery.access_delivery_carrier +NEW ir.access: delivery.access_delivery_carrier_manager +NEW ir.access: delivery.access_delivery_carrier_partner_manager +NEW ir.access: delivery.access_delivery_note_line_user +NEW ir.access: delivery.access_delivery_note_user +NEW ir.access: delivery.access_delivery_price_rule +NEW ir.access: delivery.access_delivery_price_rule_manager +NEW ir.access: delivery.access_delivery_zip_prefix +NEW ir.access: delivery.access_delivery_zip_prefix_sale_manager +NEW ir.access: delivery.delivery_carrier_comp_rule +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +NEW ir.actions.report: delivery.action_report_delivery_note +# NOTHING TO DO: the record is not noupdate, so the module update creates it +DEL ir.model.access: delivery.access_choose_delivery_carrier +DEL ir.model.access: delivery.access_delivery_carrier +DEL ir.model.access: delivery.access_delivery_carrier_manager +DEL ir.model.access: delivery.access_delivery_carrier_partner_manager +DEL ir.model.access: delivery.access_delivery_carrier_system +DEL ir.model.access: delivery.access_delivery_price_rule +DEL ir.model.access: delivery.access_delivery_price_rule_manager +DEL ir.model.access: delivery.access_delivery_price_rule_sale_manager +DEL ir.model.access: delivery.access_delivery_zip_prefix +DEL ir.model.access: delivery.access_delivery_zip_prefix_sale_manager +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.model.constraint: delivery.constraint_delivery_carrier_margin_not_under_100_percent (changed definition: is now 'False' ('CHECK (margin >= -1)')) +ir.model.constraint: delivery.constraint_delivery_carrier_shipping_insurance_is_percentage (changed definition: is now 'False' ('CHECK(shipping_insurance >= 0 AND shipping_insurance <= 100)')) +ir.model.constraint: delivery.constraint_delivery_zip_prefix_name_uniq (changed definition: is now 'False' ('unique (name)')) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites it +DEL ir.rule: delivery.delivery_carrier_comp_rule (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +NEW ir.sequence: delivery.seq_delivery_note +NEW ir.ui.view: delivery.delivery_note_form_view +NEW ir.ui.view: delivery.delivery_note_list_view +NEW ir.ui.view: delivery.report_delivery_note +NEW ir.ui.view: delivery.state_header +NEW ir.ui.view: delivery.view_delivery_carrier_so_list +NEW mail.template: delivery.mail_template_data_delivery_note +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.method: delivery.payment_method_cash_on_delivery (noupdate switched) +payment.provider: delivery.payment_provider_cod (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml +product.category: delivery.product_category_deliveries (noupdate switched) +product.product: delivery.product_product_delivery (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same diff --git a/openupgrade_scripts/scripts/digest/20.0.1.1/noupdate_changes.xml b/openupgrade_scripts/scripts/digest/20.0.1.1/noupdate_changes.xml new file mode 100644 index 00000000000..4c1ffa49a18 --- /dev/null +++ b/openupgrade_scripts/scripts/digest/20.0.1.1/noupdate_changes.xml @@ -0,0 +1,480 @@ + + + + + + + diff --git a/openupgrade_scripts/scripts/digest/20.0.1.1/post-migration.py b/openupgrade_scripts/scripts/digest/20.0.1.1/post-migration.py new file mode 100644 index 00000000000..21d329e7853 --- /dev/null +++ b/openupgrade_scripts/scripts/digest/20.0.1.1/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "digest", "20.0.1.1/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/digest/20.0.1.1/upgrade_analysis.txt b/openupgrade_scripts/scripts/digest/20.0.1.1/upgrade_analysis.txt new file mode 100644 index 00000000000..020b06a1eb2 --- /dev/null +++ b/openupgrade_scripts/scripts/digest/20.0.1.1/upgrade_analysis.txt @@ -0,0 +1,22 @@ +---Models in module 'digest'--- +new model digest.test [transient] +---Fields in module 'digest'--- +digest / res.users / digest_ids (many2many) : NEW relation: digest.digest +---XML records in module 'digest'--- +digest.digest: digest.digest_digest_default (noupdate switched) +NEW ir.access: digest.access_digest_digest_system +NEW ir.access: digest.access_digest_digest_user +NEW ir.access: digest.access_digest_test +NEW ir.access: digest.access_digest_tip_system +NEW ir.access: digest.access_digest_tip_user +ir.config_parameter: digest.default_digest (noupdate switched) +ir.config_parameter: digest.default_emails_digest (noupdate switched) +DEL ir.model.access: digest.access_digest_digest_system +DEL ir.model.access: digest.access_digest_digest_user +DEL ir.model.access: digest.access_digest_tip_system +DEL ir.model.access: digest.access_digest_tip_user +ir.ui.view: digest.digest_mail_layout (noupdate switched) +ir.ui.view: digest.digest_mail_main (noupdate switched) +ir.ui.view: digest.digest_section_mobile (noupdate switched) +NEW ir.ui.view: digest.digest_test_view_form +ir.ui.view: digest.digest_tool_kpi (noupdate switched) diff --git a/openupgrade_scripts/scripts/digest/20.0.1.1/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/digest/20.0.1.1/upgrade_analysis_work.txt new file mode 100644 index 00000000000..f151a48245c --- /dev/null +++ b/openupgrade_scripts/scripts/digest/20.0.1.1/upgrade_analysis_work.txt @@ -0,0 +1,31 @@ +---Models in module 'digest'--- +new model digest.test [transient] +# NOTHING TO DO: a transient model holds no persistent data +---Fields in module 'digest'--- +digest / res.users / digest_ids (many2many) : NEW relation: digest.digest +# NOTHING TO DO: empty is the right value for existing records +---XML records in module 'digest'--- +digest.digest: digest.digest_digest_default (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW ir.access: digest.access_digest_digest_system +NEW ir.access: digest.access_digest_digest_user +NEW ir.access: digest.access_digest_test +NEW ir.access: digest.access_digest_tip_system +NEW ir.access: digest.access_digest_tip_user +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.config_parameter: digest.default_digest (noupdate switched) +ir.config_parameter: digest.default_emails_digest (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +DEL ir.model.access: digest.access_digest_digest_system +DEL ir.model.access: digest.access_digest_digest_user +DEL ir.model.access: digest.access_digest_tip_system +DEL ir.model.access: digest.access_digest_tip_user +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.ui.view: digest.digest_mail_layout (noupdate switched) +ir.ui.view: digest.digest_mail_main (noupdate switched) +ir.ui.view: digest.digest_section_mobile (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml +NEW ir.ui.view: digest.digest_test_view_form +# NOTHING TO DO: the record is not noupdate, so the module update creates it +ir.ui.view: digest.digest_tool_kpi (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/event/20.0.1.9/noupdate_changes.xml b/openupgrade_scripts/scripts/event/20.0.1.9/noupdate_changes.xml new file mode 100644 index 00000000000..baa37dc3eb2 --- /dev/null +++ b/openupgrade_scripts/scripts/event/20.0.1.9/noupdate_changes.xml @@ -0,0 +1,9 @@ + + + + True + + + mail.mail_notification_light + + diff --git a/openupgrade_scripts/scripts/event/20.0.1.9/post-migration.py b/openupgrade_scripts/scripts/event/20.0.1.9/post-migration.py new file mode 100644 index 00000000000..3c023a1e564 --- /dev/null +++ b/openupgrade_scripts/scripts/event/20.0.1.9/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "event", "20.0.1.9/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/event/20.0.1.9/upgrade_analysis.txt b/openupgrade_scripts/scripts/event/20.0.1.9/upgrade_analysis.txt new file mode 100644 index 00000000000..118dc705dcb --- /dev/null +++ b/openupgrade_scripts/scripts/event/20.0.1.9/upgrade_analysis.txt @@ -0,0 +1,110 @@ +---Models in module 'event'--- +---Fields in module 'event'--- +event / digest.digest / kpi_nbr_of_registrations (boolean): NEW +event / event.event / website_message_ids (one2many): DEL relation: mail.message +event / event.event.ticket / entry_limit (integer) : NEW hasdefault: default +event / event.registration / event_begin_date (datetime) : is now stored +event / event.registration / main_registration_id (many2one): NEW relation: event.registration +event / event.registration / website_message_ids (one2many): DEL relation: mail.message +---XML records in module 'event'--- +event.question: event.event_question_email (noupdate switched) +event.question: event.event_question_name (noupdate switched) +event.question: event.event_question_phone (noupdate switched) +event.stage: event.event_stage_announced (noupdate switched) +event.stage: event.event_stage_booked (noupdate switched) +event.stage: event.event_stage_done (noupdate switched) +event.stage: event.event_stage_new (noupdate switched) +NEW ir.access: event.access_event_event_manager +NEW ir.access: event.access_event_event_registration +NEW ir.access: event.access_event_event_ticket_registration +NEW ir.access: event.access_event_event_ticket_user +NEW ir.access: event.access_event_event_user +NEW ir.access: event.access_event_mail_registration +NEW ir.access: event.access_event_mail_registration_manager +NEW ir.access: event.access_event_mail_registration_registration +NEW ir.access: event.access_event_mail_slot_manager +NEW ir.access: event.access_event_mail_slot_registration +NEW ir.access: event.access_event_mail_user +NEW ir.access: event.access_event_question_answer_employee +NEW ir.access: event.access_event_question_answer_registration +NEW ir.access: event.access_event_question_user +NEW ir.access: event.access_event_registration_answer +NEW ir.access: event.access_event_registration_manager +NEW ir.access: event.access_event_registration_registration +NEW ir.access: event.access_event_slot_registration +NEW ir.access: event.access_event_slot_user +NEW ir.access: event.access_event_stage_manager +NEW ir.access: event.access_event_stage_registration +NEW ir.access: event.access_event_tag_category_registration +NEW ir.access: event.access_event_tag_category_user +NEW ir.access: event.access_event_tag_manager +NEW ir.access: event.access_event_tag_registration +NEW ir.access: event.access_event_tag_user +NEW ir.access: event.access_event_type_mail_manager +NEW ir.access: event.access_event_type_mail_registration +NEW ir.access: event.access_event_type_manager +NEW ir.access: event.access_event_type_registration +NEW ir.access: event.access_event_type_ticket_manager +NEW ir.access: event.access_event_type_ticket_registration +NEW ir.access: event.event_event_company_rule +NEW ir.access: event.event_question_answer_registration_desk_rule +NEW ir.access: event.event_question_user_rule +NEW ir.access: event.event_registration_company_rule +NEW ir.access: event.event_registration_portal_rule +NEW ir.access: event.event_registration_user_portal_rule +NEW ir.access: event.ir_rule_event_event_ticket_company +ir.actions.act_window: event.act_event_registration_from_event (deleted domain) +ir.actions.act_window: event.action_registration (deleted domain) +ir.actions.act_window: event.event_registration_action_kanban (deleted domain) +ir.actions.act_window: event.event_registration_action_stats_from_event (deleted domain) +ir.actions.act_window: event.event_slot_action_from_event (deleted domain) +ir.cron: event.event_mail_scheduler (noupdate switched) +DEL ir.model.access: event.access_event_event_manager +DEL ir.model.access: event.access_event_event_registration +DEL ir.model.access: event.access_event_event_ticket +DEL ir.model.access: event.access_event_event_ticket_registration +DEL ir.model.access: event.access_event_event_ticket_user +DEL ir.model.access: event.access_event_event_user +DEL ir.model.access: event.access_event_mail_registration +DEL ir.model.access: event.access_event_mail_registration_manager +DEL ir.model.access: event.access_event_mail_registration_registration +DEL ir.model.access: event.access_event_mail_slot_manager +DEL ir.model.access: event.access_event_mail_slot_registration +DEL ir.model.access: event.access_event_mail_user +DEL ir.model.access: event.access_event_question_answer_employee +DEL ir.model.access: event.access_event_question_answer_registration +DEL ir.model.access: event.access_event_question_answer_user +DEL ir.model.access: event.access_event_question_manager +DEL ir.model.access: event.access_event_question_user +DEL ir.model.access: event.access_event_registration +DEL ir.model.access: event.access_event_registration_answer +DEL ir.model.access: event.access_event_registration_manager +DEL ir.model.access: event.access_event_registration_registration +DEL ir.model.access: event.access_event_slot_registration +DEL ir.model.access: event.access_event_slot_user +DEL ir.model.access: event.access_event_stage_manager +DEL ir.model.access: event.access_event_stage_registration +DEL ir.model.access: event.access_event_tag +DEL ir.model.access: event.access_event_tag_category_registration +DEL ir.model.access: event.access_event_tag_category_user +DEL ir.model.access: event.access_event_tag_manager +DEL ir.model.access: event.access_event_tag_registration +DEL ir.model.access: event.access_event_tag_user +DEL ir.model.access: event.access_event_type_mail_manager +DEL ir.model.access: event.access_event_type_mail_registration +DEL ir.model.access: event.access_event_type_manager +DEL ir.model.access: event.access_event_type_registration +DEL ir.model.access: event.access_event_type_ticket_manager +DEL ir.model.access: event.access_event_type_ticket_registration +ir.model.constraint: event.constraint_event_question_check_default_question_is_reusable (changed definition: is now 'False' ('CHECK(is_default IS DISTINCT FROM TRUE OR is_reusable IS TRUE)')) +ir.model.constraint: event.constraint_event_registration_answer_value_check (changed definition: is now 'False' ('CHECK(value_answer_id IS NOT NULL OR COALESCE(value_text_box, '') <> '')')) +ir.model.constraint: event.constraint_event_registration_barcode_event_uniq (changed definition: is now 'False' ('unique(barcode)')) +DEL ir.rule: event.event_event_company_rule (noupdate) +DEL ir.rule: event.event_registration_company_rule (noupdate) +DEL ir.rule: event.ir_rule_event_event_ticket_company (noupdate) +NEW ir.ui.view: event.digest_digest_view_form +NEW ir.ui.view: event.portal_my_events +mail.template: event.event_registration_mail_template_badge (noupdate switched) +mail.template: event.event_reminder (noupdate switched) +mail.template: event.event_subscription (noupdate switched) +NEW portal.entry: event.portal_events_client diff --git a/openupgrade_scripts/scripts/event_sms/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/event_sms/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..327917e8548 --- /dev/null +++ b/openupgrade_scripts/scripts/event_sms/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,7 @@ + + + + Ready for "{{ object.event_id.name }}" {{ object.event_date_range }}? +{{ 'It starts at %s' % format_time(time=object.event_begin_date, tz=object.event_id.date_tz, time_format='short', lang_code=object.partner_id.lang) + (', at %s' % object.event_id.contact_address_inline if object.event_id.contact_address_inline else '') + '.\nSee you there!' if object.event_id.contact_address_inline or 'website_published' not in object.event_id._fields else 'Join us on %s/event/%i!' % (object.get_base_url(), object.event_id.id) }} + + diff --git a/openupgrade_scripts/scripts/event_sms/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/event_sms/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..fd0fb4d1cc6 --- /dev/null +++ b/openupgrade_scripts/scripts/event_sms/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "event_sms", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "event_sms", + ["sms_template_data_event_reminder"], + ["body"], + ) diff --git a/openupgrade_scripts/scripts/event_sms/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/event_sms/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..a9557b14d4c --- /dev/null +++ b/openupgrade_scripts/scripts/event_sms/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,9 @@ +---Models in module 'event_sms'--- +---Fields in module 'event_sms'--- +---XML records in module 'event_sms'--- +NEW ir.access: event_sms.access_sms_template_event_manager +NEW ir.access: event_sms.ir_rule_sms_template_event_manager +DEL ir.model.access: event_sms.access_sms_template_event_manager +DEL ir.rule: event_sms.ir_rule_sms_template_event_manager (noupdate) +sms.template: event_sms.sms_template_data_event_registration (noupdate switched) +sms.template: event_sms.sms_template_data_event_reminder (noupdate switched) diff --git a/openupgrade_scripts/scripts/event_sms/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/event_sms/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..690c136a813 --- /dev/null +++ b/openupgrade_scripts/scripts/event_sms/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,12 @@ +---Models in module 'event_sms'--- +---Fields in module 'event_sms'--- +---XML records in module 'event_sms'--- +NEW ir.access: event_sms.access_sms_template_event_manager +NEW ir.access: event_sms.ir_rule_sms_template_event_manager +DEL ir.model.access: event_sms.access_sms_template_event_manager +DEL ir.rule: event_sms.ir_rule_sms_template_event_manager (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +sms.template: event_sms.sms_template_data_event_registration (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +sms.template: event_sms.sms_template_data_event_reminder (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/gamification/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/gamification/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..f8b1251de47 --- /dev/null +++ b/openupgrade_scripts/scripts/gamification/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,49 @@ + + + + + +
Hi ,
+
+
You've just been awarded the badge + by . +
+ + + + + + + +
+ + + +
+ +
+ 💬 says: +
+ "" +
+
+
+
+ Thank you for your contributions, and keep shining! +
+
+
+ + + mail.mail_notification_layout +
+ + mail.mail_notification_light + + + mail.mail_notification_light + + + mail.mail_notification_light + +
diff --git a/openupgrade_scripts/scripts/gamification/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/gamification/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..7bf3cd44778 --- /dev/null +++ b/openupgrade_scripts/scripts/gamification/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "gamification", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "gamification", + ["email_template_badge_received"], + ["body_html"], + ) diff --git a/openupgrade_scripts/scripts/gamification/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/gamification/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..026ef9f9b44 --- /dev/null +++ b/openupgrade_scripts/scripts/gamification/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,82 @@ +---Models in module 'gamification'--- +---Fields in module 'gamification'--- +---XML records in module 'gamification'--- +gamification.badge: gamification.badge_good_job (noupdate switched) +gamification.badge: gamification.badge_hidden (noupdate switched) +gamification.badge: gamification.badge_idea (noupdate switched) +gamification.badge: gamification.badge_problem_solver (noupdate switched) +gamification.challenge: gamification.challenge_base_configure (noupdate switched) +gamification.challenge: gamification.challenge_base_discover (noupdate switched) +gamification.challenge.line: gamification.line_base_admin1 (noupdate switched) +gamification.challenge.line: gamification.line_base_admin2 (noupdate switched) +gamification.challenge.line: gamification.line_base_admin3 (noupdate switched) +gamification.challenge.line: gamification.line_base_discover1 (noupdate switched) +gamification.goal.definition: gamification.definition_base_company_data (noupdate switched) +gamification.goal.definition: gamification.definition_base_company_logo (noupdate switched) +gamification.goal.definition: gamification.definition_base_invite (noupdate switched) +gamification.goal.definition: gamification.definition_base_timezone (noupdate switched) +gamification.karma.rank: gamification.rank_bachelor (noupdate switched) +gamification.karma.rank: gamification.rank_doctor (noupdate switched) +gamification.karma.rank: gamification.rank_master (noupdate switched) +gamification.karma.rank: gamification.rank_newbie (noupdate switched) +gamification.karma.rank: gamification.rank_student (noupdate switched) +gamification.karma.tracking: gamification.karma_tracking_user_admin (noupdate switched) +gamification.karma.tracking: gamification.karma_tracking_user_root (noupdate switched) +NEW ir.access: gamification.access_gamification_badge_user_wizard +NEW ir.access: gamification.access_gamification_goal_wizard +NEW ir.access: gamification.badge_employee +NEW ir.access: gamification.badge_manager +NEW ir.access: gamification.challenge_employee +NEW ir.access: gamification.challenge_line_employee +NEW ir.access: gamification.challenge_line_manager +NEW ir.access: gamification.challenge_manager +NEW ir.access: gamification.gamification_badge_user_access +NEW ir.access: gamification.gamification_badge_user_access_1 +NEW ir.access: gamification.gamification_karma_rank_access_employee +NEW ir.access: gamification.gamification_karma_rank_access_user_manager +NEW ir.access: gamification.gamification_karma_tracking_access_user_manager +NEW ir.access: gamification.goal_definition_employee +NEW ir.access: gamification.goal_definition_manager +NEW ir.access: gamification.goal_gamification_manager_visibility +NEW ir.access: gamification.goal_global_multicompany +NEW ir.access: gamification.goal_manager +NEW ir.access: gamification.goal_user_visibility +ir.actions.act_window: gamification.action_current_rank_users (deleted domain) +ir.cron: gamification.ir_cron_check_challenge (noupdate switched) +ir.cron: gamification.ir_cron_consolidate (noupdate switched) +DEL ir.model.access: gamification.access_gamification_badge_user_wizard +DEL ir.model.access: gamification.access_gamification_goal_wizard +DEL ir.model.access: gamification.badge_employee +DEL ir.model.access: gamification.badge_manager +DEL ir.model.access: gamification.badge_portal +DEL ir.model.access: gamification.badge_public +DEL ir.model.access: gamification.badge_user_employee +DEL ir.model.access: gamification.badge_user_manager +DEL ir.model.access: gamification.badge_user_portal +DEL ir.model.access: gamification.badge_user_public +DEL ir.model.access: gamification.challenge_employee +DEL ir.model.access: gamification.challenge_line_employee +DEL ir.model.access: gamification.challenge_line_manager +DEL ir.model.access: gamification.challenge_line_portal +DEL ir.model.access: gamification.challenge_manager +DEL ir.model.access: gamification.challenge_portal +DEL ir.model.access: gamification.gamification_karma_rank_access_employee +DEL ir.model.access: gamification.gamification_karma_rank_access_portal +DEL ir.model.access: gamification.gamification_karma_rank_access_public +DEL ir.model.access: gamification.gamification_karma_rank_access_user_manager +DEL ir.model.access: gamification.gamification_karma_tracking_access_all +DEL ir.model.access: gamification.gamification_karma_tracking_access_user_manager +DEL ir.model.access: gamification.goal_definition_employee +DEL ir.model.access: gamification.goal_definition_manager +DEL ir.model.access: gamification.goal_definition_portal +DEL ir.model.access: gamification.goal_employee +DEL ir.model.access: gamification.goal_manager +DEL ir.model.access: gamification.goal_portal +ir.model.constraint: gamification.constraint_gamification_karma_rank_karma_min_check (changed definition: is now 'False' ('CHECK( karma_min > 0 )')) +DEL ir.rule: gamification.goal_gamification_manager_visibility (noupdate) +DEL ir.rule: gamification.goal_global_multicompany (noupdate) +DEL ir.rule: gamification.goal_user_visibility (noupdate) +mail.template: gamification.email_template_badge_received (noupdate switched) +mail.template: gamification.email_template_goal_reminder (noupdate switched) +mail.template: gamification.mail_template_data_new_rank_reached (noupdate switched) +mail.template: gamification.simple_report_template (noupdate switched) diff --git a/openupgrade_scripts/scripts/gamification/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/gamification/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..992fa2530a2 --- /dev/null +++ b/openupgrade_scripts/scripts/gamification/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,90 @@ +---Models in module 'gamification'--- +---Fields in module 'gamification'--- +---XML records in module 'gamification'--- +gamification.badge: gamification.badge_good_job (noupdate switched) +gamification.badge: gamification.badge_hidden (noupdate switched) +gamification.badge: gamification.badge_idea (noupdate switched) +gamification.badge: gamification.badge_problem_solver (noupdate switched) +gamification.challenge: gamification.challenge_base_configure (noupdate switched) +gamification.challenge: gamification.challenge_base_discover (noupdate switched) +gamification.challenge.line: gamification.line_base_admin1 (noupdate switched) +gamification.challenge.line: gamification.line_base_admin2 (noupdate switched) +gamification.challenge.line: gamification.line_base_admin3 (noupdate switched) +gamification.challenge.line: gamification.line_base_discover1 (noupdate switched) +gamification.goal.definition: gamification.definition_base_company_data (noupdate switched) +gamification.goal.definition: gamification.definition_base_company_logo (noupdate switched) +gamification.goal.definition: gamification.definition_base_invite (noupdate switched) +gamification.goal.definition: gamification.definition_base_timezone (noupdate switched) +gamification.karma.rank: gamification.rank_bachelor (noupdate switched) +gamification.karma.rank: gamification.rank_doctor (noupdate switched) +gamification.karma.rank: gamification.rank_master (noupdate switched) +gamification.karma.rank: gamification.rank_newbie (noupdate switched) +gamification.karma.rank: gamification.rank_student (noupdate switched) +gamification.karma.tracking: gamification.karma_tracking_user_admin (noupdate switched) +gamification.karma.tracking: gamification.karma_tracking_user_root (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW ir.access: gamification.access_gamification_badge_user_wizard +NEW ir.access: gamification.access_gamification_goal_wizard +NEW ir.access: gamification.badge_employee +NEW ir.access: gamification.badge_manager +NEW ir.access: gamification.challenge_employee +NEW ir.access: gamification.challenge_line_employee +NEW ir.access: gamification.challenge_line_manager +NEW ir.access: gamification.challenge_manager +NEW ir.access: gamification.gamification_badge_user_access +NEW ir.access: gamification.gamification_badge_user_access_1 +NEW ir.access: gamification.gamification_karma_rank_access_employee +NEW ir.access: gamification.gamification_karma_rank_access_user_manager +NEW ir.access: gamification.gamification_karma_tracking_access_user_manager +NEW ir.access: gamification.goal_definition_employee +NEW ir.access: gamification.goal_definition_manager +NEW ir.access: gamification.goal_gamification_manager_visibility +NEW ir.access: gamification.goal_global_multicompany +NEW ir.access: gamification.goal_manager +NEW ir.access: gamification.goal_user_visibility +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.actions.act_window: gamification.action_current_rank_users (deleted domain) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites the domain +ir.cron: gamification.ir_cron_check_challenge (noupdate switched) +ir.cron: gamification.ir_cron_consolidate (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +DEL ir.model.access: gamification.access_gamification_badge_user_wizard +DEL ir.model.access: gamification.access_gamification_goal_wizard +DEL ir.model.access: gamification.badge_employee +DEL ir.model.access: gamification.badge_manager +DEL ir.model.access: gamification.badge_portal +DEL ir.model.access: gamification.badge_public +DEL ir.model.access: gamification.badge_user_employee +DEL ir.model.access: gamification.badge_user_manager +DEL ir.model.access: gamification.badge_user_portal +DEL ir.model.access: gamification.badge_user_public +DEL ir.model.access: gamification.challenge_employee +DEL ir.model.access: gamification.challenge_line_employee +DEL ir.model.access: gamification.challenge_line_manager +DEL ir.model.access: gamification.challenge_line_portal +DEL ir.model.access: gamification.challenge_manager +DEL ir.model.access: gamification.challenge_portal +DEL ir.model.access: gamification.gamification_karma_rank_access_employee +DEL ir.model.access: gamification.gamification_karma_rank_access_portal +DEL ir.model.access: gamification.gamification_karma_rank_access_public +DEL ir.model.access: gamification.gamification_karma_rank_access_user_manager +DEL ir.model.access: gamification.gamification_karma_tracking_access_all +DEL ir.model.access: gamification.gamification_karma_tracking_access_user_manager +DEL ir.model.access: gamification.goal_definition_employee +DEL ir.model.access: gamification.goal_definition_manager +DEL ir.model.access: gamification.goal_definition_portal +DEL ir.model.access: gamification.goal_employee +DEL ir.model.access: gamification.goal_manager +DEL ir.model.access: gamification.goal_portal +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.model.constraint: gamification.constraint_gamification_karma_rank_karma_min_check (changed definition: is now 'False' ('CHECK( karma_min > 0 )')) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites it +DEL ir.rule: gamification.goal_gamification_manager_visibility (noupdate) +DEL ir.rule: gamification.goal_global_multicompany (noupdate) +DEL ir.rule: gamification.goal_user_visibility (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +mail.template: gamification.email_template_badge_received (noupdate switched) +mail.template: gamification.email_template_goal_reminder (noupdate switched) +mail.template: gamification.mail_template_data_new_rank_reached (noupdate switched) +mail.template: gamification.simple_report_template (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/hr_expense/20.0.2.1/noupdate_changes.xml b/openupgrade_scripts/scripts/hr_expense/20.0.2.1/noupdate_changes.xml new file mode 100644 index 00000000000..d681cedd4c9 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_expense/20.0.2.1/noupdate_changes.xml @@ -0,0 +1,91 @@ + + + + + + + attach_money + + diff --git a/openupgrade_scripts/scripts/hr_expense/20.0.2.1/post-migration.py b/openupgrade_scripts/scripts/hr_expense/20.0.2.1/post-migration.py new file mode 100644 index 00000000000..ef52590205e --- /dev/null +++ b/openupgrade_scripts/scripts/hr_expense/20.0.2.1/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "hr_expense", "20.0.2.1/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/hr_expense/20.0.2.1/upgrade_analysis.txt b/openupgrade_scripts/scripts/hr_expense/20.0.2.1/upgrade_analysis.txt new file mode 100644 index 00000000000..b2149ffbb11 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_expense/20.0.2.1/upgrade_analysis.txt @@ -0,0 +1,96 @@ +---Models in module 'hr_expense'--- +obsolete model hr.expense.post.wizard [transient] +new model hr.expense.product.job.position.limit +---Fields in module 'hr_expense'--- +hr_expense / account.move / existing_expense_ids (one2many): NEW relation: hr.expense +hr_expense / hr.expense / existing_bill_id (many2one) : NEW relation: account.move +hr_expense / hr.expense / has_existing_bill (boolean) : NEW +hr_expense / hr.expense / journal_id (many2one) : not related anymore +hr_expense / hr.expense / journal_id (many2one) : now a function +hr_expense / hr.expense / last_notification_date (datetime): NEW +hr_expense / hr.expense / website_message_ids (one2many): DEL relation: mail.message +hr_expense / hr.expense.product.job.position.limit / job_ids (many2many) : NEW relation: hr.job +hr_expense / hr.expense.product.job.position.limit / limit_amount (float) : NEW required +hr_expense / hr.expense.product.job.position.limit / product_id (many2one) : NEW relation: product.product, required +hr_expense / hr.expense.product.job.position.limit / sequence (integer) : NEW hasdefault: default +hr_expense / product.product / expense_job_position_limit_ids (one2many): NEW relation: hr.expense.product.job.position.limit +---XML records in module 'hr_expense'--- +NEW ir.access: hr_expense.access_account_journal_user +NEW ir.access: hr_expense.access_hr_expense_approve_duplicate +NEW ir.access: hr_expense.access_hr_expense_product_job_position_limit_manager +NEW ir.access: hr_expense.access_hr_expense_product_job_position_limit_user +NEW ir.access: hr_expense.access_hr_expense_refuse_wizard +NEW ir.access: hr_expense.access_hr_expense_split_manager +NEW ir.access: hr_expense.access_mail_activity_type_expense_user +NEW ir.access: hr_expense.base_user_account_move_line_rule +NEW ir.access: hr_expense.hr_expense_comp_rule +NEW ir.access: hr_expense.hr_expense_team_approver_account_analytic_line_rule +NEW ir.access: hr_expense.hr_expense_team_approver_account_move_line_rule +NEW ir.access: hr_expense.hr_expense_team_approver_account_move_rule +NEW ir.access: hr_expense.ir_rule_hr_expense_approver +NEW ir.access: hr_expense.ir_rule_hr_expense_employee +NEW ir.access: hr_expense.ir_rule_hr_expense_employee_not_draft +NEW ir.access: hr_expense.ir_rule_hr_expense_manager +NEW ir.access: hr_expense.ir_rule_hr_expense_manager_1 +NEW ir.access: hr_expense.ir_rule_hr_expense_split_accountant +NEW ir.access: hr_expense.ir_rule_hr_expense_split_approver +NEW ir.access: hr_expense.ir_rule_hr_expense_split_employee +NEW ir.access: hr_expense.ir_rule_hr_expense_split_manager +NEW ir.access: hr_expense.ir_rule_hr_expense_split_user +ir.actions.act_window: hr_expense.action_hr_expense_department_to_approve (deleted domain) +ir.actions.act_window: hr_expense.hr_expense_product (deleted domain) +ir.actions.act_window: hr_expense.mail_activity_type_action_config_hr_expense (deleted domain) +DEL ir.cron: hr_expense.ir_cron_send_submitted_expenses_mail +DEL ir.model.access: hr_expense.access_account_analytic_line_user +DEL ir.model.access: hr_expense.access_account_journal_user +DEL ir.model.access: hr_expense.access_account_move_line_user +DEL ir.model.access: hr_expense.access_account_move_user +DEL ir.model.access: hr_expense.access_hr_expense_accountant +DEL ir.model.access: hr_expense.access_hr_expense_approve_duplicate +DEL ir.model.access: hr_expense.access_hr_expense_employee +DEL ir.model.access: hr_expense.access_hr_expense_manager +DEL ir.model.access: hr_expense.access_hr_expense_post +DEL ir.model.access: hr_expense.access_hr_expense_refuse_wizard +DEL ir.model.access: hr_expense.access_hr_expense_split_manager +DEL ir.model.access: hr_expense.access_hr_expense_split_wizard_manager +DEL ir.model.access: hr_expense.access_hr_expense_user +DEL ir.model.access: hr_expense.access_mail_activity_type_expense_user +DEL ir.rule: hr_expense.hr_expense_comp_rule (noupdate) +DEL ir.rule: hr_expense.hr_expense_team_approver_account_move_line_rule (noupdate) +DEL ir.rule: hr_expense.hr_expense_team_approver_account_move_rule (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_approver (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_employee (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_employee_not_draft (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_manager (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_split_accountant (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_split_approver (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_split_employee (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_split_manager (noupdate) +DEL ir.rule: hr_expense.ir_rule_hr_expense_split_user (noupdate) +DEL ir.sequence: hr_expense.seq_hr_expense_invoice (noupdate) +DEL ir.ui.menu: hr_expense.menu_hr_expense_account_employee_expenses +NEW ir.ui.view: hr_expense.account_journal_dashboard_kanban_view_inherit_expense +NEW ir.ui.view: hr_expense.account_journal_view_form_inherit_hr_expense +NEW ir.ui.view: hr_expense.hr_expense_split_form_view +ir.ui.view: hr_expense.hr_expense_template_refuse_reason (noupdate switched) +ir.ui.view: hr_expense.hr_expense_template_register (noupdate switched) +ir.ui.view: hr_expense.hr_expense_template_register_no_user (noupdate switched) +ir.ui.view: hr_expense.hr_expense_template_submitted_expenses (noupdate switched) +NEW ir.ui.view: hr_expense.product_template_form_view +NEW ir.ui.view: hr_expense.view_account_invoice_filter_inherit_expense +DEL ir.ui.view: hr_expense.hr_expense_post_wizard_view +mail.activity.type: hr_expense.mail_act_expense_approval (noupdate switched) +mail.alias: hr_expense.mail_alias_expense (noupdate switched) +mail.message.subtype: hr_expense.mt_expense_approved (noupdate switched) +mail.message.subtype: hr_expense.mt_expense_entry_delete (noupdate switched) +mail.message.subtype: hr_expense.mt_expense_entry_draft (noupdate switched) +mail.message.subtype: hr_expense.mt_expense_paid (noupdate switched) +mail.message.subtype: hr_expense.mt_expense_refused (noupdate switched) +mail.message.subtype: hr_expense.mt_expense_reset (noupdate switched) +product.product: hr_expense.expense_product_communication (noupdate switched) +product.product: hr_expense.expense_product_gift (noupdate switched) +product.product: hr_expense.expense_product_meal (noupdate switched) +product.product: hr_expense.expense_product_mileage (noupdate switched) +product.product: hr_expense.expense_product_travel_accommodation (noupdate switched) +product.product: hr_expense.product_product_no_cost (noupdate switched) +uom.uom: uom.product_uom_km (noupdate switched) diff --git a/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..2f6e1d7532a --- /dev/null +++ b/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + False + + diff --git a/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..44618a023cc --- /dev/null +++ b/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "hr_gamification", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..2dcf9ca8351 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,21 @@ +---Models in module 'hr_gamification'--- +---Fields in module 'hr_gamification'--- +---XML records in module 'hr_gamification'--- +NEW ir.access: hr_gamification.badge_officer +NEW ir.access: hr_gamification.challenge_line_officer +NEW ir.access: hr_gamification.challenge_officer +NEW ir.access: hr_gamification.goal_gamification_hr_user_visibility +NEW ir.access: hr_gamification.hr_gamification_badge_base_user_not_owned_access +NEW ir.access: hr_gamification.hr_gamification_badge_base_user_owned_access +NEW ir.access: hr_gamification.hr_gamification_badge_group_hr_user_access +ir.actions.act_window: hr_gamification.challenge_list_action2 (deleted domain) +ir.actions.act_window: hr_gamification.goals_menu_groupby_action2 (deleted domain) +DEL ir.model.access: hr_gamification.badge_base_user +DEL ir.model.access: hr_gamification.badge_officer +DEL ir.model.access: hr_gamification.badge_user_officer +DEL ir.model.access: hr_gamification.challenge_line_officer +DEL ir.model.access: hr_gamification.challenge_officer +DEL ir.rule: hr_gamification.goal_gamification_hr_user_visibility (noupdate) +DEL ir.rule: hr_gamification.hr_gamification_badge_base_user_not_owned_access (noupdate) +DEL ir.rule: hr_gamification.hr_gamification_badge_base_user_owned_access (noupdate) +DEL ir.rule: hr_gamification.hr_gamification_badge_group_hr_user_access (noupdate) diff --git a/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..ae31cf6a863 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_gamification/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,24 @@ +---Models in module 'hr_gamification'--- +---Fields in module 'hr_gamification'--- +---XML records in module 'hr_gamification'--- +NEW ir.access: hr_gamification.badge_officer +NEW ir.access: hr_gamification.challenge_line_officer +NEW ir.access: hr_gamification.challenge_officer +NEW ir.access: hr_gamification.goal_gamification_hr_user_visibility +NEW ir.access: hr_gamification.hr_gamification_badge_base_user_not_owned_access +NEW ir.access: hr_gamification.hr_gamification_badge_base_user_owned_access +NEW ir.access: hr_gamification.hr_gamification_badge_group_hr_user_access +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.actions.act_window: hr_gamification.challenge_list_action2 (deleted domain) +ir.actions.act_window: hr_gamification.goals_menu_groupby_action2 (deleted domain) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites the domain +DEL ir.model.access: hr_gamification.badge_base_user +DEL ir.model.access: hr_gamification.badge_officer +DEL ir.model.access: hr_gamification.badge_user_officer +DEL ir.model.access: hr_gamification.challenge_line_officer +DEL ir.model.access: hr_gamification.challenge_officer +DEL ir.rule: hr_gamification.goal_gamification_hr_user_visibility (noupdate) +DEL ir.rule: hr_gamification.hr_gamification_badge_base_user_not_owned_access (noupdate) +DEL ir.rule: hr_gamification.hr_gamification_badge_base_user_owned_access (noupdate) +DEL ir.rule: hr_gamification.hr_gamification_badge_group_hr_user_access (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids diff --git a/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/noupdate_changes.xml b/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/noupdate_changes.xml new file mode 100644 index 00000000000..09eebb6abfd --- /dev/null +++ b/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/noupdate_changes.xml @@ -0,0 +1,192 @@ + + + + + 500 + + + 300 + + + Secondary Education + 0.30 + 100 + + + 400 + + + +
+ Hello, +

+ We confirm we successfully received your application for the job + "Experienced Developer" at YourCompany. +

+ We will come back to you shortly. + + + +
+

Your Contact:

Mitchell Admin
Email: admin@yourcompany.example.com
Phone: +1 650-123-4567


+ +

What is the next step?

+ We usually answer applications within a few days.

+ Feel free to contact us if you want a faster + feedback or if you don't get news from us + quickly enough (just reply to this email). + +
+ + Teksa SpA
+ Puerto Madero 9710
+ Of A15, Santiago (RM)
+ Pudahuel, + + C1, + + 98450 +
+ Argentina
+
+
+
+ hr_recruitment.mail_notification_light_without_background +
+ + +
+
+

Congratulations!

+
Your resume has been positively reviewed.
+
+
+ We just reviewed your resume, and it caught our + attention. As we think you might be great for the + position, your application has been short listed for a + call or an interview. +

+ + + + You will soon be contacted by:
+ Mitchell Admin
+ Email: admin@yourcompany.example.com
+ Phone: +1 650-123-4567 +

+
+ See you soon, +
+ --
+ The HR Team + + Discover all our jobs.
+
+
+ +
+

What is the next step?

+ We usually answer applications within a few days. +

+ The next step is either a call or a meeting in our offices. +
+ Feel free to contact us if you want a faster + feedback or if you don't get news from us + quickly enough (just reply to this email). +
+ +
+ + Teksa SpA
+ Puerto Madero 9710
+ Of A15, Santiago (RM)
+ Pudahuel, + + C1, + + 98450 +
+ Argentina
+
+
+
+
+ hr_recruitment.mail_notification_light_without_background +
+ + +
+
+ Dear,

+ We would like to thank you for your interest and your time.
+ We wish you all the best in your future endeavors. +

+ Best
+
+ --
+ Marc Demo
+ Email: mark.brown23@example.com
+ Phone: +1 650-123-4567 +
+ --
+ YourCompany
+ The HR Team
+
+
+
+
+ hr_recruitment.mail_notification_light_without_background +
+ + +
+ Hello,

+ Thank you for your interest in joining the + YourCompany team. We + wanted to let you know that, although your resume is + competitive, our hiring team reviewed your application + and did not select it for further consideration. +

+ Please note that recruiting is hard, and we can make + mistakes. Do not hesitate to reply to this email if you + think we made a mistake, or if you want more information + about our decision. +

+ We will, however, keep your resume on record and get in + touch with you about future opportunities that may be a + better fit for your skills and experience. +

+ We wish you all the best in your job search and hope we + will have the chance to consider you for another role + in the future. +

+ Thank you, +
+ --
+ Mitchell Admin
+ Email: admin@yourcompany.example.com
+ Phone: +1 650-123-4567 +
+ --
+ YourCompany
+ The HR Team +
+
+
+ hr_recruitment.mail_notification_light_without_background +
+ + + + + + + + + + + + +
diff --git a/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/post-migration.py b/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/post-migration.py new file mode 100644 index 00000000000..eea397b57dc --- /dev/null +++ b/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/post-migration.py @@ -0,0 +1,32 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "hr_recruitment", "20.0.1.1/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "hr_recruitment", + [ + "email_template_data_applicant_congratulations", + "email_template_data_applicant_interest", + "email_template_data_applicant_not_interested", + "email_template_data_applicant_refuse", + ], + ["body_html"], + ) + openupgrade.delete_record_translations( + env.cr, + "hr_recruitment", + ["mt_applicant_new", "mt_job_new", "mt_talent_new"], + ["description"], + ) + openupgrade.delete_record_translations( + env.cr, + "hr_recruitment", + ["degree_graduate"], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/upgrade_analysis.txt b/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/upgrade_analysis.txt new file mode 100644 index 00000000000..17269abbf40 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_recruitment/20.0.1.1/upgrade_analysis.txt @@ -0,0 +1,172 @@ +---Models in module 'hr_recruitment'--- +obsolete model applicant.send.mail [transient] +new model applicant.refuse.single [transient] +new model hr.job.tag +---Fields in module 'hr_recruitment'--- +hr_recruitment / hr.applicant / duration_tracking (json) : is now stored +hr_recruitment / hr.applicant / email_cc (char) : DEL +hr_recruitment / hr.applicant / linked_applicant_ids (one2many): NEW relation: hr.applicant +hr_recruitment / hr.applicant / recruiter_id (many2one) : NEW relation: hr.employee, hasdefault: compute +hr_recruitment / hr.applicant / schedule_pay (selection) : NEW required, selection_keys: ['biweekly', 'daily', 'hourly', 'monthly', 'weekly', 'yearly'], hasdefault: default +hr_recruitment / hr.applicant / user_id (many2one) : DEL relation: res.users +hr_recruitment / hr.applicant / utm_reference (reference) : NEW +hr_recruitment / hr.applicant / website_message_ids (one2many): DEL relation: mail.message +hr_recruitment / hr.job / applicant_properties_definition (properties_definition): DEL +hr_recruitment / hr.job / favorite_recruiter_ids (many2many): NEW relation: hr.employee, hasdefault: default +hr_recruitment / hr.job / favorite_user_ids (many2many) : DEL relation: res.users +hr_recruitment / hr.job / payment_interval (selection) : NEW required, selection_keys: ['biweekly', 'daily', 'hourly', 'monthly', 'weekly', 'yearly'], hasdefault: default +hr_recruitment / hr.job / salary_max (float) : NEW +hr_recruitment / hr.job / salary_min (float) : NEW +hr_recruitment / hr.job / tag_ids (many2many) : NEW relation: hr.job.tag +hr_recruitment / hr.job.tag / color (integer) : NEW hasdefault: default +hr_recruitment / hr.job.tag / name (char) : NEW required +hr_recruitment / hr.recruitment.stage / company_id (many2one) : NEW relation: res.company +hr_recruitment / hr.recruitment.stage / legend_blocked (char) : DEL required +hr_recruitment / hr.recruitment.stage / legend_done (char) : DEL required +hr_recruitment / hr.recruitment.stage / legend_normal (char) : DEL required +hr_recruitment / hr.recruitment.stage / legend_waiting (char) : DEL required +hr_recruitment / hr.talent.pool / website_message_ids (one2many): DEL relation: mail.message +hr_recruitment / res.company / applicant_properties_definition (properties_definition): NEW +---XML records in module 'hr_recruitment'--- +digest.digest: digest.digest_digest_default (noupdate switched) +hr.applicant.category: hr_recruitment.tag_applicant_it (noupdate switched) +hr.applicant.category: hr_recruitment.tag_applicant_manager (noupdate switched) +hr.applicant.category: hr_recruitment.tag_applicant_reserve (noupdate switched) +hr.applicant.category: hr_recruitment.tag_applicant_sales (noupdate switched) +hr.applicant.refuse.reason: hr_recruitment.refuse_reason_1 (noupdate switched) +hr.applicant.refuse.reason: hr_recruitment.refuse_reason_2 (noupdate switched) +hr.applicant.refuse.reason: hr_recruitment.refuse_reason_5 (noupdate switched) +hr.applicant.refuse.reason: hr_recruitment.refuse_reason_6 (noupdate switched) +hr.applicant.refuse.reason: hr_recruitment.refuse_reason_7 (noupdate switched) +hr.applicant.refuse.reason: hr_recruitment.refuse_reason_8 (noupdate switched) +hr.job.platform: hr_recruitment.indeed_job_platform (noupdate switched) +hr.job.platform: hr_recruitment.jobsdb_job_platform (noupdate switched) +hr.job.platform: hr_recruitment.linkedin_job_platform (noupdate switched) +hr.recruitment.degree: hr_recruitment.degree_bac5 (noupdate switched) +hr.recruitment.degree: hr_recruitment.degree_bachelor (noupdate switched) +NEW hr.recruitment.degree: hr_recruitment.degree_diploma +hr.recruitment.degree: hr_recruitment.degree_graduate (noupdate switched) +hr.recruitment.degree: hr_recruitment.degree_licenced (noupdate switched) +hr.recruitment.stage: hr_recruitment.stage_job0 (noupdate switched) +hr.recruitment.stage: hr_recruitment.stage_job1 (noupdate switched) +hr.recruitment.stage: hr_recruitment.stage_job2 (noupdate switched) +hr.recruitment.stage: hr_recruitment.stage_job3 (noupdate switched) +hr.recruitment.stage: hr_recruitment.stage_job4 (noupdate switched) +hr.recruitment.stage: hr_recruitment.stage_job5 (noupdate switched) +NEW ir.access: hr_recruitment.access_applicant_get_refuse_reason_interviewer +NEW ir.access: hr_recruitment.access_applicant_refuse_single_interviewer +NEW ir.access: hr_recruitment.access_calendar_event_type_hr_officer +NEW ir.access: hr_recruitment.access_hr_applicant_category +NEW ir.access: hr_recruitment.access_hr_applicant_category_manager +NEW ir.access: hr_recruitment.access_hr_job_interviewer +NEW ir.access: hr_recruitment.access_hr_job_platform +NEW ir.access: hr_recruitment.access_hr_job_tag_interviewer +NEW ir.access: hr_recruitment.access_hr_job_tag_manager +NEW ir.access: hr_recruitment.access_hr_job_user +NEW ir.access: hr_recruitment.access_hr_recruitment_degree +NEW ir.access: hr_recruitment.access_hr_recruitment_degree_interviewer +NEW ir.access: hr_recruitment.access_hr_recruitment_refuse_reason +NEW ir.access: hr_recruitment.access_hr_recruitment_refuse_reason_interviewer +NEW ir.access: hr_recruitment.access_hr_recruitment_source_all +NEW ir.access: hr_recruitment.access_hr_recruitment_source_hr_officer +NEW ir.access: hr_recruitment.access_hr_recruitment_stage_interviewer +NEW ir.access: hr_recruitment.access_hr_recruitment_stage_manager +NEW ir.access: hr_recruitment.access_hr_talent_pool_interviewer +NEW ir.access: hr_recruitment.access_job_add_applicants +NEW ir.access: hr_recruitment.access_mail_activity_plan_hr_recruitment_manager +NEW ir.access: hr_recruitment.access_mail_activity_plan_template_hr_recruitment_manager +NEW ir.access: hr_recruitment.access_res_partner_hr_user +NEW ir.access: hr_recruitment.access_talent_pool_add_applicants +NEW ir.access: hr_recruitment.calendar_event_rule_employee +NEW ir.access: hr_recruitment.hr_applicant_comp_rule +NEW ir.access: hr_recruitment.hr_applicant_interviewer_rule +NEW ir.access: hr_recruitment.hr_applicant_user_rule +NEW ir.access: hr_recruitment.hr_job_user_rule +NEW ir.access: hr_recruitment.hr_talent_pool_user_rule +NEW ir.access: hr_recruitment.ir_rule_hr_recruitment_stage_multi_company +NEW ir.access: hr_recruitment.mail_plan_rule_group_hr_recruitment_manager_applicant +NEW ir.access: hr_recruitment.mail_plan_templates_rule_group_hr_recruitment_manager_applicant +NEW ir.access: hr_recruitment.res_partner_rule_edit_all +NEW ir.access: hr_recruitment.res_partner_rule_user +NEW ir.actions.act_window: hr_recruitment.action_applicant_mass_mail +ir.actions.act_window: hr_recruitment.action_hr_job_interviewer (deleted domain) +ir.actions.act_window: hr_recruitment.action_hr_talent_pool_applications (deleted domain) +ir.actions.act_window: hr_recruitment.hr_applicant_action_from_department (deleted domain) +NEW ir.actions.act_window: hr_recruitment.hr_job_tag_action +ir.actions.act_window: hr_recruitment.mail_activity_plan_action_config_hr_applicant (deleted domain) +ir.actions.act_window: hr_recruitment.mail_activity_type_action_config_hr_applicant (deleted domain) +NEW ir.actions.server: hr_recruitment.action_job_add_applicants +DEL ir.actions.server: hr_recruitment.action_applicant_send_mail +DEL ir.model.access: hr_recruitment.access_applicant_get_refuse_reason +DEL ir.model.access: hr_recruitment.access_applicant_get_refuse_reason_interviewer +DEL ir.model.access: hr_recruitment.access_applicant_send_mail +DEL ir.model.access: hr_recruitment.access_applicant_send_mail_interviewer +DEL ir.model.access: hr_recruitment.access_calendar_event_hruser +DEL ir.model.access: hr_recruitment.access_calendar_event_type_hr_officer +DEL ir.model.access: hr_recruitment.access_hr_applicant_category +DEL ir.model.access: hr_recruitment.access_hr_applicant_category_manager +DEL ir.model.access: hr_recruitment.access_hr_applicant_interviewer +DEL ir.model.access: hr_recruitment.access_hr_applicant_user +DEL ir.model.access: hr_recruitment.access_hr_job_interviewer +DEL ir.model.access: hr_recruitment.access_hr_job_platform +DEL ir.model.access: hr_recruitment.access_hr_job_user +DEL ir.model.access: hr_recruitment.access_hr_recruitment_degree +DEL ir.model.access: hr_recruitment.access_hr_recruitment_refuse_reason +DEL ir.model.access: hr_recruitment.access_hr_recruitment_refuse_reason_interviewer +DEL ir.model.access: hr_recruitment.access_hr_recruitment_source_all +DEL ir.model.access: hr_recruitment.access_hr_recruitment_source_hr_officer +DEL ir.model.access: hr_recruitment.access_hr_recruitment_stage_interviewer +DEL ir.model.access: hr_recruitment.access_hr_recruitment_stage_manager +DEL ir.model.access: hr_recruitment.access_hr_recruitment_stage_user +DEL ir.model.access: hr_recruitment.access_hr_talent_pool +DEL ir.model.access: hr_recruitment.access_hr_talent_pool_interviewer +DEL ir.model.access: hr_recruitment.access_job_add_applicants +DEL ir.model.access: hr_recruitment.access_job_add_applicants_interviewer +DEL ir.model.access: hr_recruitment.access_mail_activity_plan_hr_recruitment_manager +DEL ir.model.access: hr_recruitment.access_mail_activity_plan_template_hr_recruitment_manager +DEL ir.model.access: hr_recruitment.access_res_partner_hr_user +DEL ir.model.access: hr_recruitment.access_talent_pool_add_applicants +DEL ir.model.access: hr_recruitment.access_talent_pool_add_applicants_interviewer +ir.model.constraint: hr_recruitment.constraint_hr_applicant_category_name_uniq (changed definition: is now 'False' ('unique (name)')) +ir.model.constraint: hr_recruitment.constraint_hr_applicant_job_id_stage_id_idx (changed definition: is now 'False' ('INDEX (job_id, stage_id) WHERE active IS TRUE')) +ir.model.constraint: hr_recruitment.constraint_hr_job_platform_email_uniq (changed definition: is now 'False' ('unique (email)')) +ir.model.constraint: hr_recruitment.constraint_hr_recruitment_degree_name_uniq (changed definition: is now 'False' ('unique (name)')) +ir.model.constraint: hr_recruitment.constraint_hr_recruitment_degree_score_range (changed definition: is now 'False' ('check(score >= 0 and score <= 1)')) +DEL ir.rule: hr_recruitment.hr_applicant_comp_rule (noupdate) +DEL ir.rule: hr_recruitment.hr_applicant_interviewer_rule (noupdate) +DEL ir.rule: hr_recruitment.hr_applicant_user_rule (noupdate) +DEL ir.rule: hr_recruitment.hr_job_user_rule (noupdate) +DEL ir.rule: hr_recruitment.hr_talent_pool_user_rule (noupdate) +DEL ir.rule: hr_recruitment.mail_message_user_rule (noupdate) +DEL ir.rule: hr_recruitment.mail_plan_rule_group_hr_recruitment_manager_applicant (noupdate) +DEL ir.rule: hr_recruitment.mail_plan_templates_rule_group_hr_recruitment_manager_applicant (noupdate) +NEW ir.ui.menu: hr_recruitment.menu_hr_job_tag_menu +NEW ir.ui.menu: hr_recruitment.menu_hr_recruitment_utm_campaigns +ir.ui.view: hr_recruitment.applicant_hired_template (noupdate switched) +NEW ir.ui.view: hr_recruitment.applicant_refuse_single_view_form +NEW ir.ui.view: hr_recruitment.hr_employee_view_form_inherit_applicant_button +NEW ir.ui.view: hr_recruitment.hr_job_tag_view_form +NEW ir.ui.view: hr_recruitment.hr_job_tag_view_list +NEW ir.ui.view: hr_recruitment.job_add_applicants_from_job_view_form +ir.ui.view: hr_recruitment.mail_notification_light_without_background (noupdate switched) +DEL ir.ui.view: hr_recruitment.applicant_send_mail_view_form +mail.message.subtype: hr_recruitment.mt_applicant_hired (noupdate switched) +mail.message.subtype: hr_recruitment.mt_applicant_new (noupdate switched) +mail.message.subtype: hr_recruitment.mt_applicant_stage_changed (noupdate switched) +mail.message.subtype: hr_recruitment.mt_department_new (noupdate switched) +mail.message.subtype: hr_recruitment.mt_job_applicant_hired (noupdate switched) +mail.message.subtype: hr_recruitment.mt_job_applicant_new (noupdate switched) +mail.message.subtype: hr_recruitment.mt_job_applicant_stage_changed (noupdate switched) +mail.message.subtype: hr_recruitment.mt_job_new (noupdate switched) +mail.message.subtype: hr_recruitment.mt_talent_new (noupdate switched) +mail.template: hr_recruitment.email_template_data_applicant_congratulations (noupdate switched) +mail.template: hr_recruitment.email_template_data_applicant_interest (noupdate switched) +mail.template: hr_recruitment.email_template_data_applicant_not_interested (noupdate switched) +mail.template: hr_recruitment.email_template_data_applicant_refuse (noupdate switched) +res.groups: base.group_user (noupdate switched) +res.groups: hr_recruitment.group_applicant_cv_display (noupdate switched) +res.groups: hr_recruitment.group_hr_recruitment_interviewer (noupdate switched) +res.groups: hr_recruitment.group_hr_recruitment_manager (noupdate switched) +res.groups: hr_recruitment.group_hr_recruitment_user (noupdate switched) +res.groups.privilege: hr_recruitment.res_groups_privilege_recruitment (noupdate switched) +utm.campaign: hr_recruitment.utm_campaign_job (noupdate switched) diff --git a/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..2e7e7a856f2 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + mail.mail_notification_layout + + diff --git a/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..cde3a9f53db --- /dev/null +++ b/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "hr_recruitment_survey", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..10667a07805 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,49 @@ +---Models in module 'hr_recruitment_survey'--- +new model hr.recruitment.survey.invite [transient] +---Fields in module 'hr_recruitment_survey'--- +---XML records in module 'hr_recruitment_survey'--- +NEW ir.access: hr_recruitment_survey.survey_invite_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_invite_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_invite_recruitment_user +NEW ir.access: hr_recruitment_survey.survey_question_answer_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_question_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_question_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_survey_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_survey_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_user_input_line_rule_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_user_input_line_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_user_input_line_rule_recruitment_user +NEW ir.access: hr_recruitment_survey.survey_user_input_rule_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_user_input_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_user_input_rule_recruitment_user +ir.actions.act_window: hr_recruitment_survey.survey_survey_action_recruitment (deleted domain) +NEW ir.actions.server: hr_recruitment_survey.action_applicant_send_interview +DEL ir.model.access: hr_recruitment_survey.access_survey_invite_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_invite_recruitment_user +DEL ir.model.access: hr_recruitment_survey.access_survey_question_answer_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_question_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_question_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_survey_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_survey_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_line_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_line_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_line_recruitment_user +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_recruitment_user +DEL ir.rule: hr_recruitment_survey.survey_invite_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_invite_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_invite_recruitment_user (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_question_answer_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_question_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_question_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_survey_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_survey_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_line_rule_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_line_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_line_rule_recruitment_user (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_rule_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_rule_recruitment_user (noupdate) +NEW ir.ui.view: hr_recruitment_survey.hr_recruitment_survey_invite_view_form +mail.template: hr_recruitment_survey.mail_template_applicant_interview_invite (noupdate switched) diff --git a/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..374449a47f5 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_recruitment_survey/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,56 @@ +---Models in module 'hr_recruitment_survey'--- +new model hr.recruitment.survey.invite [transient] +# NOTHING TO DO: a transient model holds no persistent data +---Fields in module 'hr_recruitment_survey'--- +---XML records in module 'hr_recruitment_survey'--- +NEW ir.access: hr_recruitment_survey.survey_invite_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_invite_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_invite_recruitment_user +NEW ir.access: hr_recruitment_survey.survey_question_answer_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_question_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_question_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_survey_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_survey_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_user_input_line_rule_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_user_input_line_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_user_input_line_rule_recruitment_user +NEW ir.access: hr_recruitment_survey.survey_user_input_rule_recruitment_interviewer +NEW ir.access: hr_recruitment_survey.survey_user_input_rule_recruitment_manager +NEW ir.access: hr_recruitment_survey.survey_user_input_rule_recruitment_user +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.actions.act_window: hr_recruitment_survey.survey_survey_action_recruitment (deleted domain) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites the domain +NEW ir.actions.server: hr_recruitment_survey.action_applicant_send_interview +# NOTHING TO DO: the record is not noupdate, so the module update creates it +DEL ir.model.access: hr_recruitment_survey.access_survey_invite_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_invite_recruitment_user +DEL ir.model.access: hr_recruitment_survey.access_survey_question_answer_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_question_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_question_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_survey_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_survey_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_line_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_line_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_line_recruitment_user +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_recruitment_interviewer +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_recruitment_manager +DEL ir.model.access: hr_recruitment_survey.access_survey_user_input_recruitment_user +DEL ir.rule: hr_recruitment_survey.survey_invite_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_invite_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_invite_recruitment_user (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_question_answer_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_question_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_question_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_survey_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_survey_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_line_rule_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_line_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_line_rule_recruitment_user (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_rule_recruitment_interviewer (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_rule_recruitment_manager (noupdate) +DEL ir.rule: hr_recruitment_survey.survey_user_input_rule_recruitment_user (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +NEW ir.ui.view: hr_recruitment_survey.hr_recruitment_survey_invite_view_form +# NOTHING TO DO: the record is not noupdate, so the module update creates it +mail.template: hr_recruitment_survey.mail_template_applicant_interview_invite (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..262d61a6f37 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,24 @@ + + + + Can manage timesheets for all employees, but can only approve timesheets and billing targets for their team members. Has access to reporting. + + + Can only manage their own timesheets. + + + Can manage and approve all timesheets, with access to reporting and configuration. + + + False + + + [ + ('project_id', '!=', False), + ('project_id.privacy_visibility', 'in', ['invited_users', 'portal']), + ('project_id.collaborator_ids.partner_id', 'in', [user.partner_id.id]), + ] + + r + + diff --git a/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..12fb647884c --- /dev/null +++ b/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/post-migration.py @@ -0,0 +1,19 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "hr_timesheet", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "hr_timesheet", + [ + "group_hr_timesheet_approver", + "group_hr_timesheet_user", + "group_timesheet_manager", + ], + ["comment"], + ) diff --git a/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..4e846c4b9b7 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_timesheet/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,72 @@ +---Models in module 'hr_timesheet'--- +---Fields in module 'hr_timesheet'--- +hr_timesheet / account.analytic.applicability / business_domain (False) : selection_keys removed: [purchase_order] +hr_timesheet / account.analytic.line / sequence (integer) : NEW hasdefault: default +hr_timesheet / project.task / portal_timesheet_ids (one2many): NEW relation: account.analytic.line +hr_timesheet / project.task / show_portal_timesheets (boolean): NEW hasdefault: default, stored: False +---XML records in module 'hr_timesheet'--- +DEL digest.tip: hr_timesheet.digest_tip_hr_timesheet_0 +NEW ir.access: hr_timesheet.access_account_analytic_line_calendar_employee +NEW ir.access: hr_timesheet.access_account_analytic_user +NEW ir.access: hr_timesheet.access_hr_employee_delete_wizard_hr_user +NEW ir.access: hr_timesheet.access_uom_uom_hr_timesheet +NEW ir.access: hr_timesheet.project_project_manager_rule +NEW ir.access: hr_timesheet.project_public_members_rule +NEW ir.access: hr_timesheet.timesheet_analysis_report_approver +NEW ir.access: hr_timesheet.timesheet_analysis_report_department_manager +NEW ir.access: hr_timesheet.timesheet_analysis_report_manager +NEW ir.access: hr_timesheet.timesheet_analysis_report_manager_1 +NEW ir.access: hr_timesheet.timesheet_analysis_report_user +NEW ir.access: hr_timesheet.timesheet_line_rule_approver +NEW ir.access: hr_timesheet.timesheet_line_rule_manager +NEW ir.access: hr_timesheet.timesheet_line_rule_manager_1 +NEW ir.access: hr_timesheet.timesheet_line_rule_portal_user +NEW ir.access: hr_timesheet.timesheet_line_rule_user +NEW ir.access: hr_timesheet.timesheets_analysis_report_comp_rule +ir.actions.act_window: hr_timesheet.act_hr_timesheet_line (deleted domain) +ir.actions.act_window: hr_timesheet.act_hr_timesheet_line_by_project (deleted domain) +ir.actions.act_window: hr_timesheet.act_hr_timesheet_report (deleted domain) +ir.actions.act_window: hr_timesheet.timesheet_action_all (deleted domain) +ir.actions.act_window: hr_timesheet.timesheet_action_from_employee (deleted domain) +ir.actions.act_window: hr_timesheet.timesheet_action_project (deleted domain) +ir.actions.act_window: hr_timesheet.timesheet_action_report_by_project (deleted domain) +ir.actions.act_window: hr_timesheet.timesheet_action_report_by_task (deleted domain) +ir.actions.act_window: hr_timesheet.timesheet_action_task (deleted domain) +ir.actions.act_window: project.open_view_project_all (deleted domain) +ir.actions.act_window: project.open_view_project_all_group_stage (deleted domain) +NEW ir.actions.server: hr_timesheet.action_server_print_project_timesheets +NEW ir.actions.server: hr_timesheet.action_server_print_task_timesheets +DEL ir.model.access: hr_timesheet.access_account_analytic_line_calendar_employee +DEL ir.model.access: hr_timesheet.access_account_analytic_line_portal_user (noupdate) +DEL ir.model.access: hr_timesheet.access_account_analytic_line_user +DEL ir.model.access: hr_timesheet.access_account_analytic_user +DEL ir.model.access: hr_timesheet.access_hr_employee_delete_wizard +DEL ir.model.access: hr_timesheet.access_project_project +DEL ir.model.access: hr_timesheet.access_timesheets_analysis_report +DEL ir.model.access: hr_timesheet.access_uom_uom_hr_timesheet +DEL ir.rule: hr_timesheet.timesheet_analysis_report_approver (noupdate) +DEL ir.rule: hr_timesheet.timesheet_analysis_report_department_manager (noupdate) +DEL ir.rule: hr_timesheet.timesheet_analysis_report_manager (noupdate) +DEL ir.rule: hr_timesheet.timesheet_analysis_report_user (noupdate) +DEL ir.rule: hr_timesheet.timesheet_line_rule_approver (noupdate) +DEL ir.rule: hr_timesheet.timesheet_line_rule_manager (noupdate) +DEL ir.rule: hr_timesheet.timesheet_line_rule_portal_user (noupdate) +DEL ir.rule: hr_timesheet.timesheet_line_rule_user (noupdate) +DEL ir.rule: hr_timesheet.timesheets_analysis_report_comp_rule (noupdate) +NEW ir.ui.view: hr_timesheet.portal_timesheet_table_with_total +NEW ir.ui.view: hr_timesheet.project_sharing_inherit_project_task_view_card +NEW ir.ui.view: hr_timesheet.quick_create_account_analytic_line_form +NEW ir.ui.view: hr_timesheet.view_project_card_inherited +NEW ir.ui.view: hr_timesheet.view_task_card_inherited_progress +DEL ir.ui.view: hr_timesheet.portal_my_home_timesheet +DEL ir.ui.view: hr_timesheet.project_project_view_form_simplified_inherit_timesheet +DEL ir.ui.view: hr_timesheet.project_sharing_kanban_inherit_project_task_view_kanban +DEL ir.ui.view: hr_timesheet.view_project_kanban_inherited +DEL ir.ui.view: hr_timesheet.view_task_kanban_inherited_progress +NEW portal.entry: hr_timesheet.portal_timesheets +res.groups: hr_timesheet.group_hr_timesheet_approver (noupdate switched) +res.groups: hr_timesheet.group_hr_timesheet_user (noupdate switched) +res.groups: hr_timesheet.group_timesheet_manager (noupdate switched) +res.groups.privilege: hr_timesheet.res_groups_privilege_timesheets (noupdate switched) +uom.uom: uom.product_uom_day (noupdate switched) +uom.uom: uom.product_uom_hour (noupdate switched) diff --git a/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..3843a31a1cb --- /dev/null +++ b/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,396 @@ + + + + absence + + + absence + + + absence + + + AU.OT.PH + Overtime: Public Holiday + + + AU.OT + Overtime: Week Day + + + AU.OT.SAT + + + AU.OT.PH.SAT + Overtime: Saturday & Public Holiday + + + AU.OT.SUN + + + AU.OT.PH.SUN + Overtime: Sunday & Public Holiday + + + absence + + + absence + + + 006.00 + Public holiday + absence + PH + + + 146.00 + Breast-feeding leave + 0.0 + absence + BFB + + + 147.00 + Time credit (with/no motif) + 0.0 + absence + CRT + + + + 137.00 + Economic unemployment + 0.0 + absence + ECO + + + + 142.20 + absence + EUR + + + 011.00 + Extra-legal holiday + absence + XLT + + + 024.04 + Flemish Training Leave (unlimited) + absence + FED + + + 123.00 + Days of illness after 12 months + 0.0 + absence + LTS + + + 128.00 + Maternity leave + 0.0 + absence + MAT + + + 147.07 + Thematic leave - Medical assistance + 0.0 + absence + MED + + + + 147.05 + Parental leave + 0.0 + absence + PAR + + + + 122.04 + Reintegration journey < 12 months + 0.0 + absence + PIN + + + + 007.05 + Leave for Birth (days 1-3) + absence + PTC + + + 128.05 + Leave for birth (days 4-20) + 0.0 + absence + PTL + + + 006.15 + Replacement public holiday + absence + PHC + + + 046.00 + Recovered overtime + absence + RAT + + + 007.00 + Circumstancial leave + absence + SUH + + + 022.00 + Absence during notice + absence + SOL + + + 132.00 + Strike recognized by trade union Or Lock-out + 0.0 + absence + STR + + + 020.00 + Non-productive absence + TRN + + + 024.00 + Educational leave (unlimited) + absence + EDU + + + 155.00 + Illegitimate absence + 0.0 + absence + UJR + + + 135.00 + Imperative family reason (days 1-10/year) + 0.0 + absence + URU + + + 142.99 + Holiday junior worker + 0.0 + absence + YTO + + + absence + + + absence + + + working_time + + + absence + + + absence + + + absence + + + working_time + + + absence + + + absence + + + absence + + + absence + + + working_time + + + working_time + + + working_time + + + 0.0 + absence + + + 006.00 + Public holiday + absence + + + absence + + + 0.75 + absence + + + 0.0 + absence + + + absence + + + absence + + + absence + + + absence + + + absence + + + absence + + + absence + + + 006.00 + Public holiday + absence + + + absence + + + absence + + + absence + + + absence + + + absence + + + absence + + + absence + + + 006.00 + Public holiday + absence + + + absence + + + 0.0 + absence + + + 0.0 + absence + + + 0.0 + absence + + + 0.0 + absence + + + 0.0 + absence + + + absence + + + absence + + + absence + + + Sick Time Off (Unpaid) + 5 + absence + STO + + + Sick Time Off 75% + 5 + absence + STO + + + absence + + + absence + + + absence + + + absence + + + absence + + + Double Time (2x) + + + Overtime (1.5x) + + + 006.00 + Public holiday + absence + + + 4 + working_time + + + 4 + working_time + + + 4 + working_time + + diff --git a/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..cd41219264e --- /dev/null +++ b/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/post-migration.py @@ -0,0 +1,64 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "hr_work_entry", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "hr_work_entry", + ["l10n_be_work_entry_type_european"], + ["display_code"], + ) + openupgrade.delete_record_translations( + env.cr, + "hr_work_entry", + [ + "l10n_be_work_entry_type_bank_holiday", + "l10n_be_work_entry_type_breast_feeding", + "l10n_be_work_entry_type_credit_time", + "l10n_be_work_entry_type_economic_unemployment", + "l10n_be_work_entry_type_extra_legal", + "l10n_be_work_entry_type_flemish_training_time_off", + "l10n_be_work_entry_type_long_sick", + "l10n_be_work_entry_type_maternity", + "l10n_be_work_entry_type_medical_assistance", + "l10n_be_work_entry_type_parental_time_off", + "l10n_be_work_entry_type_partial_incapacity", + "l10n_be_work_entry_type_paternity_company", + "l10n_be_work_entry_type_paternity_legal", + "l10n_be_work_entry_type_phc", + "l10n_be_work_entry_type_recovery_additional", + "l10n_be_work_entry_type_small_unemployment", + "l10n_be_work_entry_type_solicitation_time_off", + "l10n_be_work_entry_type_strike", + "l10n_be_work_entry_type_training", + "l10n_be_work_entry_type_training_time_off", + "l10n_be_work_entry_type_unjustified_reason", + "l10n_be_work_entry_type_unpredictable", + "l10n_be_work_entry_type_youth_time_off", + "l10n_sa_work_entry_type_sick_leave_0", + "l10n_sa_work_entry_type_sick_leave_75", + ], + ["display_code", "name"], + ) + openupgrade.delete_record_translations( + env.cr, + "hr_work_entry", + [ + "l10n_au_work_entry_type_overtime_pto", + "l10n_au_work_entry_type_overtime_regular", + "l10n_au_work_entry_type_overtime_saturday_pto", + "l10n_au_work_entry_type_overtime_sunday_pto", + "l10n_ch_work_entry_type_bank_holiday", + "l10n_hk_work_entry_type_public_holiday", + "l10n_id_work_entry_type_public_holiday", + "l10n_us_work_entry_type_double", + "l10n_us_work_entry_type_overtime", + "uae_public_holiday_entry_type", + ], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/pre-migration.py b/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/pre-migration.py new file mode 100644 index 00000000000..78ac9eb0185 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/pre-migration.py @@ -0,0 +1,29 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + +# 20.0 prefixes the country-neutral work entry types with "generic_" to tell +# them apart from the localisation ones that share a code. +_renamed_xmlids = [ + (f"hr_work_entry.{old}", f"hr_work_entry.generic_{old}") + for old in ( + "work_entry_type_attendance", + "work_entry_type_overtime", + "hr_work_entry_type_out_of_contract", + "work_entry_type_leave", + "work_entry_type_compensatory", + "work_entry_type_home_working", + "work_entry_type_unpaid_leave", + "work_entry_type_sick_leave", + "work_entry_type_legal_leave", + ) +] + + +@openupgrade.migrate() +def migrate(env, version): + # Without this the data load inserts a second country-less record for each + # code and _check_code_unicity rejects it: "Time type ... of code LEAVE100, + # with no country assigned, already exists". + openupgrade.rename_xmlids(env.cr, _renamed_xmlids) diff --git a/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..533cd489528 --- /dev/null +++ b/openupgrade_scripts/scripts/hr_work_entry/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,774 @@ +---Models in module 'hr_work_entry'--- +obsolete model hr.work.entry +obsolete model hr.work.entry.regeneration.wizard [transient] +new model hr.export.work.entries [transient] +new model hr.export.work.entries.employee [transient] +new model hr.time.rule +new model hr.time.rule.source.mixin [abstract] +---Fields in module 'hr_work_entry'--- +hr_work_entry / hr.employee / external_code (char) : NEW +hr_work_entry / hr.time.rule / active (boolean) : NEW hasdefault: default +hr_work_entry / hr.time.rule / amount_rate (float) : NEW hasdefault: compute +hr_work_entry / hr.time.rule / apply_friday (boolean) : NEW hasdefault: default +hr_work_entry / hr.time.rule / apply_monday (boolean) : NEW hasdefault: default +hr_work_entry / hr.time.rule / apply_on_public_holidays (boolean): NEW hasdefault: default +hr_work_entry / hr.time.rule / apply_saturday (boolean) : NEW hasdefault: default +hr_work_entry / hr.time.rule / apply_sunday (boolean) : NEW hasdefault: default +hr_work_entry / hr.time.rule / apply_thursday (boolean) : NEW hasdefault: default +hr_work_entry / hr.time.rule / apply_tuesday (boolean) : NEW hasdefault: default +hr_work_entry / hr.time.rule / apply_wednesday (boolean) : NEW hasdefault: default +hr_work_entry / hr.time.rule / calendar_source (selection) : NEW selection_keys: ['employee', 'reference'], hasdefault: compute +hr_work_entry / hr.time.rule / company_id (many2one) : NEW relation: res.company +hr_work_entry / hr.time.rule / condition_work_entry_type_ids (many2many): NEW relation: hr.work.entry.type, required +hr_work_entry / hr.time.rule / country_id (many2one) : NEW relation: res.country, hasdefault: compute +hr_work_entry / hr.time.rule / description (text) : NEW +hr_work_entry / hr.time.rule / employee_domain (char) : NEW hasdefault: default +hr_work_entry / hr.time.rule / employee_tolerance (float) : NEW +hr_work_entry / hr.time.rule / employer_tolerance (float) : NEW +hr_work_entry / hr.time.rule / expected_hours (float) : NEW hasdefault: compute +hr_work_entry / hr.time.rule / name (char) : NEW required +hr_work_entry / hr.time.rule / quantity_period (selection) : NEW selection_keys: ['day', 'week'], isfunction: function, stored +hr_work_entry / hr.time.rule / resource_calendar_id (many2one): NEW relation: resource.calendar +hr_work_entry / hr.time.rule / sequence (integer) : NEW hasdefault: default +hr_work_entry / hr.time.rule / threshold_operator (selection): NEW required, selection_keys: ['exceed', 'less_than'], hasdefault: default +hr_work_entry / hr.time.rule / timing_start (float) : NEW hasdefault: default +hr_work_entry / hr.time.rule / timing_stop (float) : NEW hasdefault: default +hr_work_entry / hr.time.rule / week_start (selection) : NEW selection_keys: ['0', '1', '2', '3', '4', '5', '6'], hasdefault: default +hr_work_entry / hr.time.rule / work_entry_type_id (many2one) : NEW relation: hr.work.entry.type +hr_work_entry / hr.time.rule / working_hours_mode (selection): NEW required, selection_keys: ['day', 'schedule_day', 'schedule_week', 'week'], hasdefault: default +hr_work_entry / hr.version / date_generated_from (datetime): DEL required +hr_work_entry / hr.version / date_generated_to (datetime) : DEL required +hr_work_entry / hr.version / last_generation_date (date) : DEL +hr_work_entry / hr.version / work_entry_source (selection) : DEL required, selection_keys: ['calendar'] +hr_work_entry / hr.work.entry / active (boolean) : DEL +hr_work_entry / hr.work.entry / amount_rate (float) : DEL +hr_work_entry / hr.work.entry / company_id (many2one) : DEL relation: res.company, required +hr_work_entry / hr.work.entry / conflict (boolean) : DEL +hr_work_entry / hr.work.entry / date (date) : DEL required +hr_work_entry / hr.work.entry / department_id (many2one) : DEL relation: hr.department +hr_work_entry / hr.work.entry / duration (float) : DEL +hr_work_entry / hr.work.entry / employee_id (many2one) : DEL relation: hr.employee, required +hr_work_entry / hr.work.entry / name (char) : DEL +hr_work_entry / hr.work.entry / state (selection) : DEL selection_keys: ['cancelled', 'conflict', 'draft', 'validated'] +hr_work_entry / hr.work.entry / version_id (many2one) : DEL relation: hr.version, required +hr_work_entry / hr.work.entry / work_entry_type_id (many2one) : DEL relation: hr.work.entry.type +hr_work_entry / hr.work.entry.type / _order : _order is now 'sequence' ('id') +hr_work_entry / hr.work.entry.type / activity_ids (one2many) : NEW relation: mail.activity +hr_work_entry / hr.work.entry.type / count_as (selection) : NEW required, selection_keys: ['absence', 'working_time'], hasdefault: default +hr_work_entry / hr.work.entry.type / description (text) : NEW translate +hr_work_entry / hr.work.entry.type / is_extra_hours (boolean) : DEL +hr_work_entry / hr.work.entry.type / is_leave (boolean) : DEL +hr_work_entry / hr.work.entry.type / message_follower_ids (one2many): NEW relation: mail.followers +hr_work_entry / hr.work.entry.type / message_ids (one2many) : NEW relation: mail.message +hr_work_entry / hr.work.entry.type / rating_ids (one2many) : NEW relation: rating.rating +hr_work_entry / hr.work.entry.type / resource_calendar_attendance_ids (one2many): NEW relation: resource.calendar.attendance +hr_work_entry / hr.work.entry.type / resource_calendar_selectable (boolean): NEW hasdefault: compute +hr_work_entry / res.company / external_code (char) : NEW +hr_work_entry_holidays / hr.leave.type / work_entry_type_id (many2one) : DEL relation: hr.work.entry.type +hr_work_entry_holidays / hr.work.entry / leave_id (many2one) : DEL relation: hr.leave +hr_work_entry_holidays / hr.work.entry.type / leave_type_ids (one2many) : DEL relation: hr.leave.type +---XML records in module 'hr_work_entry'--- +NEW hr.time.rule: hr_work_entry.hr_time_rule_employee_schedule +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_ae_day_time +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_ae_night_time_1 +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_ae_night_time_2 +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_ae_off_days +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_eg_public_holidays +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_eg_rest_days +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_eg_work_days_daytime +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_eg_work_days_nighttime_early +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_eg_work_days_nighttime_evening +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_id_beyond_first_hour +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_id_first_hour +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_iq_day_time_1 +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_iq_day_time_2 +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_iq_night_time_1 +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_iq_night_time_2 +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_jo_public_holidays +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_jo_rest_days +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_jo_week_days +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_om_normal_rest_days +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_om_normal_workdays_daytime +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_om_normal_workdays_nighttime_early +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_om_normal_workdays_nighttime_late +NEW hr.time.rule: hr_work_entry.hr_time_rule_l10n_sa_workdays +NEW hr.work.entry.type: hr_work_entry.au_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.au_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.bd_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.bd_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.be_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_additional_hours +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_additional_hours_100 +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_additional_hours_50 +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.be_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.ch_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.ch_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.ch_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.ch_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.ch_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.ch_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.ch_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.ch_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.ch_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.eg_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.eg_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.eg_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.eg_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.eg_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.eg_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.eg_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.eg_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.eg_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.fr_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.fr_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.generic_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.generic_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.hk_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.hk_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.hk_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.hk_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.hk_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.hk_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.hk_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.hk_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.id_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.id_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.id_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.id_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.id_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.id_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.id_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.id_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.in_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.in_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.iq_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_compassionate_leave +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_day_overtime +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_iddah_leave +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_maternity_leave +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_night_overtime +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_public_duty +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_trade_union_duty +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.iq_work_entry_type_wedding_leave +NEW hr.work.entry.type: hr_work_entry.it_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.it_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.jo_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.jo_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.ke_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.ke_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ae_work_entry_type_weekend +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_annual_leave +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_community_service_leave +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_compensation (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_defence (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_family_domestic_violence_leave +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_long_service_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_overtime_pto (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_overtime_regular (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_overtime_saturday (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_overtime_saturday_pto (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_overtime_sunday (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_overtime_sunday_pto (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_parental (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_personal_leave (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_public_holiday_saturday +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_public_holiday_sunday +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_public_holiday_week_day +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_rostered_days_off +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_saturday_shift +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_sunday_shift +NEW hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_time_off_in_lieu +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_occupational_disease_unpaid +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_adoption_company +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_adoption_legal +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_available_not_working +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_bank_holiday (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_breast_feeding (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_breast_feeding_unassimilated +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_civic_duty_unpaid +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_common_law_illness_after_legal_period +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_common_law_illness_ami +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_common_law_illness_attributable_to_worker +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_common_law_illness_non_attributable_to_worker +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_construction_bad_weather_first_day +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_construction_imperative_maintained_salary +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_credit_time (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_death_close_family +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_economic_unemployment (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_economic_unemployment_refused_by_administration +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_end_of_carreer_exemption +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_environmental_protection +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_european (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_extra_legal (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_extra_legal_public_holiday +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_extra_legal_sectoral_holiday +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_flemish_training_time_off (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_flemish_training_time_off_with_meal_voucher +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_foster_care +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_guaranteed_wage_interrupted_day_illness +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_holiday_previous_vacation_credit_year +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_justified_reason_paid +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_justified_reason_unpaid +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_leave_palliative_care +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_long_sick (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_maternity (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_maternity_time_off_converted +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_medical_assistance (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_militia_obligation +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_non_provided_service_childminders +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_non_taxable_political_service +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_normal_inactivity +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_other_presence +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_other_training +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_overtime_no_onss +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_overtime_no_onss_horeca +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_overtime_recoverable +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_paid_absence +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_paid_compensatory_rest +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_parental_time_off (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_partial_incapacity (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_partial_incapacity_unassimilated +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_paternity_company (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_paternity_legal (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_phc (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_political_leave +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_postponed_paid_time_off_n1 +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_postponed_paid_time_off_n2 +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_prophylactic_time_off +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_prophylactic_time_off_maternity_protection +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_public_holiday_temporary_unemployment +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_public_holiday_temporary_unemployment_no_onss +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_public_holiday_working_with_recovery +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_public_holiday_working_without_recovery +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_public_mandate_unpaid +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_recovery_additional (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_sailor_time_off +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_schooldays +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_sectoral_compensatory_rest +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_senior_time_off +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_small_unemployment (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_social_judge +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_solicitation_time_off (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_strike (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_economic_unemployement_employee +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_bad_weather +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_collective_closure +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_collective_closure_agreeement +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_collective_closure_reduction +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_dismissal +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_force_majeure +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_force_majeure_medical +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_incident +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_temporary_unemployment_strike +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_thematic_leave_informal_carer +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_time_credit_not_equated +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_training (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_training_social_promotion +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_training_time_off (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_training_time_off_with_meal_voucher +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_union_mission +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_union_mission_unpaid +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_unjustified_reason (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_unpaid_compensatory_rest +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_unpaid_recovered_compensatory_rest +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_unpredictable (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_upcomming_public_holiday +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_voluntary_overtime_150 +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_voluntary_overtime_200 +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_voluntary_overtime_net +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_accident_first_week +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_accident_guaranteed_monthly +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_accident_second_week +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_accident_second_week_short_term_employee +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_accident_unassimilated +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_accident_unpaid +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_incapacity_first_week +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_incapacity_sickness_credit +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_incapacity_worker_after_second_week +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_incapacity_worker_second_week +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_incapacity_worker_second_week_short_term_employee +NEW hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_worker_time_off +hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_youth_time_off (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_accident_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_accident_wt_hourly (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_hourly_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_illness_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_illness_wt_hourly (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_interruption_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_lesson_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_maternity_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_maternity_wt_hourly (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_military_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_military_wt_hourly (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_monthly_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_overtime_125_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_overtime_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_swissdec_unpaid_wt (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_ch_work_entry_type_bank_holiday (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_death +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_hajj +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_marriage +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_maternity +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_overtime_public_holiday +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_overtime_rest_days +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_overtime_work_days_daytime +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_overtime_work_days_nighttime +hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_paid_sick_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_sick_leave_75 (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_sick_leave_unpaid (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_eg_work_entry_type_weekend +NEW hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_annual_leave +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_compassionate_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_examination_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_marriage_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_maternity_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_maternity_leave_80 (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_paternity_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_paternity_leave_80 (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_public_holiday (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_sick_leave_80 (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_statutory_holiday (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_weekend (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_hk_work_entry_type_work_injury_sick_leave_80 +NEW hr.work.entry.type: hr_work_entry.l10n_id_work_entry_type_annual_leave +hr.work.entry.type: hr_work_entry.l10n_id_work_entry_type_bereavement_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_id_work_entry_type_marriage_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_id_work_entry_type_maternity_leave (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_id_work_entry_type_overtime_1 +NEW hr.work.entry.type: hr_work_entry.l10n_id_work_entry_type_overtime_2 +hr.work.entry.type: hr_work_entry.l10n_id_work_entry_type_paternity_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_id_work_entry_type_public_holiday (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_jo_work_entry_type_maternity +NEW hr.work.entry.type: hr_work_entry.l10n_jo_work_entry_type_paternity +NEW hr.work.entry.type: hr_work_entry.l10n_jo_work_entry_type_pilgrimage +NEW hr.work.entry.type: hr_work_entry.l10n_jo_work_entry_type_public_holidays_overtime +NEW hr.work.entry.type: hr_work_entry.l10n_jo_work_entry_type_rest_days_overtime +hr.work.entry.type: hr_work_entry.l10n_jo_work_entry_type_sick_leave_unpaid (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_jo_work_entry_type_study +NEW hr.work.entry.type: hr_work_entry.l10n_jo_work_entry_type_week_days_overtime +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_annual_leave +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_compassionate_leave +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_hajj_leave +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_maternity_leave +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_paid_leave +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_paid_time_off +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_study_leave +NEW hr.work.entry.type: hr_work_entry.l10n_kw_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.l10n_lu_work_entry_type_caring_leave +NEW hr.work.entry.type: hr_work_entry.l10n_lu_work_entry_type_family_reason_leave +NEW hr.work.entry.type: hr_work_entry.l10n_lu_work_entry_type_maternity_leave +NEW hr.work.entry.type: hr_work_entry.l10n_lu_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.l10n_lu_work_entry_type_sick_leave_paid_by_CNS +hr.work.entry.type: hr_work_entry.l10n_lu_work_entry_type_situational_unemployment (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_lu_work_entry_type_welcome_leave +hr.work.entry.type: hr_work_entry.l10n_mx_work_entry_type_care_children_with_cancer_imss (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_mx_work_entry_type_disability_due_to_illness_imss (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_mx_work_entry_type_maternity_imss (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_mx_work_entry_type_work_risk_imss (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_fdrcl +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_hajj +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_iddah +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_maternity +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_overtime_rest_days +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_overtime_special_rest_days +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_overtime_special_work_days_daytime +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_overtime_special_work_days_nighttime +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_overtime_work_days_daytime +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_overtime_work_days_nighttime +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_paternity +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_sdrcl +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_sick_leave_0 +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_sick_leave_100 +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_sick_leave_35 +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_sick_leave_50 +NEW hr.work.entry.type: hr_work_entry.l10n_om_work_entry_type_sick_leave_75 +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_dh_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_dvl_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_mat_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_dbl_hol +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_dbl_hol_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_overtime +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_overtime_dbl_hol +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_overtime_dbl_hol_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_overtime_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_overtime_rh +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_overtime_rh_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_overtime_snw +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_overtime_snw_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_rh +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_rh_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_snw +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_ns_snw_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_out_of_contract +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_overtime +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_overtime_dbl_hol +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_overtime_dbl_hol_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_overtime_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_overtime_rh +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_overtime_rh_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_overtime_snw +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_overtime_snw_rest +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_pat_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_rh_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_sil_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_slfw_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_snwh_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_spl_leave +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_tardiness +NEW hr.work.entry.type: hr_work_entry.l10n_ph_hr_payroll_unpaid_leave +hr.work.entry.type: hr_work_entry.l10n_pl_work_entry_type_sick_leave (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_emergency (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_hajj +NEW hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_iddah +NEW hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_marriage +hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_maternity (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_paternity +hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_sick_leave_0 (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_sick_leave_75 (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_study +NEW hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_weekend +hr.work.entry.type: hr_work_entry.l10n_sk_work_entry_type_maternity (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_sk_work_entry_type_parental_time_off (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_sk_work_entry_type_sick_0 (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_sk_work_entry_type_sick_25 (noupdate switched) +hr.work.entry.type: hr_work_entry.l10n_sk_work_entry_type_sick_55 (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_tr_work_entry_type_bereavement_leave +NEW hr.work.entry.type: hr_work_entry.l10n_tr_work_entry_type_excuse_leave +NEW hr.work.entry.type: hr_work_entry.l10n_tr_work_entry_type_maternity_leave +NEW hr.work.entry.type: hr_work_entry.l10n_tr_work_entry_type_paternity_leave +NEW hr.work.entry.type: hr_work_entry.l10n_us_work_entry_type_bereavement +hr.work.entry.type: hr_work_entry.l10n_us_work_entry_type_double (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_us_work_entry_type_fmla_leave +NEW hr.work.entry.type: hr_work_entry.l10n_us_work_entry_type_jury_duty +hr.work.entry.type: hr_work_entry.l10n_us_work_entry_type_overtime (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.l10n_us_work_entry_type_statutory_holiday +NEW hr.work.entry.type: hr_work_entry.lt_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.lt_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.lu_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.lu_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.ma_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.ma_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.mx_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_seventh_day +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.mx_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.my_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.my_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.nl_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.nl_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.om_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.om_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.ph_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.ph_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.ph_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.ph_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.ph_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.ph_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.ph_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.pk_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.pk_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.pl_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.pl_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.ro_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.ro_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.sa_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.sa_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.sk_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.sk_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.tr_hr_work_entry_type_out_of_contract +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_overtime +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.tr_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.uae_hr_work_entry_type_out_of_contract +hr.work.entry.type: hr_work_entry.uae_public_holiday_entry_type (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.uae_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.uae_work_entry_type_compensatory +NEW hr.work.entry.type: hr_work_entry.uae_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.uae_work_entry_type_leave +NEW hr.work.entry.type: hr_work_entry.uae_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.uae_work_entry_type_overtime +hr.work.entry.type: hr_work_entry.uae_work_entry_type_overtime_off_days (noupdate switched) +hr.work.entry.type: hr_work_entry.uae_work_entry_type_overtime_work_days_daytime (noupdate switched) +hr.work.entry.type: hr_work_entry.uae_work_entry_type_overtime_work_days_nighttime (noupdate switched) +NEW hr.work.entry.type: hr_work_entry.uae_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.uae_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.us_work_entry_type_attendance +NEW hr.work.entry.type: hr_work_entry.us_work_entry_type_home_working +NEW hr.work.entry.type: hr_work_entry.us_work_entry_type_legal_leave +NEW hr.work.entry.type: hr_work_entry.us_work_entry_type_public_holiday +NEW hr.work.entry.type: hr_work_entry.us_work_entry_type_sick_leave +NEW hr.work.entry.type: hr_work_entry.us_work_entry_type_unpaid_leave +NEW hr.work.entry.type: hr_work_entry.work_entry_type_attendance_dbl_hol +NEW hr.work.entry.type: hr_work_entry.work_entry_type_attendance_dbl_hol_rest +NEW hr.work.entry.type: hr_work_entry.work_entry_type_attendance_rest +NEW hr.work.entry.type: hr_work_entry.work_entry_type_attendance_rh +NEW hr.work.entry.type: hr_work_entry.work_entry_type_attendance_rh_rest +NEW hr.work.entry.type: hr_work_entry.work_entry_type_attendance_snw +NEW hr.work.entry.type: hr_work_entry.work_entry_type_attendance_snw_rest +DEL hr.work.entry.type: hr_work_entry.hr_work_entry_type_out_of_contract (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_cash_out (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_other (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_paid_time_off (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_au_work_entry_type_termination (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_additional_paid (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_corona (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_notice (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_part_sick (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_recovery (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_simple_holiday_pay_variable_salary (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_small_unemployment_birth (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_be_work_entry_type_work_accident (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_sa_work_entry_type_sick_leave_100 (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_us_work_entry_type_retro_overtime (noupdate) +DEL hr.work.entry.type: hr_work_entry.l10n_us_work_entry_type_retro_regular (noupdate) +DEL hr.work.entry.type: hr_work_entry.uae_sick_leave_0_entry_type (noupdate) +DEL hr.work.entry.type: hr_work_entry.uae_sick_leave_50_entry_type (noupdate) +DEL hr.work.entry.type: hr_work_entry.work_entry_type_attendance (noupdate) +DEL hr.work.entry.type: hr_work_entry.work_entry_type_compensatory (noupdate) +DEL hr.work.entry.type: hr_work_entry.work_entry_type_home_working (noupdate) +DEL hr.work.entry.type: hr_work_entry.work_entry_type_leave (noupdate) +DEL hr.work.entry.type: hr_work_entry.work_entry_type_legal_leave (noupdate) +DEL hr.work.entry.type: hr_work_entry.work_entry_type_overtime (noupdate) +DEL hr.work.entry.type: hr_work_entry.work_entry_type_sick_leave (noupdate) +DEL hr.work.entry.type: hr_work_entry.work_entry_type_unpaid_leave (noupdate) +NEW ir.access: hr_work_entry.access_hr_work_entry_employee +NEW ir.access: hr_work_entry.access_hr_work_entry_employee_export +NEW ir.access: hr_work_entry.access_hr_work_entry_export +NEW ir.access: hr_work_entry.access_hr_work_entry_type_manager +NEW ir.access: hr_work_entry.access_hr_work_entry_type_officer +NEW ir.access: hr_work_entry.hr_user_work_entry_employee +NEW ir.access: hr_work_entry.ir_rule_hr_export_work_entry_multi_company +NEW ir.access: hr_work_entry.ir_rule_hr_time_rule_multi_company +NEW ir.access: hr_work_entry.ir_rule_hr_work_entry_type_multi_company +NEW ir.actions.act_window: hr_work_entry.action_open_export_wizard +NEW ir.actions.act_window: hr_work_entry.hr_time_rule_action +DEL ir.actions.act_window: hr_work_entry.hr_work_entry_action +DEL ir.actions.act_window: hr_work_entry.hr_work_entry_action_conflict +DEL ir.actions.act_window: hr_work_entry.hr_work_entry_regeneration_wizard_action +NEW ir.actions.server: hr_work_entry.action_hr_employee_export_work_entries +DEL ir.actions.server: hr_work_entry.action_hr_work_entry_set_to_draft +DEL ir.cron: hr_work_entry.ir_cron_generate_missing_work_entries (noupdate) +DEL ir.model.access: hr_work_entry.access_hr_work_entry_employee +DEL ir.model.access: hr_work_entry.access_hr_work_entry_officer +DEL ir.model.access: hr_work_entry.access_hr_work_entry_regeneration_wizard +DEL ir.model.access: hr_work_entry.access_hr_work_entry_system +DEL ir.model.access: hr_work_entry.access_hr_work_entry_type_manager +DEL ir.model.access: hr_work_entry.access_hr_work_entry_type_officer +NEW ir.model.constraint: hr_work_entry.constraint_hr_time_rule_at_least_one_day +NEW ir.model.constraint: hr_work_entry.constraint_hr_time_rule_timing_start_is_hour +NEW ir.model.constraint: hr_work_entry.constraint_hr_time_rule_timing_start_less_than_timing_stop +NEW ir.model.constraint: hr_work_entry.constraint_hr_time_rule_timing_stop_is_hour +ir.model.constraint: hr_work_entry.constraint_hr_user_work_entry_employee_user_id_employee_id_unique (changed definition: is now 'False' ('UNIQUE(user_id,employee_id)')) +DEL ir.model.constraint: hr_work_entry.constraint_hr_work_entry_contract_date_start_stop_idx +DEL ir.rule: hr_work_entry.hr_user_work_entry_employee (noupdate) +DEL ir.rule: hr_work_entry.ir_rule_hr_work_entry_multi_company (noupdate) +DEL ir.rule: hr_work_entry.ir_rule_hr_work_entry_type_multi_company (noupdate) +NEW ir.ui.menu: hr_work_entry.menu_hr_work_entry_type_view_employee +NEW ir.ui.view: hr_work_entry.hr_export_work_entries_wizard +NEW ir.ui.view: hr_work_entry.hr_time_rule_view_form +NEW ir.ui.view: hr_work_entry.hr_time_rule_view_list +NEW ir.ui.view: hr_work_entry.hr_time_rule_view_search +NEW ir.ui.view: hr_work_entry.res_company_view_form_inherit_hr_work_entry +NEW ir.ui.view: hr_work_entry.view_resource_calendar_attendance_calendar +NEW ir.ui.view: hr_work_entry.view_resource_calendar_multi_create_form +DEL ir.ui.view: hr_work_entry.hr_contract_template_view_form +DEL ir.ui.view: hr_work_entry.hr_work_entry_calendar_gantt_view_form +DEL ir.ui.view: hr_work_entry.hr_work_entry_regeneration_wizard +DEL ir.ui.view: hr_work_entry.hr_work_entry_view_calendar +DEL ir.ui.view: hr_work_entry.hr_work_entry_view_calendar_multi_create_form +DEL ir.ui.view: hr_work_entry.hr_work_entry_view_form +DEL ir.ui.view: hr_work_entry.hr_work_entry_view_pivot +DEL ir.ui.view: hr_work_entry.hr_work_entry_view_search +DEL ir.ui.view: hr_work_entry.hr_work_entry_view_tree +DEL ir.ui.view: hr_work_entry_holidays.view_holiday_status_normal_tree +DEL ir.ui.view: hr_work_entry_holidays.work_entry_type_leave_form_inherit diff --git a/openupgrade_scripts/scripts/im_livechat/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/im_livechat/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..dbf9330b978 --- /dev/null +++ b/openupgrade_scripts/scripts/im_livechat/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,75 @@ + + + + Support + + + diff --git a/openupgrade_scripts/scripts/im_livechat/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/im_livechat/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..34ca2673351 --- /dev/null +++ b/openupgrade_scripts/scripts/im_livechat/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "im_livechat", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/im_livechat/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/im_livechat/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..872f3657f6f --- /dev/null +++ b/openupgrade_scripts/scripts/im_livechat/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,114 @@ +---Models in module 'im_livechat'--- +obsolete model im_livechat.conversation.tag +---Fields in module 'im_livechat'--- +im_livechat / chatbot.script / source_id (many2one) : DEL relation: utm.source, required +im_livechat / discuss.channel / livechat_conversation_tag_ids (many2many): DEL relation: im_livechat.conversation.tag +im_livechat / discuss.channel / livechat_looking_for_help_since_dt (datetime): NEW isfunction: function, stored +im_livechat / discuss.channel / livechat_operator_id (many2one): DEL relation: res.partner +im_livechat / discuss.channel / livechat_rating (selection) : NEW selection_keys: ['1', '3', '5'] +im_livechat / discuss.channel / livechat_status (selection) : selection_keys removed: [waiting] +im_livechat / discuss.channel / rating_last_text (selection) : DEL selection_keys: function +im_livechat / discuss.channel / rating_last_value (float) : DEL +im_livechat / im_livechat.channel / rating_ids (one2many) : DEL relation: rating.rating +im_livechat / im_livechat.channel / rating_percentage_satisfaction (integer): type is now 'float' ('integer') +im_livechat / im_livechat.channel.member.history / rating (float) : is now stored +im_livechat / im_livechat.channel.member.history / rating (float) : not related anymore +im_livechat / im_livechat.channel.member.history / rating (float) : now a function +im_livechat / im_livechat.channel.member.history / rating (float) : selection_keys is now '['1', '3', '5']' ('False') +im_livechat / im_livechat.channel.member.history / rating (float) : type is now 'selection' ('float') +im_livechat / im_livechat.channel.member.history / rating_id (many2one) : DEL relation: rating.rating +im_livechat / im_livechat.conversation.tag / color (integer) : DEL +im_livechat / im_livechat.conversation.tag / conversation_ids (many2many) : DEL relation: discuss.channel +im_livechat / im_livechat.conversation.tag / name (char) : DEL required +im_livechat / im_livechat.expertise / color (integer) : NEW +im_livechat / mail.message / chatbot_message_ids (one2many): NEW relation: chatbot.message +---XML records in module 'im_livechat'--- +chatbot.script: im_livechat.chatbot_script_welcome_bot (noupdate switched) +chatbot.script.answer: im_livechat.chatbot_script_welcome_step_dispatch_answer_documentation (noupdate switched) +chatbot.script.answer: im_livechat.chatbot_script_welcome_step_dispatch_answer_just_looking (noupdate switched) +chatbot.script.answer: im_livechat.chatbot_script_welcome_step_dispatch_answer_pricing (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_dispatch (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_documentation_exit (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_documentation_redirect (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_just_looking (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_pricing (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_pricing_email (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_pricing_forward_operator (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_pricing_noone_available (noupdate switched) +chatbot.script.step: im_livechat.chatbot_script_welcome_step_welcome (noupdate switched) +digest.digest: digest.digest_digest_default (noupdate switched) +im_livechat.channel: im_livechat.im_livechat_channel_data (noupdate switched) +NEW ir.access: im_livechat.access_chatbot_message_user +NEW ir.access: im_livechat.access_chatbot_script_answer_user +NEW ir.access: im_livechat.access_chatbot_script_step_user +NEW ir.access: im_livechat.access_chatbot_script_user +NEW ir.access: im_livechat.access_im_livechat_channel_member_history_user +NEW ir.access: im_livechat.access_livechat_channel_manager +NEW ir.access: im_livechat.access_livechat_channel_rule_manager +NEW ir.access: im_livechat.access_livechat_channel_rule_user +NEW ir.access: im_livechat.access_livechat_channel_user +NEW ir.access: im_livechat.access_livechat_expertise_internal_user +NEW ir.access: im_livechat.access_livechat_expertise_livechat_manager +NEW ir.access: im_livechat.access_livechat_support_report_channel +NEW ir.access: im_livechat.ir_rule_discuss_call_history_im_livechat_group_user +NEW ir.access: im_livechat.ir_rule_discuss_channel_im_livechat_group_user +NEW ir.access: im_livechat.ir_rule_discuss_channel_member_im_livechat_group_user +ir.actions.act_window: im_livechat.discuss_channel_action (deleted domain) +ir.actions.act_window: im_livechat.discuss_channel_action_from_livechat_channel (deleted domain) +ir.actions.act_window: im_livechat.im_livechat_agent_history_action (deleted domain) +NEW ir.actions.act_window: im_livechat.im_livechat_channel_config_action +DEL ir.actions.act_window: im_livechat.discuss_channel_looking_for_help_action +DEL ir.actions.act_window: im_livechat.livechat_conversation_tag_action +NEW ir.actions.act_window.view: im_livechat.im_livechat_channel_config_action_kanban +NEW ir.actions.act_window.view: im_livechat.im_livechat_channel_config_action_list +DEL ir.actions.act_window.view: im_livechat.discuss_channel_looking_for_help_action_form +DEL ir.actions.act_window.view: im_livechat.discuss_channel_looking_for_help_action_kanban +DEL ir.actions.act_window.view: im_livechat.discuss_channel_looking_for_help_action_list +DEL ir.model.access: im_livechat.access_chatbot_message_user +DEL ir.model.access: im_livechat.access_chatbot_script_answer +DEL ir.model.access: im_livechat.access_chatbot_script_answer_user +DEL ir.model.access: im_livechat.access_chatbot_script_step_user +DEL ir.model.access: im_livechat.access_chatbot_script_user +DEL ir.model.access: im_livechat.access_im_livechat_channel_member_history_user +DEL ir.model.access: im_livechat.access_livechat_channel_manager +DEL ir.model.access: im_livechat.access_livechat_channel_rule_manager +DEL ir.model.access: im_livechat.access_livechat_channel_rule_user +DEL ir.model.access: im_livechat.access_livechat_channel_user +DEL ir.model.access: im_livechat.access_livechat_conversation_tag_livechat_manager +DEL ir.model.access: im_livechat.access_livechat_conversation_tag_livechat_user +DEL ir.model.access: im_livechat.access_livechat_expertise_internal_user +DEL ir.model.access: im_livechat.access_livechat_expertise_livechat_manager +DEL ir.model.access: im_livechat.access_livechat_support_report_channel +ir.model.constraint: im_livechat.constraint_chatbot_message_channel_id_user_raw_script_answer_id_idx (changed definition: is now 'False' ('INDEX (discuss_channel_id, user_raw_script_answer_id) WHERE user_raw_script_answer_id IS NOT NULL')) +ir.model.constraint: im_livechat.constraint_chatbot_message_unique_mail_message_id (changed definition: is now 'False' ('unique (mail_message_id)')) +ir.model.constraint: im_livechat.constraint_discuss_channel_livechat_channel_type_create_date_idx (changed definition: is now 'False' ('INDEX (channel_type, create_date) WHERE channel_type = 'livechat'')) +ir.model.constraint: im_livechat.constraint_discuss_channel_livechat_end_dt_idx (changed definition: is now 'False' ('INDEX (livechat_end_dt) WHERE livechat_end_dt IS NULL')) +ir.model.constraint: im_livechat.constraint_discuss_channel_livechat_end_dt_status_constraint (changed definition: is now 'False' ('CHECK(livechat_end_dt IS NULL or livechat_status IS NULL)')) +ir.model.constraint: im_livechat.constraint_discuss_channel_livechat_failure_idx (changed definition: is now 'False' ('INDEX (livechat_failure) WHERE livechat_failure IN ('no_answer', 'no_agent')')) +ir.model.constraint: im_livechat.constraint_discuss_channel_livechat_is_escalated_idx (changed definition: is now 'False' ('INDEX (livechat_is_escalated) WHERE livechat_is_escalated IS TRUE')) +NEW ir.model.constraint: im_livechat.constraint_discuss_channel_livechat_looking_for_help_since_dt_constraint +NEW ir.model.constraint: im_livechat.constraint_discuss_channel_livechat_rating_constraint +ir.model.constraint: im_livechat.constraint_im_livechat_channel_max_sessions_mode_greater_than_zero (changed definition: is now 'False' ('CHECK(max_sessions > 0)')) +ir.model.constraint: im_livechat.constraint_im_livechat_channel_member_history_channel_id_guest_id_unique (changed definition: is now 'False' ('UNIQUE INDEX (channel_id, guest_id) WHERE guest_id IS NOT NULL')) +ir.model.constraint: im_livechat.constraint_im_livechat_channel_member_history_channel_id_partner_id_unique (changed definition: is now 'False' ('UNIQUE INDEX (channel_id, partner_id) WHERE partner_id IS NOT NULL')) +ir.model.constraint: im_livechat.constraint_im_livechat_channel_member_history_member_id_unique (changed definition: is now 'False' ('UNIQUE(member_id)')) +ir.model.constraint: im_livechat.constraint_im_livechat_channel_member_history_partner_id_or_guest_3b134909 (changed definition: is now 'False' ('CHECK(partner_id IS NULL OR guest_id IS NULL)')) +ir.model.constraint: im_livechat.constraint_im_livechat_expertise_name_unique (changed definition: is now 'False' ('UNIQUE INDEX (name)')) +DEL ir.model.constraint: im_livechat.constraint_discuss_channel_livechat_operator_id +DEL ir.model.constraint: im_livechat.constraint_im_livechat_conversation_tag_name_unique +DEL ir.rule: im_livechat.ir_rule_discuss_call_history_im_livechat_group_user (noupdate) +DEL ir.rule: im_livechat.ir_rule_discuss_channel_im_livechat_group_user (noupdate) +DEL ir.rule: im_livechat.ir_rule_discuss_channel_member_im_livechat_group_user (noupdate) +NEW ir.ui.menu: im_livechat.livechat_channels_config +DEL ir.ui.menu: im_livechat.menu_livechat_all_conversations +DEL ir.ui.menu: im_livechat.menu_livechat_conversation_tag +DEL ir.ui.menu: im_livechat.menu_livechat_looking_for_help +NEW ir.ui.view: im_livechat.im_livechat_channel_config_view_kanban +NEW ir.ui.view: im_livechat.im_livechat_channel_view_list +ir.ui.view: im_livechat.livechat_email_template (noupdate switched) +DEL ir.ui.view: im_livechat.discuss_channel_looking_for_help_view_kanban +DEL ir.ui.view: im_livechat.discuss_channel_looking_for_help_view_list +DEL ir.ui.view: im_livechat.discuss_channel_looking_for_help_view_search +DEL ir.ui.view: im_livechat.im_livechat_channel_conversation_tag_view_form +DEL ir.ui.view: im_livechat.im_livechat_channel_conversation_tag_view_list +NEW utm.source: im_livechat.utm_source_chatbot diff --git a/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/noupdate_changes.xml b/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/noupdate_changes.xml new file mode 100644 index 00000000000..1686b893e54 --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/noupdate_changes.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/post-migration.py b/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/post-migration.py new file mode 100644 index 00000000000..4497da9aa8b --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "l10n_ar", "20.0.3.7/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/upgrade_analysis.txt b/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/upgrade_analysis.txt new file mode 100644 index 00000000000..a9dd660324f --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_ar/20.0.3.7/upgrade_analysis.txt @@ -0,0 +1,1321 @@ +---Models in module 'l10n_ar'--- +new model l10n_ar.arca.activity +---Fields in module 'l10n_ar'--- +l10n_ar / account.account / l10n_ar_arca_activity_id (many2one): NEW relation: l10n_ar.arca.activity +l10n_ar / l10n_ar.arca.activity / code (char) : NEW required +l10n_ar / l10n_ar.arca.activity / name (char) : NEW required +l10n_ar / l10n_latam.identification.type / l10n_ar_afip_code (char) : DEL +l10n_ar / res.company / l10n_ar_arca_activity_id (many2one): NEW relation: l10n_ar.arca.activity +l10n_ar / res.partner / l10n_ar_afip_code (char) : NEW isfunction: function, stored +l10n_ar / res.partner / l10n_ar_afip_id_value (char) : NEW isfunction: function, stored +l10n_ar / res.partner.bank / account_type (False) : NEW selection_keys: ['aba', 'bank', 'cbu', 'clabe', 'iban'], mode: modify +---XML records in module 'l10n_ar'--- +NEW account.account.tag: l10n_ar.tag_fixed_asset_account +NEW account.account.tag: l10n_ar.tag_leases_rentals_account +NEW ir.access: l10n_ar.access_l10n_ar_afip_responsibility_type_all +NEW ir.access: l10n_ar.access_l10n_ar_arca_activity_manager +NEW ir.access: l10n_ar.access_l10n_ar_arca_activity_user +NEW ir.actions.act_window: l10n_ar.act_arca_activity +DEL ir.model.access: l10n_ar.access_l10n_ar_afip_responsibility_type_all +DEL ir.model.access: l10n_ar.access_l10n_ar_afip_responsibility_type_portal +DEL ir.model.access: l10n_ar.access_l10n_ar_afip_responsibility_type_public +ir.model.constraint: l10n_ar.constraint_l10n_ar_afip_responsibility_type_code_uniq (changed definition: is now 'False' ('unique(code)')) +ir.model.constraint: l10n_ar.constraint_l10n_ar_afip_responsibility_type_name_uniq (changed definition: is now 'False' ('unique(name)')) +NEW ir.model.constraint: l10n_ar.constraint_l10n_ar_arca_activity_code_length +NEW ir.model.constraint: l10n_ar.constraint_l10n_ar_arca_activity_code_unique +NEW ir.ui.menu: l10n_ar.menu_action_arca_activity +NEW ir.ui.view: l10n_ar.uom_uom_view_form +NEW ir.ui.view: l10n_ar.uom_uom_view_list +NEW ir.ui.view: l10n_ar.view_account_account_form +NEW ir.ui.view: l10n_ar.view_account_account_list +NEW ir.ui.view: l10n_ar.view_arca_activity_list +NEW ir.ui.view: l10n_ar.view_arca_activity_search +DEL ir.ui.view: l10n_ar.product_uom_form_view +DEL ir.ui.view: l10n_ar.product_uom_tree_view +NEW l10n_ar.arca.activity: l10n_ar.activity_10 +NEW l10n_ar.arca.activity: l10n_ar.activity_101011 +NEW l10n_ar.arca.activity: l10n_ar.activity_101012 +NEW l10n_ar.arca.activity: l10n_ar.activity_101013 +NEW l10n_ar.arca.activity: l10n_ar.activity_101020 +NEW l10n_ar.arca.activity: l10n_ar.activity_101030 +NEW l10n_ar.arca.activity: l10n_ar.activity_101040 +NEW l10n_ar.arca.activity: l10n_ar.activity_101091 +NEW l10n_ar.arca.activity: l10n_ar.activity_101099 +NEW l10n_ar.arca.activity: l10n_ar.activity_102001 +NEW l10n_ar.arca.activity: l10n_ar.activity_102002 +NEW l10n_ar.arca.activity: l10n_ar.activity_102003 +NEW l10n_ar.arca.activity: l10n_ar.activity_103011 +NEW l10n_ar.arca.activity: l10n_ar.activity_103012 +NEW l10n_ar.arca.activity: l10n_ar.activity_103020 +NEW l10n_ar.arca.activity: l10n_ar.activity_103030 +NEW l10n_ar.arca.activity: l10n_ar.activity_103091 +NEW l10n_ar.arca.activity: l10n_ar.activity_103099 +NEW l10n_ar.arca.activity: l10n_ar.activity_104011 +NEW l10n_ar.arca.activity: l10n_ar.activity_104012 +NEW l10n_ar.arca.activity: l10n_ar.activity_104013 +NEW l10n_ar.arca.activity: l10n_ar.activity_104020 +NEW l10n_ar.arca.activity: l10n_ar.activity_105010 +NEW l10n_ar.arca.activity: l10n_ar.activity_105020 +NEW l10n_ar.arca.activity: l10n_ar.activity_105030 +NEW l10n_ar.arca.activity: l10n_ar.activity_105090 +NEW l10n_ar.arca.activity: l10n_ar.activity_106110 +NEW l10n_ar.arca.activity: l10n_ar.activity_106120 +NEW l10n_ar.arca.activity: l10n_ar.activity_106131 +NEW l10n_ar.arca.activity: l10n_ar.activity_106139 +NEW l10n_ar.arca.activity: l10n_ar.activity_106200 +NEW l10n_ar.arca.activity: l10n_ar.activity_107110 +NEW l10n_ar.arca.activity: l10n_ar.activity_107121 +NEW l10n_ar.arca.activity: l10n_ar.activity_107129 +NEW l10n_ar.arca.activity: l10n_ar.activity_107200 +NEW l10n_ar.arca.activity: l10n_ar.activity_107301 +NEW l10n_ar.arca.activity: l10n_ar.activity_107309 +NEW l10n_ar.arca.activity: l10n_ar.activity_107410 +NEW l10n_ar.arca.activity: l10n_ar.activity_107420 +NEW l10n_ar.arca.activity: l10n_ar.activity_107500 +NEW l10n_ar.arca.activity: l10n_ar.activity_107911 +NEW l10n_ar.arca.activity: l10n_ar.activity_107912 +NEW l10n_ar.arca.activity: l10n_ar.activity_107920 +NEW l10n_ar.arca.activity: l10n_ar.activity_107930 +NEW l10n_ar.arca.activity: l10n_ar.activity_107991 +NEW l10n_ar.arca.activity: l10n_ar.activity_107992 +NEW l10n_ar.arca.activity: l10n_ar.activity_107999 +NEW l10n_ar.arca.activity: l10n_ar.activity_108000 +NEW l10n_ar.arca.activity: l10n_ar.activity_109000 +NEW l10n_ar.arca.activity: l10n_ar.activity_11 +NEW l10n_ar.arca.activity: l10n_ar.activity_110100 +NEW l10n_ar.arca.activity: l10n_ar.activity_110211 +NEW l10n_ar.arca.activity: l10n_ar.activity_110212 +NEW l10n_ar.arca.activity: l10n_ar.activity_110290 +NEW l10n_ar.arca.activity: l10n_ar.activity_110300 +NEW l10n_ar.arca.activity: l10n_ar.activity_110411 +NEW l10n_ar.arca.activity: l10n_ar.activity_110412 +NEW l10n_ar.arca.activity: l10n_ar.activity_110420 +NEW l10n_ar.arca.activity: l10n_ar.activity_110491 +NEW l10n_ar.arca.activity: l10n_ar.activity_110492 +NEW l10n_ar.arca.activity: l10n_ar.activity_11111 +NEW l10n_ar.arca.activity: l10n_ar.activity_11112 +NEW l10n_ar.arca.activity: l10n_ar.activity_11119 +NEW l10n_ar.arca.activity: l10n_ar.activity_11121 +NEW l10n_ar.arca.activity: l10n_ar.activity_11129 +NEW l10n_ar.arca.activity: l10n_ar.activity_11130 +NEW l10n_ar.arca.activity: l10n_ar.activity_11211 +NEW l10n_ar.arca.activity: l10n_ar.activity_11291 +NEW l10n_ar.arca.activity: l10n_ar.activity_11299 +NEW l10n_ar.arca.activity: l10n_ar.activity_11310 +NEW l10n_ar.arca.activity: l10n_ar.activity_11321 +NEW l10n_ar.arca.activity: l10n_ar.activity_11329 +NEW l10n_ar.arca.activity: l10n_ar.activity_11331 +NEW l10n_ar.arca.activity: l10n_ar.activity_11341 +NEW l10n_ar.arca.activity: l10n_ar.activity_11342 +NEW l10n_ar.arca.activity: l10n_ar.activity_11400 +NEW l10n_ar.arca.activity: l10n_ar.activity_11501 +NEW l10n_ar.arca.activity: l10n_ar.activity_11509 +NEW l10n_ar.arca.activity: l10n_ar.activity_11911 +NEW l10n_ar.arca.activity: l10n_ar.activity_11912 +NEW l10n_ar.arca.activity: l10n_ar.activity_11990 +NEW l10n_ar.arca.activity: l10n_ar.activity_12 +NEW l10n_ar.arca.activity: l10n_ar.activity_120010 +NEW l10n_ar.arca.activity: l10n_ar.activity_120091 +NEW l10n_ar.arca.activity: l10n_ar.activity_120099 +NEW l10n_ar.arca.activity: l10n_ar.activity_12110 +NEW l10n_ar.arca.activity: l10n_ar.activity_12121 +NEW l10n_ar.arca.activity: l10n_ar.activity_12200 +NEW l10n_ar.arca.activity: l10n_ar.activity_12311 +NEW l10n_ar.arca.activity: l10n_ar.activity_12319 +NEW l10n_ar.arca.activity: l10n_ar.activity_12320 +NEW l10n_ar.arca.activity: l10n_ar.activity_12410 +NEW l10n_ar.arca.activity: l10n_ar.activity_12420 +NEW l10n_ar.arca.activity: l10n_ar.activity_12490 +NEW l10n_ar.arca.activity: l10n_ar.activity_12510 +NEW l10n_ar.arca.activity: l10n_ar.activity_12590 +NEW l10n_ar.arca.activity: l10n_ar.activity_12600 +NEW l10n_ar.arca.activity: l10n_ar.activity_12701 +NEW l10n_ar.arca.activity: l10n_ar.activity_12709 +NEW l10n_ar.arca.activity: l10n_ar.activity_12800 +NEW l10n_ar.arca.activity: l10n_ar.activity_12900 +NEW l10n_ar.arca.activity: l10n_ar.activity_13 +NEW l10n_ar.arca.activity: l10n_ar.activity_13011 +NEW l10n_ar.arca.activity: l10n_ar.activity_13012 +NEW l10n_ar.arca.activity: l10n_ar.activity_13013 +NEW l10n_ar.arca.activity: l10n_ar.activity_13019 +NEW l10n_ar.arca.activity: l10n_ar.activity_13020 +NEW l10n_ar.arca.activity: l10n_ar.activity_131110 +NEW l10n_ar.arca.activity: l10n_ar.activity_131120 +NEW l10n_ar.arca.activity: l10n_ar.activity_131131 +NEW l10n_ar.arca.activity: l10n_ar.activity_131132 +NEW l10n_ar.arca.activity: l10n_ar.activity_131139 +NEW l10n_ar.arca.activity: l10n_ar.activity_131201 +NEW l10n_ar.arca.activity: l10n_ar.activity_131202 +NEW l10n_ar.arca.activity: l10n_ar.activity_131209 +NEW l10n_ar.arca.activity: l10n_ar.activity_131300 +NEW l10n_ar.arca.activity: l10n_ar.activity_139100 +NEW l10n_ar.arca.activity: l10n_ar.activity_139201 +NEW l10n_ar.arca.activity: l10n_ar.activity_139202 +NEW l10n_ar.arca.activity: l10n_ar.activity_139203 +NEW l10n_ar.arca.activity: l10n_ar.activity_139204 +NEW l10n_ar.arca.activity: l10n_ar.activity_139209 +NEW l10n_ar.arca.activity: l10n_ar.activity_139300 +NEW l10n_ar.arca.activity: l10n_ar.activity_139400 +NEW l10n_ar.arca.activity: l10n_ar.activity_139900 +NEW l10n_ar.arca.activity: l10n_ar.activity_141110 +NEW l10n_ar.arca.activity: l10n_ar.activity_141120 +NEW l10n_ar.arca.activity: l10n_ar.activity_14113 +NEW l10n_ar.arca.activity: l10n_ar.activity_141130 +NEW l10n_ar.arca.activity: l10n_ar.activity_14114 +NEW l10n_ar.arca.activity: l10n_ar.activity_141140 +NEW l10n_ar.arca.activity: l10n_ar.activity_14115 +NEW l10n_ar.arca.activity: l10n_ar.activity_141191 +NEW l10n_ar.arca.activity: l10n_ar.activity_141199 +NEW l10n_ar.arca.activity: l10n_ar.activity_141201 +NEW l10n_ar.arca.activity: l10n_ar.activity_141202 +NEW l10n_ar.arca.activity: l10n_ar.activity_14121 +NEW l10n_ar.arca.activity: l10n_ar.activity_142000 +NEW l10n_ar.arca.activity: l10n_ar.activity_14211 +NEW l10n_ar.arca.activity: l10n_ar.activity_14221 +NEW l10n_ar.arca.activity: l10n_ar.activity_14300 +NEW l10n_ar.arca.activity: l10n_ar.activity_143010 +NEW l10n_ar.arca.activity: l10n_ar.activity_143020 +NEW l10n_ar.arca.activity: l10n_ar.activity_14410 +NEW l10n_ar.arca.activity: l10n_ar.activity_14420 +NEW l10n_ar.arca.activity: l10n_ar.activity_14430 +NEW l10n_ar.arca.activity: l10n_ar.activity_14440 +NEW l10n_ar.arca.activity: l10n_ar.activity_14510 +NEW l10n_ar.arca.activity: l10n_ar.activity_14520 +NEW l10n_ar.arca.activity: l10n_ar.activity_14610 +NEW l10n_ar.arca.activity: l10n_ar.activity_14620 +NEW l10n_ar.arca.activity: l10n_ar.activity_14710 +NEW l10n_ar.arca.activity: l10n_ar.activity_14720 +NEW l10n_ar.arca.activity: l10n_ar.activity_14810 +NEW l10n_ar.arca.activity: l10n_ar.activity_14820 +NEW l10n_ar.arca.activity: l10n_ar.activity_149000 +NEW l10n_ar.arca.activity: l10n_ar.activity_14910 +NEW l10n_ar.arca.activity: l10n_ar.activity_14920 +NEW l10n_ar.arca.activity: l10n_ar.activity_14930 +NEW l10n_ar.arca.activity: l10n_ar.activity_14990 +NEW l10n_ar.arca.activity: l10n_ar.activity_151100 +NEW l10n_ar.arca.activity: l10n_ar.activity_151200 +NEW l10n_ar.arca.activity: l10n_ar.activity_152011 +NEW l10n_ar.arca.activity: l10n_ar.activity_152021 +NEW l10n_ar.arca.activity: l10n_ar.activity_152031 +NEW l10n_ar.arca.activity: l10n_ar.activity_152040 +NEW l10n_ar.arca.activity: l10n_ar.activity_161001 +NEW l10n_ar.arca.activity: l10n_ar.activity_161002 +NEW l10n_ar.arca.activity: l10n_ar.activity_16111 +NEW l10n_ar.arca.activity: l10n_ar.activity_16112 +NEW l10n_ar.arca.activity: l10n_ar.activity_16113 +NEW l10n_ar.arca.activity: l10n_ar.activity_16119 +NEW l10n_ar.arca.activity: l10n_ar.activity_16120 +NEW l10n_ar.arca.activity: l10n_ar.activity_16130 +NEW l10n_ar.arca.activity: l10n_ar.activity_16140 +NEW l10n_ar.arca.activity: l10n_ar.activity_16150 +NEW l10n_ar.arca.activity: l10n_ar.activity_16190 +NEW l10n_ar.arca.activity: l10n_ar.activity_16210 +NEW l10n_ar.arca.activity: l10n_ar.activity_162100 +NEW l10n_ar.arca.activity: l10n_ar.activity_16220 +NEW l10n_ar.arca.activity: l10n_ar.activity_162201 +NEW l10n_ar.arca.activity: l10n_ar.activity_162202 +NEW l10n_ar.arca.activity: l10n_ar.activity_16230 +NEW l10n_ar.arca.activity: l10n_ar.activity_162300 +NEW l10n_ar.arca.activity: l10n_ar.activity_162901 +NEW l10n_ar.arca.activity: l10n_ar.activity_162902 +NEW l10n_ar.arca.activity: l10n_ar.activity_162903 +NEW l10n_ar.arca.activity: l10n_ar.activity_162909 +NEW l10n_ar.arca.activity: l10n_ar.activity_16291 +NEW l10n_ar.arca.activity: l10n_ar.activity_16292 +NEW l10n_ar.arca.activity: l10n_ar.activity_16299 +NEW l10n_ar.arca.activity: l10n_ar.activity_17010 +NEW l10n_ar.arca.activity: l10n_ar.activity_170101 +NEW l10n_ar.arca.activity: l10n_ar.activity_170102 +NEW l10n_ar.arca.activity: l10n_ar.activity_17020 +NEW l10n_ar.arca.activity: l10n_ar.activity_170201 +NEW l10n_ar.arca.activity: l10n_ar.activity_170202 +NEW l10n_ar.arca.activity: l10n_ar.activity_170910 +NEW l10n_ar.arca.activity: l10n_ar.activity_170990 +NEW l10n_ar.arca.activity: l10n_ar.activity_181101 +NEW l10n_ar.arca.activity: l10n_ar.activity_181109 +NEW l10n_ar.arca.activity: l10n_ar.activity_181200 +NEW l10n_ar.arca.activity: l10n_ar.activity_182000 +NEW l10n_ar.arca.activity: l10n_ar.activity_191000 +NEW l10n_ar.arca.activity: l10n_ar.activity_192000 +NEW l10n_ar.arca.activity: l10n_ar.activity_201110 +NEW l10n_ar.arca.activity: l10n_ar.activity_201120 +NEW l10n_ar.arca.activity: l10n_ar.activity_201130 +NEW l10n_ar.arca.activity: l10n_ar.activity_201140 +NEW l10n_ar.arca.activity: l10n_ar.activity_201180 +NEW l10n_ar.arca.activity: l10n_ar.activity_201190 +NEW l10n_ar.arca.activity: l10n_ar.activity_201210 +NEW l10n_ar.arca.activity: l10n_ar.activity_201220 +NEW l10n_ar.arca.activity: l10n_ar.activity_201300 +NEW l10n_ar.arca.activity: l10n_ar.activity_201401 +NEW l10n_ar.arca.activity: l10n_ar.activity_201409 +NEW l10n_ar.arca.activity: l10n_ar.activity_202101 +NEW l10n_ar.arca.activity: l10n_ar.activity_202200 +NEW l10n_ar.arca.activity: l10n_ar.activity_202311 +NEW l10n_ar.arca.activity: l10n_ar.activity_202312 +NEW l10n_ar.arca.activity: l10n_ar.activity_202320 +NEW l10n_ar.arca.activity: l10n_ar.activity_202906 +NEW l10n_ar.arca.activity: l10n_ar.activity_202907 +NEW l10n_ar.arca.activity: l10n_ar.activity_202908 +NEW l10n_ar.arca.activity: l10n_ar.activity_203000 +NEW l10n_ar.arca.activity: l10n_ar.activity_204000 +NEW l10n_ar.arca.activity: l10n_ar.activity_210010 +NEW l10n_ar.arca.activity: l10n_ar.activity_210020 +NEW l10n_ar.arca.activity: l10n_ar.activity_210030 +NEW l10n_ar.arca.activity: l10n_ar.activity_210090 +NEW l10n_ar.arca.activity: l10n_ar.activity_21010 +NEW l10n_ar.arca.activity: l10n_ar.activity_21020 +NEW l10n_ar.arca.activity: l10n_ar.activity_21030 +NEW l10n_ar.arca.activity: l10n_ar.activity_22010 +NEW l10n_ar.arca.activity: l10n_ar.activity_22020 +NEW l10n_ar.arca.activity: l10n_ar.activity_221110 +NEW l10n_ar.arca.activity: l10n_ar.activity_221120 +NEW l10n_ar.arca.activity: l10n_ar.activity_221901 +NEW l10n_ar.arca.activity: l10n_ar.activity_221909 +NEW l10n_ar.arca.activity: l10n_ar.activity_222010 +NEW l10n_ar.arca.activity: l10n_ar.activity_222090 +NEW l10n_ar.arca.activity: l10n_ar.activity_231010 +NEW l10n_ar.arca.activity: l10n_ar.activity_231020 +NEW l10n_ar.arca.activity: l10n_ar.activity_231090 +NEW l10n_ar.arca.activity: l10n_ar.activity_239100 +NEW l10n_ar.arca.activity: l10n_ar.activity_239201 +NEW l10n_ar.arca.activity: l10n_ar.activity_239202 +NEW l10n_ar.arca.activity: l10n_ar.activity_239209 +NEW l10n_ar.arca.activity: l10n_ar.activity_239310 +NEW l10n_ar.arca.activity: l10n_ar.activity_239391 +NEW l10n_ar.arca.activity: l10n_ar.activity_239399 +NEW l10n_ar.arca.activity: l10n_ar.activity_239410 +NEW l10n_ar.arca.activity: l10n_ar.activity_239421 +NEW l10n_ar.arca.activity: l10n_ar.activity_239422 +NEW l10n_ar.arca.activity: l10n_ar.activity_239510 +NEW l10n_ar.arca.activity: l10n_ar.activity_239591 +NEW l10n_ar.arca.activity: l10n_ar.activity_239592 +NEW l10n_ar.arca.activity: l10n_ar.activity_239593 +NEW l10n_ar.arca.activity: l10n_ar.activity_239600 +NEW l10n_ar.arca.activity: l10n_ar.activity_239900 +NEW l10n_ar.arca.activity: l10n_ar.activity_24010 +NEW l10n_ar.arca.activity: l10n_ar.activity_24020 +NEW l10n_ar.arca.activity: l10n_ar.activity_241001 +NEW l10n_ar.arca.activity: l10n_ar.activity_241009 +NEW l10n_ar.arca.activity: l10n_ar.activity_242010 +NEW l10n_ar.arca.activity: l10n_ar.activity_242090 +NEW l10n_ar.arca.activity: l10n_ar.activity_243100 +NEW l10n_ar.arca.activity: l10n_ar.activity_243200 +NEW l10n_ar.arca.activity: l10n_ar.activity_251101 +NEW l10n_ar.arca.activity: l10n_ar.activity_251102 +NEW l10n_ar.arca.activity: l10n_ar.activity_251200 +NEW l10n_ar.arca.activity: l10n_ar.activity_251300 +NEW l10n_ar.arca.activity: l10n_ar.activity_252000 +NEW l10n_ar.arca.activity: l10n_ar.activity_259100 +NEW l10n_ar.arca.activity: l10n_ar.activity_259200 +NEW l10n_ar.arca.activity: l10n_ar.activity_259301 +NEW l10n_ar.arca.activity: l10n_ar.activity_259302 +NEW l10n_ar.arca.activity: l10n_ar.activity_259309 +NEW l10n_ar.arca.activity: l10n_ar.activity_259910 +NEW l10n_ar.arca.activity: l10n_ar.activity_259991 +NEW l10n_ar.arca.activity: l10n_ar.activity_259992 +NEW l10n_ar.arca.activity: l10n_ar.activity_259993 +NEW l10n_ar.arca.activity: l10n_ar.activity_259999 +NEW l10n_ar.arca.activity: l10n_ar.activity_261000 +NEW l10n_ar.arca.activity: l10n_ar.activity_262000 +NEW l10n_ar.arca.activity: l10n_ar.activity_263000 +NEW l10n_ar.arca.activity: l10n_ar.activity_264000 +NEW l10n_ar.arca.activity: l10n_ar.activity_265101 +NEW l10n_ar.arca.activity: l10n_ar.activity_265102 +NEW l10n_ar.arca.activity: l10n_ar.activity_265200 +NEW l10n_ar.arca.activity: l10n_ar.activity_266010 +NEW l10n_ar.arca.activity: l10n_ar.activity_266090 +NEW l10n_ar.arca.activity: l10n_ar.activity_267001 +NEW l10n_ar.arca.activity: l10n_ar.activity_267002 +NEW l10n_ar.arca.activity: l10n_ar.activity_268000 +NEW l10n_ar.arca.activity: l10n_ar.activity_271010 +NEW l10n_ar.arca.activity: l10n_ar.activity_271020 +NEW l10n_ar.arca.activity: l10n_ar.activity_272000 +NEW l10n_ar.arca.activity: l10n_ar.activity_273110 +NEW l10n_ar.arca.activity: l10n_ar.activity_273190 +NEW l10n_ar.arca.activity: l10n_ar.activity_274000 +NEW l10n_ar.arca.activity: l10n_ar.activity_275010 +NEW l10n_ar.arca.activity: l10n_ar.activity_275020 +NEW l10n_ar.arca.activity: l10n_ar.activity_275091 +NEW l10n_ar.arca.activity: l10n_ar.activity_275092 +NEW l10n_ar.arca.activity: l10n_ar.activity_275099 +NEW l10n_ar.arca.activity: l10n_ar.activity_279000 +NEW l10n_ar.arca.activity: l10n_ar.activity_281100 +NEW l10n_ar.arca.activity: l10n_ar.activity_281201 +NEW l10n_ar.arca.activity: l10n_ar.activity_281301 +NEW l10n_ar.arca.activity: l10n_ar.activity_281400 +NEW l10n_ar.arca.activity: l10n_ar.activity_281500 +NEW l10n_ar.arca.activity: l10n_ar.activity_281600 +NEW l10n_ar.arca.activity: l10n_ar.activity_281700 +NEW l10n_ar.arca.activity: l10n_ar.activity_281900 +NEW l10n_ar.arca.activity: l10n_ar.activity_282110 +NEW l10n_ar.arca.activity: l10n_ar.activity_282120 +NEW l10n_ar.arca.activity: l10n_ar.activity_282130 +NEW l10n_ar.arca.activity: l10n_ar.activity_282200 +NEW l10n_ar.arca.activity: l10n_ar.activity_282300 +NEW l10n_ar.arca.activity: l10n_ar.activity_282400 +NEW l10n_ar.arca.activity: l10n_ar.activity_282500 +NEW l10n_ar.arca.activity: l10n_ar.activity_282600 +NEW l10n_ar.arca.activity: l10n_ar.activity_282901 +NEW l10n_ar.arca.activity: l10n_ar.activity_282909 +NEW l10n_ar.arca.activity: l10n_ar.activity_291000 +NEW l10n_ar.arca.activity: l10n_ar.activity_292000 +NEW l10n_ar.arca.activity: l10n_ar.activity_293011 +NEW l10n_ar.arca.activity: l10n_ar.activity_293090 +NEW l10n_ar.arca.activity: l10n_ar.activity_301100 +NEW l10n_ar.arca.activity: l10n_ar.activity_301200 +NEW l10n_ar.arca.activity: l10n_ar.activity_302000 +NEW l10n_ar.arca.activity: l10n_ar.activity_303000 +NEW l10n_ar.arca.activity: l10n_ar.activity_309100 +NEW l10n_ar.arca.activity: l10n_ar.activity_309200 +NEW l10n_ar.arca.activity: l10n_ar.activity_309900 +NEW l10n_ar.arca.activity: l10n_ar.activity_310010 +NEW l10n_ar.arca.activity: l10n_ar.activity_310020 +NEW l10n_ar.arca.activity: l10n_ar.activity_310030 +NEW l10n_ar.arca.activity: l10n_ar.activity_31110 +NEW l10n_ar.arca.activity: l10n_ar.activity_31120 +NEW l10n_ar.arca.activity: l10n_ar.activity_31130 +NEW l10n_ar.arca.activity: l10n_ar.activity_31200 +NEW l10n_ar.arca.activity: l10n_ar.activity_31300 +NEW l10n_ar.arca.activity: l10n_ar.activity_32000 +NEW l10n_ar.arca.activity: l10n_ar.activity_321011 +NEW l10n_ar.arca.activity: l10n_ar.activity_321012 +NEW l10n_ar.arca.activity: l10n_ar.activity_321020 +NEW l10n_ar.arca.activity: l10n_ar.activity_322001 +NEW l10n_ar.arca.activity: l10n_ar.activity_323001 +NEW l10n_ar.arca.activity: l10n_ar.activity_324000 +NEW l10n_ar.arca.activity: l10n_ar.activity_329010 +NEW l10n_ar.arca.activity: l10n_ar.activity_329020 +NEW l10n_ar.arca.activity: l10n_ar.activity_329030 +NEW l10n_ar.arca.activity: l10n_ar.activity_329040 +NEW l10n_ar.arca.activity: l10n_ar.activity_329090 +NEW l10n_ar.arca.activity: l10n_ar.activity_331101 +NEW l10n_ar.arca.activity: l10n_ar.activity_331210 +NEW l10n_ar.arca.activity: l10n_ar.activity_331220 +NEW l10n_ar.arca.activity: l10n_ar.activity_331290 +NEW l10n_ar.arca.activity: l10n_ar.activity_331301 +NEW l10n_ar.arca.activity: l10n_ar.activity_331400 +NEW l10n_ar.arca.activity: l10n_ar.activity_331900 +NEW l10n_ar.arca.activity: l10n_ar.activity_332000 +NEW l10n_ar.arca.activity: l10n_ar.activity_351110 +NEW l10n_ar.arca.activity: l10n_ar.activity_351120 +NEW l10n_ar.arca.activity: l10n_ar.activity_351130 +NEW l10n_ar.arca.activity: l10n_ar.activity_351190 +NEW l10n_ar.arca.activity: l10n_ar.activity_351201 +NEW l10n_ar.arca.activity: l10n_ar.activity_351310 +NEW l10n_ar.arca.activity: l10n_ar.activity_351320 +NEW l10n_ar.arca.activity: l10n_ar.activity_352010 +NEW l10n_ar.arca.activity: l10n_ar.activity_352020 +NEW l10n_ar.arca.activity: l10n_ar.activity_353001 +NEW l10n_ar.arca.activity: l10n_ar.activity_360010 +NEW l10n_ar.arca.activity: l10n_ar.activity_360020 +NEW l10n_ar.arca.activity: l10n_ar.activity_370000 +NEW l10n_ar.arca.activity: l10n_ar.activity_381100 +NEW l10n_ar.arca.activity: l10n_ar.activity_381200 +NEW l10n_ar.arca.activity: l10n_ar.activity_382010 +NEW l10n_ar.arca.activity: l10n_ar.activity_382020 +NEW l10n_ar.arca.activity: l10n_ar.activity_390000 +NEW l10n_ar.arca.activity: l10n_ar.activity_410011 +NEW l10n_ar.arca.activity: l10n_ar.activity_410021 +NEW l10n_ar.arca.activity: l10n_ar.activity_421000 +NEW l10n_ar.arca.activity: l10n_ar.activity_422100 +NEW l10n_ar.arca.activity: l10n_ar.activity_422200 +NEW l10n_ar.arca.activity: l10n_ar.activity_429010 +NEW l10n_ar.arca.activity: l10n_ar.activity_429090 +NEW l10n_ar.arca.activity: l10n_ar.activity_431100 +NEW l10n_ar.arca.activity: l10n_ar.activity_431210 +NEW l10n_ar.arca.activity: l10n_ar.activity_431220 +NEW l10n_ar.arca.activity: l10n_ar.activity_432110 +NEW l10n_ar.arca.activity: l10n_ar.activity_432190 +NEW l10n_ar.arca.activity: l10n_ar.activity_432200 +NEW l10n_ar.arca.activity: l10n_ar.activity_432910 +NEW l10n_ar.arca.activity: l10n_ar.activity_432920 +NEW l10n_ar.arca.activity: l10n_ar.activity_432990 +NEW l10n_ar.arca.activity: l10n_ar.activity_433010 +NEW l10n_ar.arca.activity: l10n_ar.activity_433020 +NEW l10n_ar.arca.activity: l10n_ar.activity_433030 +NEW l10n_ar.arca.activity: l10n_ar.activity_433040 +NEW l10n_ar.arca.activity: l10n_ar.activity_433090 +NEW l10n_ar.arca.activity: l10n_ar.activity_439100 +NEW l10n_ar.arca.activity: l10n_ar.activity_439910 +NEW l10n_ar.arca.activity: l10n_ar.activity_439990 +NEW l10n_ar.arca.activity: l10n_ar.activity_451110 +NEW l10n_ar.arca.activity: l10n_ar.activity_451190 +NEW l10n_ar.arca.activity: l10n_ar.activity_451210 +NEW l10n_ar.arca.activity: l10n_ar.activity_451290 +NEW l10n_ar.arca.activity: l10n_ar.activity_452101 +NEW l10n_ar.arca.activity: l10n_ar.activity_452210 +NEW l10n_ar.arca.activity: l10n_ar.activity_452220 +NEW l10n_ar.arca.activity: l10n_ar.activity_452300 +NEW l10n_ar.arca.activity: l10n_ar.activity_452401 +NEW l10n_ar.arca.activity: l10n_ar.activity_452500 +NEW l10n_ar.arca.activity: l10n_ar.activity_452600 +NEW l10n_ar.arca.activity: l10n_ar.activity_452700 +NEW l10n_ar.arca.activity: l10n_ar.activity_452800 +NEW l10n_ar.arca.activity: l10n_ar.activity_452910 +NEW l10n_ar.arca.activity: l10n_ar.activity_452990 +NEW l10n_ar.arca.activity: l10n_ar.activity_453100 +NEW l10n_ar.arca.activity: l10n_ar.activity_453210 +NEW l10n_ar.arca.activity: l10n_ar.activity_453220 +NEW l10n_ar.arca.activity: l10n_ar.activity_453291 +NEW l10n_ar.arca.activity: l10n_ar.activity_453292 +NEW l10n_ar.arca.activity: l10n_ar.activity_454010 +NEW l10n_ar.arca.activity: l10n_ar.activity_454020 +NEW l10n_ar.arca.activity: l10n_ar.activity_461011 +NEW l10n_ar.arca.activity: l10n_ar.activity_461012 +NEW l10n_ar.arca.activity: l10n_ar.activity_461013 +NEW l10n_ar.arca.activity: l10n_ar.activity_461014 +NEW l10n_ar.arca.activity: l10n_ar.activity_461019 +NEW l10n_ar.arca.activity: l10n_ar.activity_461021 +NEW l10n_ar.arca.activity: l10n_ar.activity_461022 +NEW l10n_ar.arca.activity: l10n_ar.activity_461029 +NEW l10n_ar.arca.activity: l10n_ar.activity_461031 +NEW l10n_ar.arca.activity: l10n_ar.activity_461032 +NEW l10n_ar.arca.activity: l10n_ar.activity_461039 +NEW l10n_ar.arca.activity: l10n_ar.activity_461040 +NEW l10n_ar.arca.activity: l10n_ar.activity_461091 +NEW l10n_ar.arca.activity: l10n_ar.activity_461092 +NEW l10n_ar.arca.activity: l10n_ar.activity_461093 +NEW l10n_ar.arca.activity: l10n_ar.activity_461094 +NEW l10n_ar.arca.activity: l10n_ar.activity_461095 +NEW l10n_ar.arca.activity: l10n_ar.activity_461099 +NEW l10n_ar.arca.activity: l10n_ar.activity_462110 +NEW l10n_ar.arca.activity: l10n_ar.activity_462120 +NEW l10n_ar.arca.activity: l10n_ar.activity_462131 +NEW l10n_ar.arca.activity: l10n_ar.activity_462132 +NEW l10n_ar.arca.activity: l10n_ar.activity_462190 +NEW l10n_ar.arca.activity: l10n_ar.activity_462201 +NEW l10n_ar.arca.activity: l10n_ar.activity_462209 +NEW l10n_ar.arca.activity: l10n_ar.activity_463111 +NEW l10n_ar.arca.activity: l10n_ar.activity_463112 +NEW l10n_ar.arca.activity: l10n_ar.activity_463121 +NEW l10n_ar.arca.activity: l10n_ar.activity_463129 +NEW l10n_ar.arca.activity: l10n_ar.activity_463130 +NEW l10n_ar.arca.activity: l10n_ar.activity_463140 +NEW l10n_ar.arca.activity: l10n_ar.activity_463151 +NEW l10n_ar.arca.activity: l10n_ar.activity_463152 +NEW l10n_ar.arca.activity: l10n_ar.activity_463153 +NEW l10n_ar.arca.activity: l10n_ar.activity_463154 +NEW l10n_ar.arca.activity: l10n_ar.activity_463159 +NEW l10n_ar.arca.activity: l10n_ar.activity_463160 +NEW l10n_ar.arca.activity: l10n_ar.activity_463170 +NEW l10n_ar.arca.activity: l10n_ar.activity_463180 +NEW l10n_ar.arca.activity: l10n_ar.activity_463191 +NEW l10n_ar.arca.activity: l10n_ar.activity_463199 +NEW l10n_ar.arca.activity: l10n_ar.activity_463211 +NEW l10n_ar.arca.activity: l10n_ar.activity_463212 +NEW l10n_ar.arca.activity: l10n_ar.activity_463219 +NEW l10n_ar.arca.activity: l10n_ar.activity_463220 +NEW l10n_ar.arca.activity: l10n_ar.activity_463300 +NEW l10n_ar.arca.activity: l10n_ar.activity_464111 +NEW l10n_ar.arca.activity: l10n_ar.activity_464112 +NEW l10n_ar.arca.activity: l10n_ar.activity_464113 +NEW l10n_ar.arca.activity: l10n_ar.activity_464114 +NEW l10n_ar.arca.activity: l10n_ar.activity_464119 +NEW l10n_ar.arca.activity: l10n_ar.activity_464121 +NEW l10n_ar.arca.activity: l10n_ar.activity_464122 +NEW l10n_ar.arca.activity: l10n_ar.activity_464129 +NEW l10n_ar.arca.activity: l10n_ar.activity_464130 +NEW l10n_ar.arca.activity: l10n_ar.activity_464141 +NEW l10n_ar.arca.activity: l10n_ar.activity_464142 +NEW l10n_ar.arca.activity: l10n_ar.activity_464149 +NEW l10n_ar.arca.activity: l10n_ar.activity_464150 +NEW l10n_ar.arca.activity: l10n_ar.activity_464211 +NEW l10n_ar.arca.activity: l10n_ar.activity_464212 +NEW l10n_ar.arca.activity: l10n_ar.activity_464221 +NEW l10n_ar.arca.activity: l10n_ar.activity_464222 +NEW l10n_ar.arca.activity: l10n_ar.activity_464223 +NEW l10n_ar.arca.activity: l10n_ar.activity_464310 +NEW l10n_ar.arca.activity: l10n_ar.activity_464320 +NEW l10n_ar.arca.activity: l10n_ar.activity_464330 +NEW l10n_ar.arca.activity: l10n_ar.activity_464340 +NEW l10n_ar.arca.activity: l10n_ar.activity_464410 +NEW l10n_ar.arca.activity: l10n_ar.activity_464420 +NEW l10n_ar.arca.activity: l10n_ar.activity_464501 +NEW l10n_ar.arca.activity: l10n_ar.activity_464502 +NEW l10n_ar.arca.activity: l10n_ar.activity_464610 +NEW l10n_ar.arca.activity: l10n_ar.activity_464620 +NEW l10n_ar.arca.activity: l10n_ar.activity_464631 +NEW l10n_ar.arca.activity: l10n_ar.activity_464632 +NEW l10n_ar.arca.activity: l10n_ar.activity_464910 +NEW l10n_ar.arca.activity: l10n_ar.activity_464920 +NEW l10n_ar.arca.activity: l10n_ar.activity_464930 +NEW l10n_ar.arca.activity: l10n_ar.activity_464940 +NEW l10n_ar.arca.activity: l10n_ar.activity_464950 +NEW l10n_ar.arca.activity: l10n_ar.activity_464991 +NEW l10n_ar.arca.activity: l10n_ar.activity_464999 +NEW l10n_ar.arca.activity: l10n_ar.activity_465100 +NEW l10n_ar.arca.activity: l10n_ar.activity_465210 +NEW l10n_ar.arca.activity: l10n_ar.activity_465220 +NEW l10n_ar.arca.activity: l10n_ar.activity_465310 +NEW l10n_ar.arca.activity: l10n_ar.activity_465320 +NEW l10n_ar.arca.activity: l10n_ar.activity_465330 +NEW l10n_ar.arca.activity: l10n_ar.activity_465340 +NEW l10n_ar.arca.activity: l10n_ar.activity_465350 +NEW l10n_ar.arca.activity: l10n_ar.activity_465360 +NEW l10n_ar.arca.activity: l10n_ar.activity_465390 +NEW l10n_ar.arca.activity: l10n_ar.activity_465400 +NEW l10n_ar.arca.activity: l10n_ar.activity_465500 +NEW l10n_ar.arca.activity: l10n_ar.activity_465610 +NEW l10n_ar.arca.activity: l10n_ar.activity_465690 +NEW l10n_ar.arca.activity: l10n_ar.activity_465910 +NEW l10n_ar.arca.activity: l10n_ar.activity_465920 +NEW l10n_ar.arca.activity: l10n_ar.activity_465930 +NEW l10n_ar.arca.activity: l10n_ar.activity_465990 +NEW l10n_ar.arca.activity: l10n_ar.activity_466110 +NEW l10n_ar.arca.activity: l10n_ar.activity_466121 +NEW l10n_ar.arca.activity: l10n_ar.activity_466129 +NEW l10n_ar.arca.activity: l10n_ar.activity_466200 +NEW l10n_ar.arca.activity: l10n_ar.activity_466310 +NEW l10n_ar.arca.activity: l10n_ar.activity_466320 +NEW l10n_ar.arca.activity: l10n_ar.activity_466330 +NEW l10n_ar.arca.activity: l10n_ar.activity_466340 +NEW l10n_ar.arca.activity: l10n_ar.activity_466350 +NEW l10n_ar.arca.activity: l10n_ar.activity_466360 +NEW l10n_ar.arca.activity: l10n_ar.activity_466370 +NEW l10n_ar.arca.activity: l10n_ar.activity_466391 +NEW l10n_ar.arca.activity: l10n_ar.activity_466399 +NEW l10n_ar.arca.activity: l10n_ar.activity_466910 +NEW l10n_ar.arca.activity: l10n_ar.activity_466920 +NEW l10n_ar.arca.activity: l10n_ar.activity_466931 +NEW l10n_ar.arca.activity: l10n_ar.activity_466932 +NEW l10n_ar.arca.activity: l10n_ar.activity_466939 +NEW l10n_ar.arca.activity: l10n_ar.activity_466940 +NEW l10n_ar.arca.activity: l10n_ar.activity_466990 +NEW l10n_ar.arca.activity: l10n_ar.activity_469010 +NEW l10n_ar.arca.activity: l10n_ar.activity_469090 +NEW l10n_ar.arca.activity: l10n_ar.activity_471110 +NEW l10n_ar.arca.activity: l10n_ar.activity_471120 +NEW l10n_ar.arca.activity: l10n_ar.activity_471130 +NEW l10n_ar.arca.activity: l10n_ar.activity_471190 +NEW l10n_ar.arca.activity: l10n_ar.activity_471900 +NEW l10n_ar.arca.activity: l10n_ar.activity_472111 +NEW l10n_ar.arca.activity: l10n_ar.activity_472112 +NEW l10n_ar.arca.activity: l10n_ar.activity_472120 +NEW l10n_ar.arca.activity: l10n_ar.activity_472130 +NEW l10n_ar.arca.activity: l10n_ar.activity_472140 +NEW l10n_ar.arca.activity: l10n_ar.activity_472150 +NEW l10n_ar.arca.activity: l10n_ar.activity_472160 +NEW l10n_ar.arca.activity: l10n_ar.activity_472171 +NEW l10n_ar.arca.activity: l10n_ar.activity_472172 +NEW l10n_ar.arca.activity: l10n_ar.activity_472190 +NEW l10n_ar.arca.activity: l10n_ar.activity_472200 +NEW l10n_ar.arca.activity: l10n_ar.activity_472300 +NEW l10n_ar.arca.activity: l10n_ar.activity_473000 +NEW l10n_ar.arca.activity: l10n_ar.activity_474010 +NEW l10n_ar.arca.activity: l10n_ar.activity_474020 +NEW l10n_ar.arca.activity: l10n_ar.activity_475110 +NEW l10n_ar.arca.activity: l10n_ar.activity_475120 +NEW l10n_ar.arca.activity: l10n_ar.activity_475190 +NEW l10n_ar.arca.activity: l10n_ar.activity_475210 +NEW l10n_ar.arca.activity: l10n_ar.activity_475220 +NEW l10n_ar.arca.activity: l10n_ar.activity_475230 +NEW l10n_ar.arca.activity: l10n_ar.activity_475240 +NEW l10n_ar.arca.activity: l10n_ar.activity_475250 +NEW l10n_ar.arca.activity: l10n_ar.activity_475260 +NEW l10n_ar.arca.activity: l10n_ar.activity_475270 +NEW l10n_ar.arca.activity: l10n_ar.activity_475290 +NEW l10n_ar.arca.activity: l10n_ar.activity_475300 +NEW l10n_ar.arca.activity: l10n_ar.activity_475410 +NEW l10n_ar.arca.activity: l10n_ar.activity_475420 +NEW l10n_ar.arca.activity: l10n_ar.activity_475430 +NEW l10n_ar.arca.activity: l10n_ar.activity_475440 +NEW l10n_ar.arca.activity: l10n_ar.activity_475490 +NEW l10n_ar.arca.activity: l10n_ar.activity_476110 +NEW l10n_ar.arca.activity: l10n_ar.activity_476120 +NEW l10n_ar.arca.activity: l10n_ar.activity_476130 +NEW l10n_ar.arca.activity: l10n_ar.activity_476200 +NEW l10n_ar.arca.activity: l10n_ar.activity_476310 +NEW l10n_ar.arca.activity: l10n_ar.activity_476320 +NEW l10n_ar.arca.activity: l10n_ar.activity_476400 +NEW l10n_ar.arca.activity: l10n_ar.activity_477110 +NEW l10n_ar.arca.activity: l10n_ar.activity_477120 +NEW l10n_ar.arca.activity: l10n_ar.activity_477130 +NEW l10n_ar.arca.activity: l10n_ar.activity_477140 +NEW l10n_ar.arca.activity: l10n_ar.activity_477150 +NEW l10n_ar.arca.activity: l10n_ar.activity_477190 +NEW l10n_ar.arca.activity: l10n_ar.activity_477210 +NEW l10n_ar.arca.activity: l10n_ar.activity_477220 +NEW l10n_ar.arca.activity: l10n_ar.activity_477230 +NEW l10n_ar.arca.activity: l10n_ar.activity_477290 +NEW l10n_ar.arca.activity: l10n_ar.activity_477310 +NEW l10n_ar.arca.activity: l10n_ar.activity_477320 +NEW l10n_ar.arca.activity: l10n_ar.activity_477330 +NEW l10n_ar.arca.activity: l10n_ar.activity_477410 +NEW l10n_ar.arca.activity: l10n_ar.activity_477420 +NEW l10n_ar.arca.activity: l10n_ar.activity_477430 +NEW l10n_ar.arca.activity: l10n_ar.activity_477440 +NEW l10n_ar.arca.activity: l10n_ar.activity_477450 +NEW l10n_ar.arca.activity: l10n_ar.activity_477460 +NEW l10n_ar.arca.activity: l10n_ar.activity_477470 +NEW l10n_ar.arca.activity: l10n_ar.activity_477480 +NEW l10n_ar.arca.activity: l10n_ar.activity_477490 +NEW l10n_ar.arca.activity: l10n_ar.activity_477810 +NEW l10n_ar.arca.activity: l10n_ar.activity_477820 +NEW l10n_ar.arca.activity: l10n_ar.activity_477830 +NEW l10n_ar.arca.activity: l10n_ar.activity_477840 +NEW l10n_ar.arca.activity: l10n_ar.activity_477890 +NEW l10n_ar.arca.activity: l10n_ar.activity_478010 +NEW l10n_ar.arca.activity: l10n_ar.activity_478090 +NEW l10n_ar.arca.activity: l10n_ar.activity_479101 +NEW l10n_ar.arca.activity: l10n_ar.activity_479109 +NEW l10n_ar.arca.activity: l10n_ar.activity_479900 +NEW l10n_ar.arca.activity: l10n_ar.activity_491110 +NEW l10n_ar.arca.activity: l10n_ar.activity_491120 +NEW l10n_ar.arca.activity: l10n_ar.activity_491200 +NEW l10n_ar.arca.activity: l10n_ar.activity_492110 +NEW l10n_ar.arca.activity: l10n_ar.activity_492120 +NEW l10n_ar.arca.activity: l10n_ar.activity_492130 +NEW l10n_ar.arca.activity: l10n_ar.activity_492140 +NEW l10n_ar.arca.activity: l10n_ar.activity_492150 +NEW l10n_ar.arca.activity: l10n_ar.activity_492160 +NEW l10n_ar.arca.activity: l10n_ar.activity_492170 +NEW l10n_ar.arca.activity: l10n_ar.activity_492180 +NEW l10n_ar.arca.activity: l10n_ar.activity_492190 +NEW l10n_ar.arca.activity: l10n_ar.activity_492210 +NEW l10n_ar.arca.activity: l10n_ar.activity_492221 +NEW l10n_ar.arca.activity: l10n_ar.activity_492229 +NEW l10n_ar.arca.activity: l10n_ar.activity_492230 +NEW l10n_ar.arca.activity: l10n_ar.activity_492240 +NEW l10n_ar.arca.activity: l10n_ar.activity_492250 +NEW l10n_ar.arca.activity: l10n_ar.activity_492280 +NEW l10n_ar.arca.activity: l10n_ar.activity_492290 +NEW l10n_ar.arca.activity: l10n_ar.activity_493110 +NEW l10n_ar.arca.activity: l10n_ar.activity_493120 +NEW l10n_ar.arca.activity: l10n_ar.activity_493200 +NEW l10n_ar.arca.activity: l10n_ar.activity_501100 +NEW l10n_ar.arca.activity: l10n_ar.activity_501200 +NEW l10n_ar.arca.activity: l10n_ar.activity_502101 +NEW l10n_ar.arca.activity: l10n_ar.activity_502200 +NEW l10n_ar.arca.activity: l10n_ar.activity_51000 +NEW l10n_ar.arca.activity: l10n_ar.activity_511000 +NEW l10n_ar.arca.activity: l10n_ar.activity_512000 +NEW l10n_ar.arca.activity: l10n_ar.activity_52000 +NEW l10n_ar.arca.activity: l10n_ar.activity_521010 +NEW l10n_ar.arca.activity: l10n_ar.activity_521020 +NEW l10n_ar.arca.activity: l10n_ar.activity_521030 +NEW l10n_ar.arca.activity: l10n_ar.activity_522010 +NEW l10n_ar.arca.activity: l10n_ar.activity_522020 +NEW l10n_ar.arca.activity: l10n_ar.activity_522091 +NEW l10n_ar.arca.activity: l10n_ar.activity_522092 +NEW l10n_ar.arca.activity: l10n_ar.activity_522099 +NEW l10n_ar.arca.activity: l10n_ar.activity_523011 +NEW l10n_ar.arca.activity: l10n_ar.activity_523019 +NEW l10n_ar.arca.activity: l10n_ar.activity_523020 +NEW l10n_ar.arca.activity: l10n_ar.activity_523031 +NEW l10n_ar.arca.activity: l10n_ar.activity_523032 +NEW l10n_ar.arca.activity: l10n_ar.activity_523039 +NEW l10n_ar.arca.activity: l10n_ar.activity_523090 +NEW l10n_ar.arca.activity: l10n_ar.activity_524110 +NEW l10n_ar.arca.activity: l10n_ar.activity_524120 +NEW l10n_ar.arca.activity: l10n_ar.activity_524130 +NEW l10n_ar.arca.activity: l10n_ar.activity_524190 +NEW l10n_ar.arca.activity: l10n_ar.activity_524210 +NEW l10n_ar.arca.activity: l10n_ar.activity_524220 +NEW l10n_ar.arca.activity: l10n_ar.activity_524230 +NEW l10n_ar.arca.activity: l10n_ar.activity_524290 +NEW l10n_ar.arca.activity: l10n_ar.activity_524310 +NEW l10n_ar.arca.activity: l10n_ar.activity_524320 +NEW l10n_ar.arca.activity: l10n_ar.activity_524330 +NEW l10n_ar.arca.activity: l10n_ar.activity_524390 +NEW l10n_ar.arca.activity: l10n_ar.activity_530010 +NEW l10n_ar.arca.activity: l10n_ar.activity_530090 +NEW l10n_ar.arca.activity: l10n_ar.activity_551010 +NEW l10n_ar.arca.activity: l10n_ar.activity_551021 +NEW l10n_ar.arca.activity: l10n_ar.activity_551022 +NEW l10n_ar.arca.activity: l10n_ar.activity_551023 +NEW l10n_ar.arca.activity: l10n_ar.activity_551090 +NEW l10n_ar.arca.activity: l10n_ar.activity_552000 +NEW l10n_ar.arca.activity: l10n_ar.activity_561011 +NEW l10n_ar.arca.activity: l10n_ar.activity_561012 +NEW l10n_ar.arca.activity: l10n_ar.activity_561013 +NEW l10n_ar.arca.activity: l10n_ar.activity_561014 +NEW l10n_ar.arca.activity: l10n_ar.activity_561019 +NEW l10n_ar.arca.activity: l10n_ar.activity_561020 +NEW l10n_ar.arca.activity: l10n_ar.activity_561030 +NEW l10n_ar.arca.activity: l10n_ar.activity_561040 +NEW l10n_ar.arca.activity: l10n_ar.activity_562010 +NEW l10n_ar.arca.activity: l10n_ar.activity_562091 +NEW l10n_ar.arca.activity: l10n_ar.activity_562099 +NEW l10n_ar.arca.activity: l10n_ar.activity_581100 +NEW l10n_ar.arca.activity: l10n_ar.activity_581200 +NEW l10n_ar.arca.activity: l10n_ar.activity_581300 +NEW l10n_ar.arca.activity: l10n_ar.activity_581900 +NEW l10n_ar.arca.activity: l10n_ar.activity_591110 +NEW l10n_ar.arca.activity: l10n_ar.activity_591120 +NEW l10n_ar.arca.activity: l10n_ar.activity_591200 +NEW l10n_ar.arca.activity: l10n_ar.activity_591300 +NEW l10n_ar.arca.activity: l10n_ar.activity_592000 +NEW l10n_ar.arca.activity: l10n_ar.activity_601000 +NEW l10n_ar.arca.activity: l10n_ar.activity_602100 +NEW l10n_ar.arca.activity: l10n_ar.activity_602200 +NEW l10n_ar.arca.activity: l10n_ar.activity_602310 +NEW l10n_ar.arca.activity: l10n_ar.activity_602320 +NEW l10n_ar.arca.activity: l10n_ar.activity_602900 +NEW l10n_ar.arca.activity: l10n_ar.activity_61000 +NEW l10n_ar.arca.activity: l10n_ar.activity_611010 +NEW l10n_ar.arca.activity: l10n_ar.activity_611090 +NEW l10n_ar.arca.activity: l10n_ar.activity_612000 +NEW l10n_ar.arca.activity: l10n_ar.activity_613000 +NEW l10n_ar.arca.activity: l10n_ar.activity_614010 +NEW l10n_ar.arca.activity: l10n_ar.activity_614090 +NEW l10n_ar.arca.activity: l10n_ar.activity_619000 +NEW l10n_ar.arca.activity: l10n_ar.activity_62000 +NEW l10n_ar.arca.activity: l10n_ar.activity_620100 +NEW l10n_ar.arca.activity: l10n_ar.activity_620200 +NEW l10n_ar.arca.activity: l10n_ar.activity_620300 +NEW l10n_ar.arca.activity: l10n_ar.activity_620900 +NEW l10n_ar.arca.activity: l10n_ar.activity_631110 +NEW l10n_ar.arca.activity: l10n_ar.activity_631120 +NEW l10n_ar.arca.activity: l10n_ar.activity_631190 +NEW l10n_ar.arca.activity: l10n_ar.activity_631200 +NEW l10n_ar.arca.activity: l10n_ar.activity_639100 +NEW l10n_ar.arca.activity: l10n_ar.activity_639900 +NEW l10n_ar.arca.activity: l10n_ar.activity_641100 +NEW l10n_ar.arca.activity: l10n_ar.activity_641910 +NEW l10n_ar.arca.activity: l10n_ar.activity_641920 +NEW l10n_ar.arca.activity: l10n_ar.activity_641930 +NEW l10n_ar.arca.activity: l10n_ar.activity_641941 +NEW l10n_ar.arca.activity: l10n_ar.activity_641942 +NEW l10n_ar.arca.activity: l10n_ar.activity_641943 +NEW l10n_ar.arca.activity: l10n_ar.activity_642000 +NEW l10n_ar.arca.activity: l10n_ar.activity_643001 +NEW l10n_ar.arca.activity: l10n_ar.activity_643009 +NEW l10n_ar.arca.activity: l10n_ar.activity_649100 +NEW l10n_ar.arca.activity: l10n_ar.activity_649210 +NEW l10n_ar.arca.activity: l10n_ar.activity_649220 +NEW l10n_ar.arca.activity: l10n_ar.activity_649290 +NEW l10n_ar.arca.activity: l10n_ar.activity_649910 +NEW l10n_ar.arca.activity: l10n_ar.activity_649991 +NEW l10n_ar.arca.activity: l10n_ar.activity_649999 +NEW l10n_ar.arca.activity: l10n_ar.activity_651110 +NEW l10n_ar.arca.activity: l10n_ar.activity_651120 +NEW l10n_ar.arca.activity: l10n_ar.activity_651130 +NEW l10n_ar.arca.activity: l10n_ar.activity_651210 +NEW l10n_ar.arca.activity: l10n_ar.activity_651220 +NEW l10n_ar.arca.activity: l10n_ar.activity_651310 +NEW l10n_ar.arca.activity: l10n_ar.activity_651320 +NEW l10n_ar.arca.activity: l10n_ar.activity_652000 +NEW l10n_ar.arca.activity: l10n_ar.activity_653000 +NEW l10n_ar.arca.activity: l10n_ar.activity_661111 +NEW l10n_ar.arca.activity: l10n_ar.activity_661121 +NEW l10n_ar.arca.activity: l10n_ar.activity_661131 +NEW l10n_ar.arca.activity: l10n_ar.activity_661910 +NEW l10n_ar.arca.activity: l10n_ar.activity_661920 +NEW l10n_ar.arca.activity: l10n_ar.activity_661930 +NEW l10n_ar.arca.activity: l10n_ar.activity_661991 +NEW l10n_ar.arca.activity: l10n_ar.activity_661992 +NEW l10n_ar.arca.activity: l10n_ar.activity_661999 +NEW l10n_ar.arca.activity: l10n_ar.activity_662010 +NEW l10n_ar.arca.activity: l10n_ar.activity_662020 +NEW l10n_ar.arca.activity: l10n_ar.activity_662090 +NEW l10n_ar.arca.activity: l10n_ar.activity_663000 +NEW l10n_ar.arca.activity: l10n_ar.activity_681010 +NEW l10n_ar.arca.activity: l10n_ar.activity_681020 +NEW l10n_ar.arca.activity: l10n_ar.activity_681098 +NEW l10n_ar.arca.activity: l10n_ar.activity_681099 +NEW l10n_ar.arca.activity: l10n_ar.activity_682010 +NEW l10n_ar.arca.activity: l10n_ar.activity_682091 +NEW l10n_ar.arca.activity: l10n_ar.activity_682099 +NEW l10n_ar.arca.activity: l10n_ar.activity_691001 +NEW l10n_ar.arca.activity: l10n_ar.activity_691002 +NEW l10n_ar.arca.activity: l10n_ar.activity_692000 +NEW l10n_ar.arca.activity: l10n_ar.activity_7 +NEW l10n_ar.arca.activity: l10n_ar.activity_702010 +NEW l10n_ar.arca.activity: l10n_ar.activity_702091 +NEW l10n_ar.arca.activity: l10n_ar.activity_702092 +NEW l10n_ar.arca.activity: l10n_ar.activity_702099 +NEW l10n_ar.arca.activity: l10n_ar.activity_71000 +NEW l10n_ar.arca.activity: l10n_ar.activity_711001 +NEW l10n_ar.arca.activity: l10n_ar.activity_711002 +NEW l10n_ar.arca.activity: l10n_ar.activity_711003 +NEW l10n_ar.arca.activity: l10n_ar.activity_711009 +NEW l10n_ar.arca.activity: l10n_ar.activity_712000 +NEW l10n_ar.arca.activity: l10n_ar.activity_72100 +NEW l10n_ar.arca.activity: l10n_ar.activity_721010 +NEW l10n_ar.arca.activity: l10n_ar.activity_721020 +NEW l10n_ar.arca.activity: l10n_ar.activity_721030 +NEW l10n_ar.arca.activity: l10n_ar.activity_721090 +NEW l10n_ar.arca.activity: l10n_ar.activity_722010 +NEW l10n_ar.arca.activity: l10n_ar.activity_722020 +NEW l10n_ar.arca.activity: l10n_ar.activity_72910 +NEW l10n_ar.arca.activity: l10n_ar.activity_72990 +NEW l10n_ar.arca.activity: l10n_ar.activity_731001 +NEW l10n_ar.arca.activity: l10n_ar.activity_731009 +NEW l10n_ar.arca.activity: l10n_ar.activity_732000 +NEW l10n_ar.arca.activity: l10n_ar.activity_741000 +NEW l10n_ar.arca.activity: l10n_ar.activity_742000 +NEW l10n_ar.arca.activity: l10n_ar.activity_749001 +NEW l10n_ar.arca.activity: l10n_ar.activity_749002 +NEW l10n_ar.arca.activity: l10n_ar.activity_749003 +NEW l10n_ar.arca.activity: l10n_ar.activity_749009 +NEW l10n_ar.arca.activity: l10n_ar.activity_750000 +NEW l10n_ar.arca.activity: l10n_ar.activity_771110 +NEW l10n_ar.arca.activity: l10n_ar.activity_771190 +NEW l10n_ar.arca.activity: l10n_ar.activity_771210 +NEW l10n_ar.arca.activity: l10n_ar.activity_771220 +NEW l10n_ar.arca.activity: l10n_ar.activity_771290 +NEW l10n_ar.arca.activity: l10n_ar.activity_772010 +NEW l10n_ar.arca.activity: l10n_ar.activity_772091 +NEW l10n_ar.arca.activity: l10n_ar.activity_772099 +NEW l10n_ar.arca.activity: l10n_ar.activity_773010 +NEW l10n_ar.arca.activity: l10n_ar.activity_773020 +NEW l10n_ar.arca.activity: l10n_ar.activity_773030 +NEW l10n_ar.arca.activity: l10n_ar.activity_773040 +NEW l10n_ar.arca.activity: l10n_ar.activity_773090 +NEW l10n_ar.arca.activity: l10n_ar.activity_774000 +NEW l10n_ar.arca.activity: l10n_ar.activity_780000 +NEW l10n_ar.arca.activity: l10n_ar.activity_791100 +NEW l10n_ar.arca.activity: l10n_ar.activity_791200 +NEW l10n_ar.arca.activity: l10n_ar.activity_791901 +NEW l10n_ar.arca.activity: l10n_ar.activity_791909 +NEW l10n_ar.arca.activity: l10n_ar.activity_8 +NEW l10n_ar.arca.activity: l10n_ar.activity_801010 +NEW l10n_ar.arca.activity: l10n_ar.activity_801020 +NEW l10n_ar.arca.activity: l10n_ar.activity_801090 +NEW l10n_ar.arca.activity: l10n_ar.activity_81100 +NEW l10n_ar.arca.activity: l10n_ar.activity_811000 +NEW l10n_ar.arca.activity: l10n_ar.activity_81200 +NEW l10n_ar.arca.activity: l10n_ar.activity_812010 +NEW l10n_ar.arca.activity: l10n_ar.activity_812020 +NEW l10n_ar.arca.activity: l10n_ar.activity_812090 +NEW l10n_ar.arca.activity: l10n_ar.activity_81300 +NEW l10n_ar.arca.activity: l10n_ar.activity_813000 +NEW l10n_ar.arca.activity: l10n_ar.activity_81400 +NEW l10n_ar.arca.activity: l10n_ar.activity_821100 +NEW l10n_ar.arca.activity: l10n_ar.activity_821900 +NEW l10n_ar.arca.activity: l10n_ar.activity_822000 +NEW l10n_ar.arca.activity: l10n_ar.activity_823000 +NEW l10n_ar.arca.activity: l10n_ar.activity_829100 +NEW l10n_ar.arca.activity: l10n_ar.activity_829200 +NEW l10n_ar.arca.activity: l10n_ar.activity_829900 +NEW l10n_ar.arca.activity: l10n_ar.activity_841100 +NEW l10n_ar.arca.activity: l10n_ar.activity_841200 +NEW l10n_ar.arca.activity: l10n_ar.activity_841300 +NEW l10n_ar.arca.activity: l10n_ar.activity_841900 +NEW l10n_ar.arca.activity: l10n_ar.activity_842100 +NEW l10n_ar.arca.activity: l10n_ar.activity_842200 +NEW l10n_ar.arca.activity: l10n_ar.activity_842300 +NEW l10n_ar.arca.activity: l10n_ar.activity_842400 +NEW l10n_ar.arca.activity: l10n_ar.activity_842500 +NEW l10n_ar.arca.activity: l10n_ar.activity_843000 +NEW l10n_ar.arca.activity: l10n_ar.activity_851010 +NEW l10n_ar.arca.activity: l10n_ar.activity_851020 +NEW l10n_ar.arca.activity: l10n_ar.activity_852100 +NEW l10n_ar.arca.activity: l10n_ar.activity_852200 +NEW l10n_ar.arca.activity: l10n_ar.activity_853100 +NEW l10n_ar.arca.activity: l10n_ar.activity_853201 +NEW l10n_ar.arca.activity: l10n_ar.activity_853300 +NEW l10n_ar.arca.activity: l10n_ar.activity_854910 +NEW l10n_ar.arca.activity: l10n_ar.activity_854920 +NEW l10n_ar.arca.activity: l10n_ar.activity_854930 +NEW l10n_ar.arca.activity: l10n_ar.activity_854940 +NEW l10n_ar.arca.activity: l10n_ar.activity_854950 +NEW l10n_ar.arca.activity: l10n_ar.activity_854960 +NEW l10n_ar.arca.activity: l10n_ar.activity_854990 +NEW l10n_ar.arca.activity: l10n_ar.activity_855000 +NEW l10n_ar.arca.activity: l10n_ar.activity_861010 +NEW l10n_ar.arca.activity: l10n_ar.activity_861020 +NEW l10n_ar.arca.activity: l10n_ar.activity_862110 +NEW l10n_ar.arca.activity: l10n_ar.activity_862120 +NEW l10n_ar.arca.activity: l10n_ar.activity_862130 +NEW l10n_ar.arca.activity: l10n_ar.activity_862200 +NEW l10n_ar.arca.activity: l10n_ar.activity_863110 +NEW l10n_ar.arca.activity: l10n_ar.activity_863120 +NEW l10n_ar.arca.activity: l10n_ar.activity_863190 +NEW l10n_ar.arca.activity: l10n_ar.activity_863200 +NEW l10n_ar.arca.activity: l10n_ar.activity_863300 +NEW l10n_ar.arca.activity: l10n_ar.activity_864000 +NEW l10n_ar.arca.activity: l10n_ar.activity_869010 +NEW l10n_ar.arca.activity: l10n_ar.activity_869090 +NEW l10n_ar.arca.activity: l10n_ar.activity_870100 +NEW l10n_ar.arca.activity: l10n_ar.activity_870210 +NEW l10n_ar.arca.activity: l10n_ar.activity_870220 +NEW l10n_ar.arca.activity: l10n_ar.activity_870910 +NEW l10n_ar.arca.activity: l10n_ar.activity_870920 +NEW l10n_ar.arca.activity: l10n_ar.activity_870990 +NEW l10n_ar.arca.activity: l10n_ar.activity_880000 +NEW l10n_ar.arca.activity: l10n_ar.activity_89110 +NEW l10n_ar.arca.activity: l10n_ar.activity_89120 +NEW l10n_ar.arca.activity: l10n_ar.activity_89200 +NEW l10n_ar.arca.activity: l10n_ar.activity_89300 +NEW l10n_ar.arca.activity: l10n_ar.activity_89900 +NEW l10n_ar.arca.activity: l10n_ar.activity_9 +NEW l10n_ar.arca.activity: l10n_ar.activity_900011 +NEW l10n_ar.arca.activity: l10n_ar.activity_900021 +NEW l10n_ar.arca.activity: l10n_ar.activity_900030 +NEW l10n_ar.arca.activity: l10n_ar.activity_900040 +NEW l10n_ar.arca.activity: l10n_ar.activity_900091 +NEW l10n_ar.arca.activity: l10n_ar.activity_91000 +NEW l10n_ar.arca.activity: l10n_ar.activity_910100 +NEW l10n_ar.arca.activity: l10n_ar.activity_910200 +NEW l10n_ar.arca.activity: l10n_ar.activity_910300 +NEW l10n_ar.arca.activity: l10n_ar.activity_910900 +NEW l10n_ar.arca.activity: l10n_ar.activity_920001 +NEW l10n_ar.arca.activity: l10n_ar.activity_920009 +NEW l10n_ar.arca.activity: l10n_ar.activity_931010 +NEW l10n_ar.arca.activity: l10n_ar.activity_931020 +NEW l10n_ar.arca.activity: l10n_ar.activity_931030 +NEW l10n_ar.arca.activity: l10n_ar.activity_931041 +NEW l10n_ar.arca.activity: l10n_ar.activity_931042 +NEW l10n_ar.arca.activity: l10n_ar.activity_931050 +NEW l10n_ar.arca.activity: l10n_ar.activity_931090 +NEW l10n_ar.arca.activity: l10n_ar.activity_939010 +NEW l10n_ar.arca.activity: l10n_ar.activity_939020 +NEW l10n_ar.arca.activity: l10n_ar.activity_939030 +NEW l10n_ar.arca.activity: l10n_ar.activity_939090 +NEW l10n_ar.arca.activity: l10n_ar.activity_941100 +NEW l10n_ar.arca.activity: l10n_ar.activity_941200 +NEW l10n_ar.arca.activity: l10n_ar.activity_942000 +NEW l10n_ar.arca.activity: l10n_ar.activity_949100 +NEW l10n_ar.arca.activity: l10n_ar.activity_949200 +NEW l10n_ar.arca.activity: l10n_ar.activity_949910 +NEW l10n_ar.arca.activity: l10n_ar.activity_949920 +NEW l10n_ar.arca.activity: l10n_ar.activity_949930 +NEW l10n_ar.arca.activity: l10n_ar.activity_949990 +NEW l10n_ar.arca.activity: l10n_ar.activity_951100 +NEW l10n_ar.arca.activity: l10n_ar.activity_951200 +NEW l10n_ar.arca.activity: l10n_ar.activity_952100 +NEW l10n_ar.arca.activity: l10n_ar.activity_952200 +NEW l10n_ar.arca.activity: l10n_ar.activity_952300 +NEW l10n_ar.arca.activity: l10n_ar.activity_952910 +NEW l10n_ar.arca.activity: l10n_ar.activity_952920 +NEW l10n_ar.arca.activity: l10n_ar.activity_952990 +NEW l10n_ar.arca.activity: l10n_ar.activity_960101 +NEW l10n_ar.arca.activity: l10n_ar.activity_960102 +NEW l10n_ar.arca.activity: l10n_ar.activity_960201 +NEW l10n_ar.arca.activity: l10n_ar.activity_960202 +NEW l10n_ar.arca.activity: l10n_ar.activity_960300 +NEW l10n_ar.arca.activity: l10n_ar.activity_960910 +NEW l10n_ar.arca.activity: l10n_ar.activity_960990 +NEW l10n_ar.arca.activity: l10n_ar.activity_970000 +NEW l10n_ar.arca.activity: l10n_ar.activity_99000 +NEW l10n_ar.arca.activity: l10n_ar.activity_990000 +DEL l10n_latam.identification.type: l10n_ar.it_AN +DEL l10n_latam.identification.type: l10n_ar.it_CBA +DEL l10n_latam.identification.type: l10n_ar.it_CCat +DEL l10n_latam.identification.type: l10n_ar.it_CCor +DEL l10n_latam.identification.type: l10n_ar.it_CCorr +DEL l10n_latam.identification.type: l10n_ar.it_CDI +DEL l10n_latam.identification.type: l10n_ar.it_CIBAR +DEL l10n_latam.identification.type: l10n_ar.it_CICha +DEL l10n_latam.identification.type: l10n_ar.it_CIChu +DEL l10n_latam.identification.type: l10n_ar.it_CIER +DEL l10n_latam.identification.type: l10n_ar.it_CIF +DEL l10n_latam.identification.type: l10n_ar.it_CIJ +DEL l10n_latam.identification.type: l10n_ar.it_CILP +DEL l10n_latam.identification.type: l10n_ar.it_CILR +DEL l10n_latam.identification.type: l10n_ar.it_CIMen +DEL l10n_latam.identification.type: l10n_ar.it_CIMis +DEL l10n_latam.identification.type: l10n_ar.it_CIN +DEL l10n_latam.identification.type: l10n_ar.it_CIRN +DEL l10n_latam.identification.type: l10n_ar.it_CIS +DEL l10n_latam.identification.type: l10n_ar.it_CISC +DEL l10n_latam.identification.type: l10n_ar.it_CISF +DEL l10n_latam.identification.type: l10n_ar.it_CISJ +DEL l10n_latam.identification.type: l10n_ar.it_CISL +DEL l10n_latam.identification.type: l10n_ar.it_CISdE +DEL l10n_latam.identification.type: l10n_ar.it_CIT +DEL l10n_latam.identification.type: l10n_ar.it_CITdF +DEL l10n_latam.identification.type: l10n_ar.it_CPF +DEL l10n_latam.identification.type: l10n_ar.it_CUIL +DEL l10n_latam.identification.type: l10n_ar.it_CdM +DEL l10n_latam.identification.type: l10n_ar.it_ET +DEL l10n_latam.identification.type: l10n_ar.it_LC +DEL l10n_latam.identification.type: l10n_ar.it_LE +DEL l10n_latam.identification.type: l10n_ar.it_Sigd +DEL l10n_latam.identification.type: l10n_ar.it_UpApP +DEL l10n_latam.identification.type: l10n_ar.it_cuit +DEL l10n_latam.identification.type: l10n_ar.it_dni +res.country: base.ad (noupdate switched) +res.country: base.ae (noupdate switched) +res.country: base.af (noupdate switched) +res.country: base.ag (noupdate switched) +res.country: base.ai (noupdate switched) +res.country: base.al (noupdate switched) +res.country: base.am (noupdate switched) +res.country: base.ao (noupdate switched) +res.country: base.aq (noupdate switched) +res.country: base.ar (noupdate switched) +res.country: base.as (noupdate switched) +res.country: base.at (noupdate switched) +res.country: base.au (noupdate switched) +res.country: base.aw (noupdate switched) +res.country: base.az (noupdate switched) +res.country: base.ba (noupdate switched) +res.country: base.bb (noupdate switched) +res.country: base.bd (noupdate switched) +res.country: base.be (noupdate switched) +res.country: base.bf (noupdate switched) +res.country: base.bg (noupdate switched) +res.country: base.bh (noupdate switched) +res.country: base.bi (noupdate switched) +res.country: base.bj (noupdate switched) +res.country: base.bm (noupdate switched) +res.country: base.bn (noupdate switched) +res.country: base.bo (noupdate switched) +res.country: base.bq (noupdate switched) +res.country: base.br (noupdate switched) +res.country: base.bs (noupdate switched) +res.country: base.bt (noupdate switched) +res.country: base.bw (noupdate switched) +res.country: base.by (noupdate switched) +res.country: base.bz (noupdate switched) +res.country: base.ca (noupdate switched) +res.country: base.cc (noupdate switched) +res.country: base.cd (noupdate switched) +res.country: base.cf (noupdate switched) +res.country: base.cg (noupdate switched) +res.country: base.ch (noupdate switched) +res.country: base.ci (noupdate switched) +res.country: base.ck (noupdate switched) +res.country: base.cl (noupdate switched) +res.country: base.cm (noupdate switched) +res.country: base.cn (noupdate switched) +res.country: base.co (noupdate switched) +res.country: base.cr (noupdate switched) +res.country: base.cu (noupdate switched) +res.country: base.cv (noupdate switched) +res.country: base.cx (noupdate switched) +res.country: base.cy (noupdate switched) +res.country: base.cz (noupdate switched) +res.country: base.de (noupdate switched) +res.country: base.dj (noupdate switched) +res.country: base.dk (noupdate switched) +res.country: base.dm (noupdate switched) +res.country: base.do (noupdate switched) +res.country: base.dz (noupdate switched) +res.country: base.ec (noupdate switched) +res.country: base.ee (noupdate switched) +res.country: base.eg (noupdate switched) +res.country: base.er (noupdate switched) +res.country: base.es (noupdate switched) +res.country: base.et (noupdate switched) +res.country: base.fi (noupdate switched) +res.country: base.fj (noupdate switched) +res.country: base.fk (noupdate switched) +res.country: base.fm (noupdate switched) +res.country: base.fr (noupdate switched) +res.country: base.ga (noupdate switched) +res.country: base.gd (noupdate switched) +res.country: base.ge (noupdate switched) +res.country: base.gg (noupdate switched) +res.country: base.gh (noupdate switched) +res.country: base.gi (noupdate switched) +res.country: base.gl (noupdate switched) +res.country: base.gm (noupdate switched) +res.country: base.gn (noupdate switched) +res.country: base.gq (noupdate switched) +res.country: base.gr (noupdate switched) +res.country: base.gt (noupdate switched) +res.country: base.gu (noupdate switched) +res.country: base.gw (noupdate switched) +res.country: base.gy (noupdate switched) +res.country: base.hk (noupdate switched) +res.country: base.hn (noupdate switched) +res.country: base.hr (noupdate switched) +res.country: base.ht (noupdate switched) +res.country: base.hu (noupdate switched) +res.country: base.id (noupdate switched) +res.country: base.ie (noupdate switched) +res.country: base.il (noupdate switched) +res.country: base.im (noupdate switched) +res.country: base.in (noupdate switched) +res.country: base.iq (noupdate switched) +res.country: base.ir (noupdate switched) +res.country: base.is (noupdate switched) +res.country: base.it (noupdate switched) +res.country: base.je (noupdate switched) +res.country: base.jm (noupdate switched) +res.country: base.jo (noupdate switched) +res.country: base.jp (noupdate switched) +res.country: base.ke (noupdate switched) +res.country: base.kg (noupdate switched) +res.country: base.kh (noupdate switched) +res.country: base.ki (noupdate switched) +res.country: base.km (noupdate switched) +res.country: base.kn (noupdate switched) +res.country: base.kp (noupdate switched) +res.country: base.kr (noupdate switched) +res.country: base.kw (noupdate switched) +res.country: base.ky (noupdate switched) +res.country: base.kz (noupdate switched) +res.country: base.la (noupdate switched) +res.country: base.lb (noupdate switched) +res.country: base.lc (noupdate switched) +res.country: base.li (noupdate switched) +res.country: base.lk (noupdate switched) +res.country: base.lr (noupdate switched) +res.country: base.ls (noupdate switched) +res.country: base.lt (noupdate switched) +res.country: base.lu (noupdate switched) +res.country: base.lv (noupdate switched) +res.country: base.ly (noupdate switched) +res.country: base.ma (noupdate switched) +res.country: base.mc (noupdate switched) +res.country: base.md (noupdate switched) +res.country: base.me (noupdate switched) +res.country: base.mg (noupdate switched) +res.country: base.mh (noupdate switched) +res.country: base.mk (noupdate switched) +res.country: base.ml (noupdate switched) +res.country: base.mm (noupdate switched) +res.country: base.mn (noupdate switched) +res.country: base.mo (noupdate switched) +res.country: base.mp (noupdate switched) +res.country: base.mr (noupdate switched) +res.country: base.ms (noupdate switched) +res.country: base.mt (noupdate switched) +res.country: base.mu (noupdate switched) +res.country: base.mv (noupdate switched) +res.country: base.mw (noupdate switched) +res.country: base.mx (noupdate switched) +res.country: base.my (noupdate switched) +res.country: base.mz (noupdate switched) +res.country: base.na (noupdate switched) +res.country: base.ne (noupdate switched) +res.country: base.nf (noupdate switched) +res.country: base.ng (noupdate switched) +res.country: base.ni (noupdate switched) +res.country: base.nl (noupdate switched) +res.country: base.no (noupdate switched) +res.country: base.np (noupdate switched) +res.country: base.nr (noupdate switched) +res.country: base.nu (noupdate switched) +res.country: base.nz (noupdate switched) +res.country: base.om (noupdate switched) +res.country: base.pa (noupdate switched) +res.country: base.pe (noupdate switched) +res.country: base.pf (noupdate switched) +res.country: base.pg (noupdate switched) +res.country: base.ph (noupdate switched) +res.country: base.pk (noupdate switched) +res.country: base.pl (noupdate switched) +res.country: base.pm (noupdate switched) +res.country: base.pn (noupdate switched) +res.country: base.pr (noupdate switched) +res.country: base.ps (noupdate switched) +res.country: base.pt (noupdate switched) +res.country: base.pw (noupdate switched) +res.country: base.py (noupdate switched) +res.country: base.qa (noupdate switched) +res.country: base.ro (noupdate switched) +res.country: base.rs (noupdate switched) +res.country: base.ru (noupdate switched) +res.country: base.rw (noupdate switched) +res.country: base.sa (noupdate switched) +res.country: base.sb (noupdate switched) +res.country: base.sc (noupdate switched) +res.country: base.sd (noupdate switched) +res.country: base.se (noupdate switched) +res.country: base.sg (noupdate switched) +res.country: base.sh (noupdate switched) +res.country: base.si (noupdate switched) +res.country: base.sj (noupdate switched) +res.country: base.sk (noupdate switched) +res.country: base.sl (noupdate switched) +res.country: base.sm (noupdate switched) +res.country: base.sn (noupdate switched) +res.country: base.so (noupdate switched) +res.country: base.sr (noupdate switched) +res.country: base.st (noupdate switched) +res.country: base.sv (noupdate switched) +res.country: base.sy (noupdate switched) +res.country: base.sz (noupdate switched) +res.country: base.tc (noupdate switched) +res.country: base.td (noupdate switched) +res.country: base.tg (noupdate switched) +res.country: base.th (noupdate switched) +res.country: base.tj (noupdate switched) +res.country: base.tk (noupdate switched) +res.country: base.tl (noupdate switched) +res.country: base.tm (noupdate switched) +res.country: base.tn (noupdate switched) +res.country: base.to (noupdate switched) +res.country: base.tr (noupdate switched) +res.country: base.tt (noupdate switched) +res.country: base.tv (noupdate switched) +res.country: base.tw (noupdate switched) +res.country: base.tz (noupdate switched) +res.country: base.ua (noupdate switched) +res.country: base.ug (noupdate switched) +res.country: base.uk (noupdate switched) +res.country: base.us (noupdate switched) +res.country: base.uy (noupdate switched) +res.country: base.uz (noupdate switched) +res.country: base.va (noupdate switched) +res.country: base.vc (noupdate switched) +res.country: base.ve (noupdate switched) +res.country: base.vg (noupdate switched) +res.country: base.vi (noupdate switched) +res.country: base.vn (noupdate switched) +res.country: base.vu (noupdate switched) +res.country: base.ws (noupdate switched) +res.country: base.ye (noupdate switched) +res.country: base.za (noupdate switched) +res.country: base.zm (noupdate switched) +res.country: base.zw (noupdate switched) +res.currency: base.ANG (noupdate switched) +res.currency: base.ARS (noupdate switched) +res.currency: base.AUD (noupdate switched) +res.currency: base.BOB (noupdate switched) +res.currency: base.BRL (noupdate switched) +res.currency: base.CAD (noupdate switched) +res.currency: base.CHF (noupdate switched) +res.currency: base.CLP (noupdate switched) +res.currency: base.CNY (noupdate switched) +res.currency: base.COP (noupdate switched) +res.currency: base.CZK (noupdate switched) +res.currency: base.DKK (noupdate switched) +res.currency: base.DOP (noupdate switched) +res.currency: base.EGP (noupdate switched) +res.currency: base.EUR (noupdate switched) +res.currency: base.GBP (noupdate switched) +res.currency: base.GTQ (noupdate switched) +res.currency: base.HKD (noupdate switched) +res.currency: base.HNL (noupdate switched) +res.currency: base.HUF (noupdate switched) +res.currency: base.ILS (noupdate switched) +res.currency: base.INR (noupdate switched) +res.currency: base.JMD (noupdate switched) +res.currency: base.JPY (noupdate switched) +res.currency: base.KWD (noupdate switched) +res.currency: base.MAD (noupdate switched) +res.currency: base.MXN (noupdate switched) +res.currency: base.NIO (noupdate switched) +res.currency: base.NOK (noupdate switched) +res.currency: base.PAB (noupdate switched) +res.currency: base.PEN (noupdate switched) +res.currency: base.PLN (noupdate switched) +res.currency: base.PYG (noupdate switched) +res.currency: base.RON (noupdate switched) +res.currency: base.SAR (noupdate switched) +res.currency: base.SEK (noupdate switched) +res.currency: base.SGD (noupdate switched) +res.currency: base.THB (noupdate switched) +res.currency: base.TWD (noupdate switched) +res.currency: base.USD (noupdate switched) +res.currency: base.UYU (noupdate switched) +res.currency: base.VEF (noupdate switched) +res.currency: base.ZAR (noupdate switched) +res.partner: l10n_ar.par_cfa (noupdate switched) +res.partner: l10n_ar.par_iibb_pagar (noupdate switched) +res.partner: l10n_ar.partner_afip (noupdate switched) +uom.uom: uom.product_uom_cm (noupdate switched) +uom.uom: uom.product_uom_day (noupdate switched) +uom.uom: uom.product_uom_dozen (noupdate switched) +uom.uom: uom.product_uom_floz (noupdate switched) +uom.uom: uom.product_uom_foot (noupdate switched) +uom.uom: uom.product_uom_gal (noupdate switched) +uom.uom: uom.product_uom_gram (noupdate switched) +uom.uom: uom.product_uom_hour (noupdate switched) +uom.uom: uom.product_uom_inch (noupdate switched) +uom.uom: uom.product_uom_kgm (noupdate switched) +uom.uom: uom.product_uom_km (noupdate switched) +uom.uom: uom.product_uom_lb (noupdate switched) +uom.uom: uom.product_uom_litre (noupdate switched) +uom.uom: uom.product_uom_meter (noupdate switched) +uom.uom: uom.product_uom_mile (noupdate switched) +uom.uom: uom.product_uom_oz (noupdate switched) +uom.uom: uom.product_uom_qt (noupdate switched) +uom.uom: uom.product_uom_ton (noupdate switched) +uom.uom: uom.product_uom_unit (noupdate switched) diff --git a/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..7b89ff5ca13 --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..2835888f65c --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "l10n_pe_pos", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..5171fed0d3e --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,5 @@ +---Models in module 'l10n_pe_pos'--- +---Fields in module 'l10n_pe_pos'--- +---XML records in module 'l10n_pe_pos'--- +NEW ir.ui.view: l10n_pe_pos.view_partner_form_pos_ui_inherit_l10n_pe_pos +res.partner: l10n_pe_pos.partner_pe_cf (noupdate switched) diff --git a/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..c53ac2f0f41 --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_pe_pos/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,7 @@ +---Models in module 'l10n_pe_pos'--- +---Fields in module 'l10n_pe_pos'--- +---XML records in module 'l10n_pe_pos'--- +NEW ir.ui.view: l10n_pe_pos.view_partner_form_pos_ui_inherit_l10n_pe_pos +# NOTHING TO DO: the record is not noupdate, so the module update creates it +res.partner: l10n_pe_pos.partner_pe_cf (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/noupdate_changes.xml b/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/noupdate_changes.xml new file mode 100644 index 00000000000..6e0e2a3170d --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + Business Identification + + diff --git a/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/post-migration.py b/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/post-migration.py new file mode 100644 index 00000000000..b5898484ea0 --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "l10n_pk", "20.0.1.1/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "l10n_pk", + ["base.pk"], + ["vat_label"], + ) diff --git a/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/upgrade_analysis.txt b/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/upgrade_analysis.txt new file mode 100644 index 00000000000..4fdf05a7048 --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/upgrade_analysis.txt @@ -0,0 +1,224 @@ +---Models in module 'l10n_pk'--- +---Fields in module 'l10n_pk'--- +l10n_pk / account.tax / l10n_pk_is_further_tax (boolean): NEW +---XML records in module 'l10n_pk'--- +DEL account.report: l10n_pk.l10n_pk_vat_form +DEL account.report: l10n_pk.l10n_pk_wh_vat_form +DEL account.report.column: l10n_pk.l10n_pk_vat_column_net +DEL account.report.column: l10n_pk.l10n_pk_vat_column_tax +DEL account.report.column: l10n_pk.l10n_pk_wh_vat_column_net +DEL account.report.column: l10n_pk.l10n_pk_wh_vat_column_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_AJP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_AJP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_AJS_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_AJS_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_BAS_15_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_BAS_15_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_ICP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_ICP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_ICS_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_ICS_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_KPS_15_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_KPS_15_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_KP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_KP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_AJK +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_BAL +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_ICT +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_KP +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_PUN +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_SIN +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NST_1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NST_P1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NST_S1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NS_1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NS_P1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NS_S1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_PP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_PP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_0_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_0_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_10_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_10_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_13_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_13_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_15_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_15_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_17_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_17_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_195_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_195_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_1_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_1_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_2_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_2_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_3_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_3_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_5_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_5_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_8_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_8_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SIS_13_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SIS_13_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_0_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_0_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_13_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_13_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SS_17_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SS_17_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_STP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_STP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_0_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_0_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_10_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_10_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_13_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_13_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_15_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_15_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_17_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_17_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_195_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_195_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_1_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_1_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_2_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_2_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_3_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_3_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_5_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_5_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_8_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_8_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P10_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P10_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P11_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P11_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P12_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P12_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P13_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P13_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P1_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P1_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P2_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P2_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P3_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P3_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P4_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P4_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P5_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P5_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P6_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P6_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P7_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P7_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P8_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P8_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P9_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P9_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S10_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S10_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S1_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S1_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S2_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S2_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S3_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S3_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S4_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S4_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S5_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S5_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S6_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S6_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S7_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S7_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S8_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S8_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S9_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S9_tax +DEL account.report.line: l10n_pk.l10n_pk_vat_line_AJP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_AJS_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_BAS_15 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_ICP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_ICS_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_KPS_15 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_KP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_AJK +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_BAL +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_ICT +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_KP +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_PUN +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_SIN +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NST_P +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NST_S +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NS_P +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NS_S +DEL account.report.line: l10n_pk.l10n_pk_vat_line_PP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_0 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_1 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_10 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_13 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_15 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_17 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_195 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_2 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_3 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_5 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_8 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SIS_13 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SP_13 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SP_17 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SS_17 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_STP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_0 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_1 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_10 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_13 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_15 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_17 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_195 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_2 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_3 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_5 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_8 +DEL account.report.line: l10n_pk.l10n_pk_vat_title_NSTP_vat +DEL account.report.line: l10n_pk.l10n_pk_vat_title_NST_vat +DEL account.report.line: l10n_pk.l10n_pk_vat_title_NS_vat +DEL account.report.line: l10n_pk.l10n_pk_vat_title_purchases_vat +DEL account.report.line: l10n_pk.l10n_pk_vat_title_sales_vat +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P1 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P10 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P11 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P12 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P13 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P2 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P3 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P4 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P5 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P6 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P7 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P8 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P9 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S1 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S10 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S2 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S3 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S4 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S5 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S6 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S7 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S8 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S9 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_title_purchases_vat +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_title_sales_vat +NEW ir.config_parameter: l10n_pk.l10n_pk_iap_endpoint +NEW ir.ui.view: l10n_pk.view_tax_form_inherit_l10n_pk diff --git a/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/upgrade_analysis_work.txt new file mode 100644 index 00000000000..19632cb5ceb --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_pk/20.0.1.1/upgrade_analysis_work.txt @@ -0,0 +1,227 @@ +---Models in module 'l10n_pk'--- +---Fields in module 'l10n_pk'--- +l10n_pk / account.tax / l10n_pk_is_further_tax (boolean): NEW +# NOTHING TO DO: empty is the right value for existing records +---XML records in module 'l10n_pk'--- +DEL account.report: l10n_pk.l10n_pk_vat_form +DEL account.report: l10n_pk.l10n_pk_wh_vat_form +DEL account.report.column: l10n_pk.l10n_pk_vat_column_net +DEL account.report.column: l10n_pk.l10n_pk_vat_column_tax +DEL account.report.column: l10n_pk.l10n_pk_wh_vat_column_net +DEL account.report.column: l10n_pk.l10n_pk_wh_vat_column_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_AJP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_AJP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_AJS_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_AJS_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_BAS_15_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_BAS_15_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_ICP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_ICP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_ICS_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_ICS_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_KPS_15_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_KPS_15_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_KP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_KP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_AJK +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_BAL +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_ICT +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_KP +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_PUN +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NSTP_SIN +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NST_1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NST_P1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NST_S1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NS_1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NS_P1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_NS_S1 +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_PP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_PP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_0_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_0_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_10_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_10_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_13_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_13_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_15_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_15_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_17_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_17_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_195_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_195_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_1_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_1_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_2_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_2_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_3_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_3_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_5_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_5_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_8_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_P_8_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SIS_13_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SIS_13_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_0_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_0_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_13_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_13_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SS_17_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_SS_17_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_STP_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_STP_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_0_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_0_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_10_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_10_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_13_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_13_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_15_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_15_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_16_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_16_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_17_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_17_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_195_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_195_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_1_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_1_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_2_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_2_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_3_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_3_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_5_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_5_tax +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_8_base +DEL account.report.expression: l10n_pk.l10n_pk_vat_expression_S_8_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P10_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P10_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P11_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P11_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P12_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P12_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P13_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P13_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P1_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P1_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P2_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P2_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P3_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P3_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P4_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P4_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P5_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P5_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P6_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P6_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P7_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P7_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P8_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P8_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P9_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_P9_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S10_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S10_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S1_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S1_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S2_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S2_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S3_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S3_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S4_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S4_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S5_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S5_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S6_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S6_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S7_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S7_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S8_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S8_tax +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S9_base +DEL account.report.expression: l10n_pk.l10n_pk_wh_vat_expression_S9_tax +DEL account.report.line: l10n_pk.l10n_pk_vat_line_AJP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_AJS_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_BAS_15 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_ICP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_ICS_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_KPS_15 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_KP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_AJK +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_BAL +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_ICT +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_KP +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_PUN +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NSTP_SIN +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NST_P +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NST_S +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NS_P +DEL account.report.line: l10n_pk.l10n_pk_vat_line_NS_S +DEL account.report.line: l10n_pk.l10n_pk_vat_line_PP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_0 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_1 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_10 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_13 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_15 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_17 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_195 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_2 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_3 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_5 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_P_8 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SIS_13 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SP_13 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SP_17 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_SS_17 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_STP_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_0 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_1 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_10 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_13 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_15 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_16 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_17 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_195 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_2 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_3 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_5 +DEL account.report.line: l10n_pk.l10n_pk_vat_line_S_8 +DEL account.report.line: l10n_pk.l10n_pk_vat_title_NSTP_vat +DEL account.report.line: l10n_pk.l10n_pk_vat_title_NST_vat +DEL account.report.line: l10n_pk.l10n_pk_vat_title_NS_vat +DEL account.report.line: l10n_pk.l10n_pk_vat_title_purchases_vat +DEL account.report.line: l10n_pk.l10n_pk_vat_title_sales_vat +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P1 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P10 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P11 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P12 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P13 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P2 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P3 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P4 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P5 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P6 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P7 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P8 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_P9 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S1 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S10 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S2 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S3 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S4 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S5 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S6 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S7 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S8 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_line_S9 +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_title_purchases_vat +DEL account.report.line: l10n_pk.l10n_pk_wh_vat_title_sales_vat +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW ir.config_parameter: l10n_pk.l10n_pk_iap_endpoint +NEW ir.ui.view: l10n_pk.view_tax_form_inherit_l10n_pk +# NOTHING TO DO: the record is not noupdate, so the module update creates it diff --git a/openupgrade_scripts/scripts/l10n_th/20.0.2.0/pre-migration.py b/openupgrade_scripts/scripts/l10n_th/20.0.2.0/pre-migration.py new file mode 100644 index 00000000000..27dc3f571c9 --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_th/20.0.2.0/pre-migration.py @@ -0,0 +1,40 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + +# 20.0 ships these withholding tax tags as records with external ids. In 19.0 +# they were created implicitly by the tax template csv, which names tags but +# does not give them ids, so the rows exist with no ir_model_data entry and the +# new records collide on account_account_tag_name_uniq. +_TAGS = [ + ("tag_th_pnd3", "PND3"), + ("tag_th_income_pnd3", "Income PND3"), + ("tag_th_pnd53", "PND53"), + ("tag_th_income_pnd53", "Income PND53"), +] + + +@openupgrade.migrate() +def migrate(env, version): + for xmlid, name in _TAGS: + env.cr.execute( + """ + SELECT tag.id + FROM account_account_tag tag + JOIN res_country country ON country.id = tag.country_id + WHERE tag.name ->> 'en_US' = %s + AND tag.applicability = 'taxes' + AND country.code = 'TH' + AND NOT EXISTS ( + SELECT 1 FROM ir_model_data imd + WHERE imd.model = 'account.account.tag' AND imd.res_id = tag.id + ) + """, + (name,), + ) + row = env.cr.fetchone() + if row: + openupgrade.add_xmlid( + env.cr, "l10n_th", xmlid, "account.account.tag", row[0], noupdate=True + ) diff --git a/openupgrade_scripts/scripts/l10n_th/20.0.2.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/l10n_th/20.0.2.0/upgrade_analysis.txt new file mode 100644 index 00000000000..b0c204b3b7e --- /dev/null +++ b/openupgrade_scripts/scripts/l10n_th/20.0.2.0/upgrade_analysis.txt @@ -0,0 +1,79 @@ +---Models in module 'l10n_th'--- +new model l10n_th.tax.invoice +new model report.l10n_th.report_50_tawi [abstract] +---Fields in module 'l10n_th'--- +l10n_th / account.move / l10n_th_tax_invoice_ids (one2many): NEW relation: l10n_th.tax.invoice +l10n_th / account.payment / l10n_th_wth_condition (selection): NEW selection_keys: ['at_source', 'forever', 'one_time'], hasdefault: compute +l10n_th / account.tax / l10n_th_income_tax_type (selection): NEW selection_keys: ['advertising', 'commission', 'contract', 'dividend', 'hire_of_work', 'insurance', 'interest', 'na', 'others', 'prize', 'prof_fees', 'public_actor', 'rentals', 'royalties', 'service', 'transportation'] +l10n_th / account.tax / l10n_th_income_tax_type_others (char): NEW +l10n_th / l10n_th.tax.invoice / amount_residual (float) : NEW +l10n_th / l10n_th.tax.invoice / company_id (many2one) : NEW relation: res.company, isrelated: related, stored +l10n_th / l10n_th.tax.invoice / date (date) : NEW +l10n_th / l10n_th.tax.invoice / invoice_move_id (many2one) : NEW relation: account.move, required +l10n_th / l10n_th.tax.invoice / is_partially_paid (boolean) : NEW +l10n_th / l10n_th.tax.invoice / payment_move_id (many2one) : NEW relation: account.move +l10n_th / l10n_th.tax.invoice / reference (char) : NEW +l10n_th / l10n_th.tax.invoice / state (selection) : NEW required, selection_keys: ['cancel', 'draft', 'posted'] +l10n_th / l10n_th.tax.invoice / tax_group_amounts (json) : NEW +l10n_th / l10n_th.tax.invoice / tax_invoice_lines (json) : NEW +l10n_th / l10n_th.tax.invoice / tax_invoice_number (char) : NEW +l10n_th / l10n_th.tax.invoice / total_amount (float) : NEW +l10n_th / l10n_th.tax.invoice / total_on_payment_amount (float): NEW +l10n_th / l10n_th.tax.invoice / vat_amount (float) : NEW +l10n_th / res.company / l10n_th_is_vat_registered (boolean): NEW +l10n_th / res.partner / l10n_th_company_type (selection): NEW selection_keys: ['asso', 'company_ltd', 'foundation', 'joint_venture', 'ltd_partner', 'others', 'pub_company_ltd'] +l10n_th / res.partner / l10n_th_title (selection) : NEW selection_keys: ['khun', 'mr', 'mrs', 'ms'] +l10n_th / res.partner.bank / proxy_type (False) : selection_keys removed: [uen] +---XML records in module 'l10n_th'--- +NEW account.account.tag: l10n_th.tag_th_income_pnd3 +NEW account.account.tag: l10n_th.tag_th_income_pnd53 +NEW account.account.tag: l10n_th.tag_th_pnd3 +NEW account.account.tag: l10n_th.tag_th_pnd53 +DEL account.report: l10n_th.tax_report_pnd3 +DEL account.report: l10n_th.tax_report_pnd53 +DEL account.report.column: l10n_th.tax_report_pnd3_balance +DEL account.report.column: l10n_th.tax_report_pnd53_balance +NEW account.report.expression: l10n_th.tax_report_out_tax_sale_tag_neg +NEW account.report.expression: l10n_th.tax_report_out_tax_sale_tag_pos +DEL account.report.expression: l10n_th.tax_report_surcharge_pnd3 +DEL account.report.expression: l10n_th.tax_report_surcharge_pnd53 +DEL account.report.expression: l10n_th.tax_report_total_income_pnd3 +DEL account.report.expression: l10n_th.tax_report_total_income_pnd53 +DEL account.report.expression: l10n_th.tax_report_total_pnd3 +DEL account.report.expression: l10n_th.tax_report_total_pnd53 +DEL account.report.expression: l10n_th.tax_report_total_remittance_pnd3 +DEL account.report.expression: l10n_th.tax_report_total_remittance_pnd53 +DEL account.report.line: l10n_th.tax_report_surcharge_pnd3_line +DEL account.report.line: l10n_th.tax_report_surcharge_pnd53_line +DEL account.report.line: l10n_th.tax_report_total_income_pnd3_line +DEL account.report.line: l10n_th.tax_report_total_income_pnd53_line +DEL account.report.line: l10n_th.tax_report_total_pnd3_line +DEL account.report.line: l10n_th.tax_report_total_pnd53_line +DEL account.report.line: l10n_th.tax_report_total_remittance_pnd3_line +DEL account.report.line: l10n_th.tax_report_total_remittance_pnd53_line +NEW ir.access: l10n_th.access_l10n_th_tax_invoice +NEW ir.access: l10n_th.access_l10n_th_tax_invoice_readonly +NEW ir.access: l10n_th.l10n_th_tax_invoice_comp_rule +NEW ir.actions.report: l10n_th.action_report_50_tawi +NEW ir.actions.report: l10n_th.action_report_tax_invoice +DEL ir.actions.report: l10n_th.action_report_commercial_invoice [renamed to l10n_ph module] +NEW ir.actions.server: l10n_th.action_download_50_tawi_zip +NEW ir.ui.view: l10n_th.company_address_list +NEW ir.ui.view: l10n_th.report_50_tawi +NEW ir.ui.view: l10n_th.report_50_tawi_document +NEW ir.ui.view: l10n_th.report_tax_invoice +NEW ir.ui.view: l10n_th.report_tax_invoice_document +NEW ir.ui.view: l10n_th.res_company_form_inherit_l10n_th +NEW ir.ui.view: l10n_th.res_config_settings_view_form +NEW ir.ui.view: l10n_th.tawi_square +NEW ir.ui.view: l10n_th.tax_invoice_document_tax_totals +NEW ir.ui.view: l10n_th.th_partner_address_form +NEW ir.ui.view: l10n_th.tickbox_with_desc +NEW ir.ui.view: l10n_th.view_account_payment_form_inherit_l10n_th +NEW ir.ui.view: l10n_th.view_account_payment_register_form_inherit_l10n_th +NEW ir.ui.view: l10n_th.view_move_form_th_inherit +NEW ir.ui.view: l10n_th.view_partner_form_inherit_l10n_th +NEW ir.ui.view: l10n_th.view_tax_form_inherit_l10n_th +NEW ir.ui.view: l10n_th.view_tax_tree_inherit_l10n_th +DEL ir.ui.view: l10n_th.report_commercial_invoice +NEW report.paperformat: l10n_th.paperformat_tawi diff --git a/openupgrade_scripts/scripts/mail/20.0.1.19/noupdate_changes.xml b/openupgrade_scripts/scripts/mail/20.0.1.19/noupdate_changes.xml new file mode 100644 index 00000000000..c33e1b7e117 --- /dev/null +++ b/openupgrade_scripts/scripts/mail/20.0.1.19/noupdate_changes.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + phone + + + mail + + + calendar_today + + + check + + + upload + + + warning + + + + + + + + + + Messages + + + Notes + + + diff --git a/openupgrade_scripts/scripts/mail/20.0.1.19/post-migration.py b/openupgrade_scripts/scripts/mail/20.0.1.19/post-migration.py new file mode 100644 index 00000000000..f2053947539 --- /dev/null +++ b/openupgrade_scripts/scripts/mail/20.0.1.19/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "mail", "20.0.1.19/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "mail", + ["mt_comment", "mt_note"], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/mail/20.0.1.19/pre-migration.py b/openupgrade_scripts/scripts/mail/20.0.1.19/pre-migration.py new file mode 100644 index 00000000000..abfceda2c7c --- /dev/null +++ b/openupgrade_scripts/scripts/mail/20.0.1.19/pre-migration.py @@ -0,0 +1,45 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +def _claim_admin_channel_membership(env): + """Give the administrator's membership of the admin channel its new xml_id. + + 20.0 ships discuss.channel.member records for memberships that 19.0 created + implicitly through autosubscribe, so the data load tries to insert a row + that is already there and trips discuss_channel_member_partner_unique. + Claiming the existing row turns that insert into an update. + """ + env.cr.execute( + """ + SELECT m.id + FROM discuss_channel_member m + JOIN ir_model_data channel + ON channel.model = 'discuss.channel' + AND channel.module = 'mail' + AND channel.name = 'channel_admin' + AND channel.res_id = m.channel_id + JOIN ir_model_data partner + ON partner.model = 'res.partner' + AND partner.module = 'base' + AND partner.name = 'partner_admin' + AND partner.res_id = m.partner_id + """ + ) + row = env.cr.fetchone() + if row: + openupgrade.add_xmlid( + env.cr, + "mail", + "channel_member_channel_admin_partner_admin", + "discuss.channel.member", + row[0], + noupdate=True, + ) + + +@openupgrade.migrate() +def migrate(env, version): + _claim_admin_channel_membership(env) diff --git a/openupgrade_scripts/scripts/mail/20.0.1.19/upgrade_analysis.txt b/openupgrade_scripts/scripts/mail/20.0.1.19/upgrade_analysis.txt new file mode 100644 index 00000000000..aa1589207c5 --- /dev/null +++ b/openupgrade_scripts/scripts/mail/20.0.1.19/upgrade_analysis.txt @@ -0,0 +1,471 @@ +---Models in module 'mail'--- +obsolete model mail.thread.cc [abstract] +obsolete model mail.tracking.value +new model bus.sync.mixin [abstract] +new model discuss.category +new model discuss.channel.last.interest.update +new model mail.call.artifact +new model mail.poll +new model mail.poll.option +new model mail.poll.vote +new model mail.thread.subject.suggested [abstract] +new model mail.track.mixin [abstract] +---Fields in module 'mail'--- +mail / discuss.call.history / artifact_ids (one2many) : NEW relation: mail.call.artifact +mail / discuss.category / channel_ids (one2many) : NEW relation: discuss.channel +mail / discuss.category / name (char) : NEW required +mail / discuss.category / sequence (integer) : NEW hasdefault: default +mail / discuss.channel / discuss_category_id (many2one): NEW relation: discuss.category +mail / discuss.channel / is_readonly (boolean) : NEW +mail / discuss.channel / member_indices (char) : NEW isfunction: function, stored +mail / discuss.channel / pinned_message_ids (one2many) : DEL relation: mail.message +mail / discuss.channel.last.interest.update / channel_id (many2one) : NEW relation: discuss.channel, required +mail / discuss.channel.last.interest.update / last_interest_dt (datetime) : NEW required +mail / discuss.channel.member / channel_role (selection) : NEW selection_keys: ['admin', 'owner'] +mail / discuss.channel.member / custom_channel_name (char) : DEL +mail / discuss.channel.member / fetched_message_id (many2one) : DEL relation: mail.message +mail / discuss.channel.member / invitation_sent_dt (datetime) : NEW +mail / discuss.channel.member / is_favorite (boolean) : NEW +mail / ir.access / message_follower_ids (one2many): NEW relation: mail.followers +mail / ir.access / message_ids (one2many) : NEW relation: mail.message +mail / ir.actions.server / activity_plan_id (many2one) : NEW relation: mail.activity.plan, hasdefault: compute +mail / ir.actions.server / activity_role_id (many2one) : NEW relation: res.role, hasdefault: compute +mail / ir.actions.server / activity_type_id (many2one) : not related anymore +mail / ir.actions.server / activity_user_type (selection): selection_keys added: [role] (most likely nothing to do) +mail / ir.actions.server / log_note_note (html) : NEW hasdefault: compute, translate +mail / ir.actions.server / mail_post_method (selection) : DEL selection_keys: ['comment', 'email', 'note'] +mail / ir.actions.server / state (False) : selection_keys added: [log_note] (most likely nothing to do) +mail / ir.actions.server / subtype_ids (many2many) : NEW relation: mail.message.subtype, hasdefault: default +mail / ir.ui.view / technical_usage (False) : NEW selection_keys: ['mail_post_source'], mode: modify +mail / ir.ui.view / type (False) : selection_keys added: [card] (most likely nothing to do) +mail / mail.activity / activity_plan_id (many2one) : NEW relation: mail.activity.plan +mail / mail.activity / activity_template_id (many2one): NEW relation: mail.activity.plan.template +mail / mail.activity / phone (char) : NEW hasdefault: compute +mail / mail.activity / previous_activity_type_id (many2one): DEL relation: mail.activity.type +mail / mail.activity / recommended_activity_type_id (many2one): DEL relation: mail.activity.type +mail / mail.activity / role_id (many2one) : NEW relation: res.role, hasdefault: compute +mail / mail.activity / technical_usage (selection) : NEW selection_keys: ['none'] +mail / mail.activity.plan.template / next_activity_ids (many2many) : DEL relation: mail.activity.type +mail / mail.activity.plan.template / responsible_type (selection) : selection_keys added: [role] (most likely nothing to do) +mail / mail.activity.plan.template / role_id (many2one) : NEW relation: res.role, hasdefault: compute +mail / mail.activity.type / chaining_type (selection) : DEL required, selection_keys: ['suggest', 'trigger'] +mail / mail.activity.type / default_role_id (many2one) : NEW relation: res.role +mail / mail.activity.type / kpi_provider_visibility (selection): NEW selection_keys: ['all', 'none', 'own'], hasdefault: default +mail / mail.activity.type / suggested_next_type_id (many2one): NEW relation: mail.activity.type +mail / mail.activity.type / suggested_next_type_ids (many2many): DEL relation: mail.activity.type +mail / mail.activity.type / triggered_next_type_id (many2one): DEL relation: mail.activity.type +mail / mail.call.artifact / discuss_call_history_id (many2one): NEW relation: discuss.call.history +mail / mail.call.artifact / end_ms (integer) : NEW required, hasdefault: default +mail / mail.call.artifact / recording_started_by_id (many2one): NEW relation: res.users +mail / mail.call.artifact / recording_upload_pending (boolean): NEW +mail / mail.call.artifact / start_ms (integer) : NEW required, hasdefault: default +mail / mail.guest / im_status (char) : selection_keys is now '['away', 'offline', 'online']' ('False') +mail / mail.guest / im_status (char) : type is now 'selection' ('char') +mail / mail.mail / recipient_cc_ids (many2many) : NEW relation: res.partner +mail / mail.message / bookmarked_partner_ids (many2many): NEW relation: res.partner +mail / mail.message / ended_poll_ids (one2many) : NEW relation: mail.poll +mail / mail.message / message_type (selection) : selection_keys added: [tracking] (most likely nothing to do) +mail / mail.message / partner_cc_ids (many2many) : NEW relation: res.partner +mail / mail.message / starred_partner_ids (many2many): DEL relation: res.partner +mail / mail.message / started_poll_ids (one2many) : NEW relation: mail.poll +mail / mail.message / tracking_value_ids (one2many) : DEL relation: mail.tracking.value +mail / mail.poll / allow_multiple_options (boolean): NEW +mail / mail.poll / end_message_id (many2one) : NEW relation: mail.message +mail / mail.poll / option_ids (one2many) : NEW relation: mail.poll.option, required +mail / mail.poll / poll_end_dt (datetime) : NEW +mail / mail.poll / poll_question (char) : NEW required +mail / mail.poll / start_message_id (many2one) : NEW relation: mail.message, required +mail / mail.poll.option / option_emoji (char) : NEW +mail / mail.poll.option / option_label (char) : NEW required +mail / mail.poll.option / poll_id (many2one) : NEW relation: mail.poll, required +mail / mail.poll.option / vote_ids (one2many) : NEW relation: mail.poll.vote +mail / mail.poll.vote / guest_id (many2one) : NEW relation: mail.guest +mail / mail.poll.vote / option_id (many2one) : NEW relation: mail.poll.option, required +mail / mail.poll.vote / user_id (many2one) : NEW relation: res.users +mail / mail.scheduled.message / partner_cc_ids (many2many) : NEW relation: res.partner +mail / mail.template / email_layout_force_footer (boolean): NEW hasdefault: default +mail / mail.template / email_layout_force_header (boolean): NEW hasdefault: default +mail / mail.template / partner_cc (char) : NEW +mail / mail.tracking.value / currency_id (many2one) : DEL relation: res.currency +mail / mail.tracking.value / field_id (many2one) : DEL relation: ir.model.fields +mail / mail.tracking.value / field_info (json) : DEL +mail / mail.tracking.value / mail_message_id (many2one) : DEL relation: mail.message, required +mail / mail.tracking.value / new_value_char (char) : DEL +mail / mail.tracking.value / new_value_datetime (datetime) : DEL +mail / mail.tracking.value / new_value_float (float) : DEL +mail / mail.tracking.value / new_value_integer (integer) : DEL +mail / mail.tracking.value / new_value_text (text) : DEL +mail / mail.tracking.value / old_value_char (char) : DEL +mail / mail.tracking.value / old_value_datetime (datetime) : DEL +mail / mail.tracking.value / old_value_float (float) : DEL +mail / mail.tracking.value / old_value_integer (integer) : DEL +mail / mail.tracking.value / old_value_text (text) : DEL +mail / res.partner / contact_address_inline (char) : module is now 'base' ('mail') +mail / res.role / active (boolean) : NEW hasdefault: default +mail / res.users / activity_date_deadline (date) : not related anymore +mail / res.users / activity_date_deadline (date) : now a function +mail / res.users / activity_exception_decoration (selection): not related anymore +mail / res.users / activity_exception_decoration (selection): now a function +mail / res.users / activity_exception_decoration (selection): selection_keys is now '['danger', 'warning']' ('function') +mail / res.users / activity_exception_icon (char): not related anymore +mail / res.users / activity_exception_icon (char): now a function +mail / res.users / activity_ids (one2many) : is now stored +mail / res.users / activity_ids (one2many) : not related anymore +mail / res.users / activity_state (selection) : not related anymore +mail / res.users / activity_state (selection) : now a function +mail / res.users / activity_state (selection) : selection_keys is now '['overdue', 'planned', 'today']' ('function') +mail / res.users / activity_user_id (many2one) : not related anymore +mail / res.users / activity_user_id (many2one) : now a function +mail / res.users / contact_address_inline (char) : module is now 'base' ('mail') +mail / res.users / has_message (boolean) : not related anymore +mail / res.users / has_message (boolean) : now a function +mail / res.users / im_status (char) : selection_keys is now '['away', 'busy', 'offline', 'online']' ('False') +mail / res.users / im_status (char) : type is now 'selection' ('char') +mail / res.users / message_attachment_count (integer): not related anymore +mail / res.users / message_attachment_count (integer): now a function +mail / res.users / message_follower_ids (one2many): is now stored +mail / res.users / message_follower_ids (one2many): not related anymore +mail / res.users / message_has_error (boolean) : not related anymore +mail / res.users / message_has_error (boolean) : now a function +mail / res.users / message_has_error_counter (integer): not related anymore +mail / res.users / message_has_error_counter (integer): now a function +mail / res.users / message_ids (one2many) : is now stored +mail / res.users / message_ids (one2many) : not related anymore +mail / res.users / message_is_follower (boolean) : not related anymore +mail / res.users / message_is_follower (boolean) : now a function +mail / res.users / message_needaction (boolean) : not related anymore +mail / res.users / message_needaction (boolean) : now a function +mail / res.users / message_needaction_counter (integer): not related anymore +mail / res.users / message_needaction_counter (integer): now a function +mail / res.users / message_partner_ids (many2many): not related anymore +mail / res.users / message_partner_ids (many2many): now a function +mail / res.users / my_activity_date_deadline (date): not related anymore +mail / res.users / my_activity_date_deadline (date): now a function +mail / res.users / offline_since (datetime) : not related anymore +mail / res.users / offline_since (datetime) : now a function +mail / res.users.settings / is_discuss_sidebar_category_channel_open (boolean): DEL +mail / res.users.settings / is_discuss_sidebar_category_chat_open (boolean): DEL +mail / res.users.settings / push_to_talk_key (char) : DEL +mail / res.users.settings / use_push_to_talk (boolean) : DEL +mail / res.users.settings / voice_active_duration (integer): DEL +---XML records in module 'mail'--- +discuss.channel: mail.channel_admin (noupdate switched) +discuss.channel: mail.channel_all_employees (noupdate switched) +NEW discuss.channel.member: mail.channel_member_channel_admin_partner_admin +discuss.channel.member: mail.channel_member_general_channel_for_admin (noupdate switched) +NEW ir.access: mail.access_discuss_category_erp_manager +NEW ir.access: mail.access_discuss_category_user +NEW ir.access: mail.access_discuss_channel_last_interest_update_system +NEW ir.access: mail.access_discuss_channel_rtc_session_system +NEW ir.access: mail.access_discuss_voice_metadata_user +NEW ir.access: mail.access_fetchmail_server +NEW ir.access: mail.access_mail_activity_plan_template_user +NEW ir.access: mail.access_mail_activity_plan_user +NEW ir.access: mail.access_mail_activity_schedule_line_user +NEW ir.access: mail.access_mail_activity_schedule_user +NEW ir.access: mail.access_mail_activity_type_system +NEW ir.access: mail.access_mail_activity_type_user +NEW ir.access: mail.access_mail_alias_domain_system +NEW ir.access: mail.access_mail_alias_domain_user +NEW ir.access: mail.access_mail_alias_system +NEW ir.access: mail.access_mail_alias_user +NEW ir.access: mail.access_mail_blacklist_remove_system +NEW ir.access: mail.access_mail_blacklist_system +NEW ir.access: mail.access_mail_call_artifact_admin +NEW ir.access: mail.access_mail_call_artifact_user +NEW ir.access: mail.access_mail_canned_reponse +NEW ir.access: mail.access_mail_compose_message +NEW ir.access: mail.access_mail_followers_edit +NEW ir.access: mail.access_mail_followers_system +NEW ir.access: mail.access_mail_followers_user +NEW ir.access: mail.access_mail_gateway_allowed_system +NEW ir.access: mail.access_mail_guest_system +NEW ir.access: mail.access_mail_guest_user +NEW ir.access: mail.access_mail_ice_server_system +NEW ir.access: mail.access_mail_link_preview_admin +NEW ir.access: mail.access_mail_mail_system +NEW ir.access: mail.access_mail_message_link_preview_erp_manager +NEW ir.access: mail.access_mail_message_reaction_system +NEW ir.access: mail.access_mail_message_scheduled_system +NEW ir.access: mail.access_mail_message_subtype_system +NEW ir.access: mail.access_mail_message_subtype_user +NEW ir.access: mail.access_mail_message_translation_system +NEW ir.access: mail.access_mail_notification_system +NEW ir.access: mail.access_mail_notification_user +NEW ir.access: mail.access_mail_poll_erp_manager +NEW ir.access: mail.access_mail_poll_option_erp_manager +NEW ir.access: mail.access_mail_poll_vote_erp_manager +NEW ir.access: mail.access_mail_presence +NEW ir.access: mail.access_mail_push_device_system +NEW ir.access: mail.access_mail_push_system +NEW ir.access: mail.access_mail_template +NEW ir.access: mail.access_mail_template_editor +NEW ir.access: mail.access_mail_template_preview +NEW ir.access: mail.access_mail_template_reset +NEW ir.access: mail.access_publisher_warranty_contract_all +NEW ir.access: mail.access_res_role_admin +NEW ir.access: mail.access_res_role_user +NEW ir.access: mail.discuss_gif_favorite_admin_rule +NEW ir.access: mail.discuss_gif_favorite_user_rule +NEW ir.access: mail.ir_actions_report_access_user +NEW ir.access: mail.ir_rule_discuss_call_history_read_all +NEW ir.access: mail.ir_rule_discuss_channel_all +NEW ir.access: mail.ir_rule_discuss_channel_all_user_write +NEW ir.access: mail.ir_rule_discuss_channel_group_system +NEW ir.access: mail.ir_rule_discuss_channel_member_create_is_group_matching_all +NEW ir.access: mail.ir_rule_discuss_channel_member_create_is_group_matching_group_user +NEW ir.access: mail.ir_rule_discuss_channel_member_create_is_member_group_user +NEW ir.access: mail.ir_rule_discuss_channel_member_group_system +NEW ir.access: mail.ir_rule_discuss_channel_member_is_channel_admin_unlink +NEW ir.access: mail.ir_rule_discuss_channel_member_is_channel_owner_unlink +NEW ir.access: mail.ir_rule_discuss_channel_member_is_self_all +NEW ir.access: mail.ir_rule_discuss_channel_member_is_self_unlink +NEW ir.access: mail.ir_rule_discuss_channel_member_read_all +NEW ir.access: mail.ir_rule_mail_canned_response_admin +NEW ir.access: mail.ir_rule_mail_canned_response_user_read +NEW ir.access: mail.ir_rule_mail_canned_response_user_update +NEW ir.access: mail.ir_rule_mail_notifications_group_portal +NEW ir.access: mail.ir_rule_mail_notifications_group_user +NEW ir.access: mail.ir_rule_mail_scheduled_message +NEW ir.access: mail.ir_rule_mail_scheduled_message_user +NEW ir.access: mail.mail_activity_plan_rule_admin +NEW ir.access: mail.mail_activity_plan_template_rule_admin +NEW ir.access: mail.mail_activity_rule_access_create +NEW ir.access: mail.mail_activity_rule_access_read +NEW ir.access: mail.mail_activity_rule_access_unlink +NEW ir.access: mail.mail_activity_rule_access_write +NEW ir.access: mail.mail_activity_rule_user +NEW ir.access: mail.mail_compose_message_rule +NEW ir.access: mail.mail_message_rule_access_create +NEW ir.access: mail.mail_message_rule_access_create_1 +NEW ir.access: mail.mail_message_rule_access_read +NEW ir.access: mail.mail_message_rule_access_unlink +NEW ir.access: mail.mail_message_rule_access_unlink_1 +NEW ir.access: mail.mail_message_rule_access_write +NEW ir.access: mail.mail_message_rule_access_write_1 +NEW ir.access: mail.mail_message_subtype_rule_public +NEW ir.access: mail.mail_template_editor_rule +NEW ir.access: mail.mail_template_employee_rule +NEW ir.access: mail.res_users_settings_volumes_rule_admin +NEW ir.access: mail.res_users_settings_volumes_rule_user +NEW ir.actions.act_url: mail.action_open_discuss_settings +ir.actions.act_window: base.ir_cron_act (deleted domain) +ir.actions.act_window: mail.act_server_history (deleted domain) +NEW ir.actions.act_window: mail.discuss_category_settings_action +ir.actions.act_window: mail.discuss_channel_action (deleted domain) +NEW ir.actions.act_window: mail.discuss_my_conversations_action +NEW ir.actions.act_window: mail.ir_ui_view_action_usage_mail_post +NEW ir.actions.act_window: mail.mail_activity_action_to_assign +ir.actions.act_window: mail.mail_activity_without_access_action (deleted domain) +DEL ir.actions.act_window: mail.action_view_mail_tracking_value +NEW ir.actions.act_window.view: mail.mail_activity_action_my_view_graph +NEW ir.actions.act_window.view: mail.mail_activity_action_my_view_pivot +NEW ir.actions.act_window.view: mail.mail_activity_action_to_assign_view_list +ir.config_parameter: mail.gc_delete_overdue_activities_year_threshold (noupdate switched) +ir.config_parameter: mail.restrict_template_rendering (noupdate switched) +ir.cron: mail.ir_cron_delete_notification (noupdate switched) +ir.cron: mail.ir_cron_discuss_channel_member_unmute (noupdate switched) +NEW ir.cron: mail.ir_cron_discuss_channel_sync_last_interest_dt +NEW ir.cron: mail.ir_cron_mail_end_polls +ir.cron: mail.ir_cron_mail_gateway_action (noupdate switched) +ir.cron: mail.ir_cron_mail_scheduler_action (noupdate switched) +ir.cron: mail.ir_cron_module_update_notification (noupdate switched) +ir.cron: mail.ir_cron_post_scheduled_message (noupdate switched) +ir.cron: mail.ir_cron_send_scheduled_message (noupdate switched) +ir.cron: mail.ir_cron_web_push_notification (noupdate switched) +DEL ir.model.access: mail.access_discuss_call_history_portal +DEL ir.model.access: mail.access_discuss_call_history_public +DEL ir.model.access: mail.access_discuss_call_history_user +DEL ir.model.access: mail.access_discuss_channel_member_portal +DEL ir.model.access: mail.access_discuss_channel_member_public +DEL ir.model.access: mail.access_discuss_channel_member_user +DEL ir.model.access: mail.access_discuss_channel_portal +DEL ir.model.access: mail.access_discuss_channel_public +DEL ir.model.access: mail.access_discuss_channel_rtc_session_system +DEL ir.model.access: mail.access_discuss_channel_system +DEL ir.model.access: mail.access_discuss_channel_user +DEL ir.model.access: mail.access_discuss_gif_favorite +DEL ir.model.access: mail.access_discuss_voice_metadata_user +DEL ir.model.access: mail.access_fetchmail_server +DEL ir.model.access: mail.access_mail_activity_plan_system +DEL ir.model.access: mail.access_mail_activity_plan_template_system +DEL ir.model.access: mail.access_mail_activity_plan_template_user +DEL ir.model.access: mail.access_mail_activity_plan_user +DEL ir.model.access: mail.access_mail_activity_schedule_line_user +DEL ir.model.access: mail.access_mail_activity_schedule_user +DEL ir.model.access: mail.access_mail_activity_type_system +DEL ir.model.access: mail.access_mail_activity_type_user +DEL ir.model.access: mail.access_mail_activity_user +DEL ir.model.access: mail.access_mail_alias_domain_system +DEL ir.model.access: mail.access_mail_alias_domain_user +DEL ir.model.access: mail.access_mail_alias_system +DEL ir.model.access: mail.access_mail_alias_user +DEL ir.model.access: mail.access_mail_blacklist_remove_system +DEL ir.model.access: mail.access_mail_blacklist_system +DEL ir.model.access: mail.access_mail_canned_reponse +DEL ir.model.access: mail.access_mail_compose_message +DEL ir.model.access: mail.access_mail_followers_edit +DEL ir.model.access: mail.access_mail_followers_system +DEL ir.model.access: mail.access_mail_followers_user +DEL ir.model.access: mail.access_mail_gateway_allowed_system +DEL ir.model.access: mail.access_mail_guest_system +DEL ir.model.access: mail.access_mail_guest_user +DEL ir.model.access: mail.access_mail_ice_server_system +DEL ir.model.access: mail.access_mail_link_preview_admin +DEL ir.model.access: mail.access_mail_mail_system +DEL ir.model.access: mail.access_mail_message_all +DEL ir.model.access: mail.access_mail_message_link_preview_erp_manager +DEL ir.model.access: mail.access_mail_message_portal +DEL ir.model.access: mail.access_mail_message_reaction_system +DEL ir.model.access: mail.access_mail_message_scheduled_system +DEL ir.model.access: mail.access_mail_message_subtype_portal +DEL ir.model.access: mail.access_mail_message_subtype_public +DEL ir.model.access: mail.access_mail_message_subtype_system +DEL ir.model.access: mail.access_mail_message_subtype_user +DEL ir.model.access: mail.access_mail_message_translation_system +DEL ir.model.access: mail.access_mail_message_user +DEL ir.model.access: mail.access_mail_notification_portal +DEL ir.model.access: mail.access_mail_notification_system +DEL ir.model.access: mail.access_mail_notification_user +DEL ir.model.access: mail.access_mail_presence +DEL ir.model.access: mail.access_mail_push_device_system +DEL ir.model.access: mail.access_mail_push_system +DEL ir.model.access: mail.access_mail_scheduled_message +DEL ir.model.access: mail.access_mail_template +DEL ir.model.access: mail.access_mail_template_editor +DEL ir.model.access: mail.access_mail_template_preview +DEL ir.model.access: mail.access_mail_template_reset +DEL ir.model.access: mail.access_mail_template_system +DEL ir.model.access: mail.access_mail_tracking_value_system +DEL ir.model.access: mail.access_publisher_warranty_contract_all +DEL ir.model.access: mail.access_res_role_admin +DEL ir.model.access: mail.access_res_role_user +DEL ir.model.access: mail.access_res_users_settings_volumes_user +DEL ir.model.access: mail.ir_actions_report_access_user +ir.model.constraint: mail.constraint_discuss_call_history_channel_id_end_dt_idx (changed definition: is now 'False' ('INDEX (channel_id, end_dt) WHERE end_dt IS NULL')) +ir.model.constraint: mail.constraint_discuss_call_history_channel_id_not_null_constraint (changed definition: is now 'False' ('CHECK (channel_id IS NOT NULL)')) +ir.model.constraint: mail.constraint_discuss_call_history_message_id_unique_constraint (changed definition: is now 'False' ('UNIQUE (start_call_message_id)')) +ir.model.constraint: mail.constraint_discuss_call_history_start_dt_is_not_null_constraint (changed definition: is now 'False' ('CHECK (start_dt IS NOT NULL)')) +NEW ir.model.constraint: mail.constraint_discuss_category_name_unique +ir.model.constraint: mail.constraint_discuss_channel_from_message_id_unique (changed definition: is now 'False' ('UNIQUE(from_message_id)')) +ir.model.constraint: mail.constraint_discuss_channel_group_public_id_check (changed definition: is now 'False' ('CHECK (channel_type = 'channel' OR group_public_id IS NULL)')) +NEW ir.model.constraint: mail.constraint_discuss_channel_member_channel_id_id_idx +ir.model.constraint: mail.constraint_discuss_channel_member_guest_unique (changed definition: is now 'False' ('UNIQUE INDEX (channel_id, guest_id) WHERE guest_id IS NOT NULL')) +NEW ir.model.constraint: mail.constraint_discuss_channel_member_indices_channel_check +NEW ir.model.constraint: mail.constraint_discuss_channel_member_indices_chat_check +NEW ir.model.constraint: mail.constraint_discuss_channel_member_indices_unique +ir.model.constraint: mail.constraint_discuss_channel_member_partner_or_guest_exists (changed definition: is now 'False' ('CHECK((partner_id IS NOT NULL AND guest_id IS NULL) OR (partner_id IS NULL AND guest_id IS NOT NULL))')) +ir.model.constraint: mail.constraint_discuss_channel_member_partner_unique (changed definition: is now 'False' ('UNIQUE INDEX (channel_id, partner_id) WHERE partner_id IS NOT NULL')) +ir.model.constraint: mail.constraint_discuss_channel_member_seen_message_id_idx (changed definition: is now 'False' ('INDEX (channel_id, partner_id, seen_message_id)')) +NEW ir.model.constraint: mail.constraint_discuss_channel_readonly_channel_type_check +ir.model.constraint: mail.constraint_discuss_channel_rtc_session_channel_member_unique (changed definition: is now 'False' ('UNIQUE(channel_member_id)')) +ir.model.constraint: mail.constraint_discuss_channel_uuid_unique (changed definition: is now 'False' ('UNIQUE(uuid)')) +ir.model.constraint: mail.constraint_discuss_gif_favorite_user_gif_favorite (changed definition: is now 'False' ('unique(create_uid,tenor_gif_id)')) +NEW ir.model.constraint: mail.constraint_ir_attachment_mail_call_artifact_uniq +ir.model.constraint: mail.constraint_ir_mail_server_unique_owner_user_id (changed definition: is now 'False' ('UNIQUE(owner_user_id)')) +ir.model.constraint: mail.constraint_mail_activity_check_res_id_is_set_if_model (changed definition: is now 'False' ('CHECK( (COALESCE(res_model, '') <> '' AND (res_id IS NOT NULL AND res_id != 0)) OR (COALESCE(res_model, '') = '' AND (res_id IS NULL OR res_id = 0)) )')) +ir.model.constraint: mail.constraint_mail_activity_check_user_id_is_set_if_model (changed definition: is now 'False' ('CHECK( (COALESCE(res_model, '') <> '' OR user_id IS NOT NULL) )')) +NEW ir.model.constraint: mail.constraint_mail_activity_unassigned_role_idx +ir.model.constraint: mail.constraint_mail_alias_domain_bounce_email_uniques (changed definition: is now 'False' ('UNIQUE(bounce_alias, name)')) +ir.model.constraint: mail.constraint_mail_alias_domain_catchall_email_uniques (changed definition: is now 'False' ('UNIQUE(catchall_alias, name)')) +ir.model.constraint: mail.constraint_mail_alias_name_domain_unique (changed definition: is now 'False' ('UNIQUE INDEX (alias_name, COALESCE(alias_domain_id, 0))')) +ir.model.constraint: mail.constraint_mail_blacklist_unique_email (changed definition: is now 'False' ('unique (email)')) +NEW ir.model.constraint: mail.constraint_mail_call_artifact_artifact_has_possessor +NEW ir.model.constraint: mail.constraint_mail_call_artifact_start_before_end +ir.model.constraint: mail.constraint_mail_followers_mail_followers_res_partner_res_model_id_uniq (changed definition: is now 'False' ('unique(res_model,res_id,partner_id)')) +ir.model.constraint: mail.constraint_mail_link_preview_unique_source_url (changed definition: is now 'False' ('UNIQUE INDEX (source_url)')) +ir.model.constraint: mail.constraint_mail_message_link_preview_unique_message_link_preview (changed definition: is now 'False' ('UNIQUE INDEX (message_id, link_preview_id)')) +ir.model.constraint: mail.constraint_mail_message_model_res_id_id_idx (changed definition: is now 'False' ('INDEX (model, res_id, id)')) +ir.model.constraint: mail.constraint_mail_message_model_res_id_idx (changed definition: is now 'False' ('INDEX (model, res_id)')) +ir.model.constraint: mail.constraint_mail_message_reaction_guest_unique (changed definition: is now 'False' ('UNIQUE INDEX (message_id, content, guest_id) WHERE guest_id IS NOT NULL')) +ir.model.constraint: mail.constraint_mail_message_reaction_partner_or_guest_exists (changed definition: is now 'False' ('CHECK((partner_id IS NOT NULL AND guest_id IS NULL) OR (partner_id IS NULL AND guest_id IS NOT NULL))')) +ir.model.constraint: mail.constraint_mail_message_reaction_partner_unique (changed definition: is now 'False' ('UNIQUE INDEX (message_id, content, partner_id) WHERE partner_id IS NOT NULL')) +ir.model.constraint: mail.constraint_mail_message_translation_unique (changed definition: is now 'False' ('UNIQUE INDEX (message_id, target_lang)')) +ir.model.constraint: mail.constraint_mail_notification_author_id_notification_status_failure (changed definition: is now 'False' ('INDEX (author_id, notification_status) WHERE notification_status IN ('bounce', 'exception')')) +ir.model.constraint: mail.constraint_mail_notification_notification_partner_or_email_required (changed definition: is now 'False' ('CHECK(notification_type != 'email' OR failure_type IS NOT NULL OR res_partner_id IS NOT NULL OR COALESCE(mail_email_address, '') != '')')) +ir.model.constraint: mail.constraint_mail_notification_notification_partner_required (changed definition: is now 'False' ('CHECK(notification_type != 'inbox' OR res_partner_id IS NOT NULL)')) +ir.model.constraint: mail.constraint_mail_notification_res_partner_id_is_read_notification__e5e0b7fb (changed definition: is now 'False' ('INDEX (res_partner_id, is_read, notification_status, mail_message_id)')) +ir.model.constraint: mail.constraint_mail_notification_unique_mail_message_id_res_partner_id_ (changed definition: is now 'False' ('UNIQUE INDEX (mail_message_id, res_partner_id) WHERE res_partner_id IS NOT NULL')) +NEW ir.model.constraint: mail.constraint_mail_poll_option_check_option_label +NEW ir.model.constraint: mail.constraint_mail_poll_unique_end_message_id +NEW ir.model.constraint: mail.constraint_mail_poll_unique_start_message_id +NEW ir.model.constraint: mail.constraint_mail_poll_vote_check_user_or_guest_set +NEW ir.model.constraint: mail.constraint_mail_poll_vote_unique_option_id_guest_id +NEW ir.model.constraint: mail.constraint_mail_poll_vote_unique_option_id_user_id +ir.model.constraint: mail.constraint_mail_presence_guest_unique (changed definition: is now 'False' ('UNIQUE INDEX (guest_id) WHERE guest_id IS NOT NULL')) +ir.model.constraint: mail.constraint_mail_presence_partner_or_guest_exists (changed definition: is now 'False' ('CHECK((user_id IS NOT NULL AND guest_id IS NULL) OR (user_id IS NULL AND guest_id IS NOT NULL))')) +ir.model.constraint: mail.constraint_mail_presence_user_unique (changed definition: is now 'False' ('UNIQUE INDEX (user_id) WHERE user_id IS NOT NULL')) +ir.model.constraint: mail.constraint_mail_push_device_endpoint_unique (changed definition: is now 'False' ('unique(endpoint)')) +ir.model.constraint: mail.constraint_res_role_unique_name (changed definition: is now 'False' ('UNIQUE INDEX (name)')) +ir.model.constraint: mail.constraint_res_users_notification_type (changed definition: is now 'False' ('CHECK (notification_type = 'email' OR NOT share)')) +ir.model.constraint: mail.constraint_res_users_settings_volumes_guest_unique (changed definition: is now 'False' ('UNIQUE INDEX (user_setting_id, guest_id) WHERE guest_id IS NOT NULL')) +ir.model.constraint: mail.constraint_res_users_settings_volumes_partner_or_guest_exists (changed definition: is now 'False' ('CHECK((partner_id IS NOT NULL AND guest_id IS NULL) OR (partner_id IS NULL AND guest_id IS NOT NULL))')) +ir.model.constraint: mail.constraint_res_users_settings_volumes_partner_unique (changed definition: is now 'False' ('UNIQUE INDEX (user_setting_id, partner_id) WHERE partner_id IS NOT NULL')) +DEL ir.rule: mail.discuss_gif_favorite_admin_rule (noupdate) +DEL ir.rule: mail.discuss_gif_favorite_user_rule (noupdate) +DEL ir.rule: mail.ir_rule_discuss_call_history_read_all (noupdate) +DEL ir.rule: mail.ir_rule_discuss_channel_all (noupdate) +DEL ir.rule: mail.ir_rule_discuss_channel_group_system (noupdate) +DEL ir.rule: mail.ir_rule_discuss_channel_member_create_is_group_matching_all (noupdate) +DEL ir.rule: mail.ir_rule_discuss_channel_member_create_is_group_matching_group_user (noupdate) +DEL ir.rule: mail.ir_rule_discuss_channel_member_create_is_member_group_user (noupdate) +DEL ir.rule: mail.ir_rule_discuss_channel_member_group_system (noupdate) +DEL ir.rule: mail.ir_rule_discuss_channel_member_is_self_all (noupdate) +DEL ir.rule: mail.ir_rule_discuss_channel_member_read_all (noupdate) +DEL ir.rule: mail.ir_rule_mail_canned_response_admin (noupdate) +DEL ir.rule: mail.ir_rule_mail_canned_response_user_read (noupdate) +DEL ir.rule: mail.ir_rule_mail_canned_response_user_update (noupdate) +DEL ir.rule: mail.ir_rule_mail_notifications_group_portal (noupdate) +DEL ir.rule: mail.ir_rule_mail_notifications_group_user (noupdate) +DEL ir.rule: mail.ir_rule_mail_scheduled_message_user (noupdate) +DEL ir.rule: mail.mail_activity_plan_rule_admin (noupdate) +DEL ir.rule: mail.mail_activity_plan_template_rule_admin (noupdate) +DEL ir.rule: mail.mail_activity_rule_user (noupdate) +DEL ir.rule: mail.mail_compose_message_rule (noupdate) +DEL ir.rule: mail.mail_message_subtype_rule_public (noupdate) +DEL ir.rule: mail.mail_template_editor_rule (noupdate) +DEL ir.rule: mail.mail_template_employee_rule (noupdate) +DEL ir.rule: mail.res_users_settings_volumes_rule_admin (noupdate) +DEL ir.rule: mail.res_users_settings_volumes_rule_user (noupdate) +NEW ir.ui.menu: mail.ir_ui_view_menu_usage_mail_post +NEW ir.ui.menu: mail.menu_discuss_category +NEW ir.ui.menu: mail.menu_discuss_user_settings +NEW ir.ui.menu: mail.menu_settings +DEL ir.ui.menu: mail.discuss_technical +DEL ir.ui.menu: mail.menu_mail_tracking_value +NEW ir.ui.view: mail.content_markdown +NEW ir.ui.view: mail.content_text +NEW ir.ui.view: mail.discuss_call_history_view_search +NEW ir.ui.view: mail.discuss_category_view_form +NEW ir.ui.view: mail.discuss_category_view_kanban +NEW ir.ui.view: mail.discuss_category_view_search +NEW ir.ui.view: mail.discuss_category_view_tree +NEW ir.ui.view: mail.discuss_my_conversations_view_search +NEW ir.ui.view: mail.group_change_template +NEW ir.ui.view: mail.ir_access_form_view_inherit_mail +NEW ir.ui.view: mail.ir_attachment_view_list +NEW ir.ui.view: mail.ir_ui_view_view_search_mail +NEW ir.ui.view: mail.mail_activity_view_graph +NEW ir.ui.view: mail.mail_activity_view_pivot +NEW ir.ui.view: mail.mail_tracking_template +NEW ir.ui.view: mail.res_config_settings_view_form_sfu_client_source +DEL ir.ui.view: mail.view_mail_tracking_value_form +DEL ir.ui.view: mail.view_mail_tracking_value_tree +mail.activity.type: mail.mail_activity_data_call (noupdate switched) +mail.activity.type: mail.mail_activity_data_email (noupdate switched) +mail.activity.type: mail.mail_activity_data_meeting (noupdate switched) +mail.activity.type: mail.mail_activity_data_todo (noupdate switched) +mail.activity.type: mail.mail_activity_data_upload_document (noupdate switched) +mail.activity.type: mail.mail_activity_data_warning (noupdate switched) +mail.canned.response: mail.mail_canned_response_data_hello (noupdate switched) +mail.message: mail.module_install_notification (noupdate switched) +mail.message.subtype: mail.mt_activities (noupdate switched) +mail.message.subtype: mail.mt_comment (noupdate switched) +NEW mail.message.subtype: mail.mt_important_notification +mail.message.subtype: mail.mt_note (noupdate switched) +res.groups: mail.group_mail_canned_response_admin (noupdate switched) +res.groups: mail.group_mail_notification_type_inbox (noupdate switched) +res.groups: mail.group_mail_template_editor (noupdate switched) +res.groups.privilege: mail.res_groups_privilege_canned_response (noupdate switched) +res.partner: base.partner_root (noupdate switched) +res.users: base.user_root (noupdate switched) diff --git a/openupgrade_scripts/scripts/mail_group/20.0.1.1/noupdate_changes.xml b/openupgrade_scripts/scripts/mail_group/20.0.1.1/noupdate_changes.xml new file mode 100644 index 00000000000..85339a541c6 --- /dev/null +++ b/openupgrade_scripts/scripts/mail_group/20.0.1.1/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/openupgrade_scripts/scripts/mail_group/20.0.1.1/post-migration.py b/openupgrade_scripts/scripts/mail_group/20.0.1.1/post-migration.py new file mode 100644 index 00000000000..0a474d11d6d --- /dev/null +++ b/openupgrade_scripts/scripts/mail_group/20.0.1.1/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "mail_group", "20.0.1.1/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/mail_group/20.0.1.1/upgrade_analysis.txt b/openupgrade_scripts/scripts/mail_group/20.0.1.1/upgrade_analysis.txt new file mode 100644 index 00000000000..1fbefb37137 --- /dev/null +++ b/openupgrade_scripts/scripts/mail_group/20.0.1.1/upgrade_analysis.txt @@ -0,0 +1,38 @@ +---Models in module 'mail_group'--- +---Fields in module 'mail_group'--- +---XML records in module 'mail_group'--- +NEW ir.access: mail_group.access_mail_group_message_reject +NEW ir.access: mail_group.access_mail_group_user +NEW ir.access: mail_group.mail_group_member_rule_administrator +NEW ir.access: mail_group.mail_group_member_rule_user +NEW ir.access: mail_group.mail_group_message_rule_administrator +NEW ir.access: mail_group.mail_group_message_rule_public +NEW ir.access: mail_group.mail_group_message_rule_user +NEW ir.access: mail_group.mail_group_message_rule_user_write +NEW ir.access: mail_group.mail_group_moderation_rule_administrator +NEW ir.access: mail_group.mail_group_moderation_rule_user +NEW ir.access: mail_group.mail_group_rule_administrator +NEW ir.access: mail_group.mail_group_rule_read_all +NEW ir.access: mail_group.mail_group_rule_write_all +DEL ir.model.access: mail_group.access_mail_group_all_portal +DEL ir.model.access: mail_group.access_mail_group_all_public +DEL ir.model.access: mail_group.access_mail_group_member +DEL ir.model.access: mail_group.access_mail_group_message_all_portal +DEL ir.model.access: mail_group.access_mail_group_message_all_public +DEL ir.model.access: mail_group.access_mail_group_message_reject +DEL ir.model.access: mail_group.access_mail_group_message_user +DEL ir.model.access: mail_group.access_mail_group_moderation +DEL ir.model.access: mail_group.access_mail_group_user +ir.model.constraint: mail_group.constraint_mail_group_member_unique_partner (changed definition: is now 'False' ('UNIQUE(partner_id, mail_group_id)')) +ir.model.constraint: mail_group.constraint_mail_group_moderation_mail_group_email_uniq (changed definition: is now 'False' ('UNIQUE(mail_group_id, email)')) +DEL ir.rule: mail_group.mail_group_member_rule_administrator (noupdate) +DEL ir.rule: mail_group.mail_group_member_rule_user (noupdate) +DEL ir.rule: mail_group.mail_group_message_rule_administrator (noupdate) +DEL ir.rule: mail_group.mail_group_message_rule_public (noupdate) +DEL ir.rule: mail_group.mail_group_message_rule_user (noupdate) +DEL ir.rule: mail_group.mail_group_moderation_rule_administrator (noupdate) +DEL ir.rule: mail_group.mail_group_moderation_rule_user (noupdate) +DEL ir.rule: mail_group.mail_group_rule_administrator (noupdate) +DEL ir.rule: mail_group.mail_group_rule_read_all (noupdate) +DEL ir.rule: mail_group.mail_group_rule_write_all (noupdate) +res.groups: mail_group.group_mail_group_manager (noupdate switched) diff --git a/openupgrade_scripts/scripts/mail_group/20.0.1.1/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/mail_group/20.0.1.1/upgrade_analysis_work.txt new file mode 100644 index 00000000000..689911f5b83 --- /dev/null +++ b/openupgrade_scripts/scripts/mail_group/20.0.1.1/upgrade_analysis_work.txt @@ -0,0 +1,42 @@ +---Models in module 'mail_group'--- +---Fields in module 'mail_group'--- +---XML records in module 'mail_group'--- +NEW ir.access: mail_group.access_mail_group_message_reject +NEW ir.access: mail_group.access_mail_group_user +NEW ir.access: mail_group.mail_group_member_rule_administrator +NEW ir.access: mail_group.mail_group_member_rule_user +NEW ir.access: mail_group.mail_group_message_rule_administrator +NEW ir.access: mail_group.mail_group_message_rule_public +NEW ir.access: mail_group.mail_group_message_rule_user +NEW ir.access: mail_group.mail_group_message_rule_user_write +NEW ir.access: mail_group.mail_group_moderation_rule_administrator +NEW ir.access: mail_group.mail_group_moderation_rule_user +NEW ir.access: mail_group.mail_group_rule_administrator +NEW ir.access: mail_group.mail_group_rule_read_all +NEW ir.access: mail_group.mail_group_rule_write_all +DEL ir.model.access: mail_group.access_mail_group_all_portal +DEL ir.model.access: mail_group.access_mail_group_all_public +DEL ir.model.access: mail_group.access_mail_group_member +DEL ir.model.access: mail_group.access_mail_group_message_all_portal +DEL ir.model.access: mail_group.access_mail_group_message_all_public +DEL ir.model.access: mail_group.access_mail_group_message_reject +DEL ir.model.access: mail_group.access_mail_group_message_user +DEL ir.model.access: mail_group.access_mail_group_moderation +DEL ir.model.access: mail_group.access_mail_group_user +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.model.constraint: mail_group.constraint_mail_group_member_unique_partner (changed definition: is now 'False' ('UNIQUE(partner_id, mail_group_id)')) +ir.model.constraint: mail_group.constraint_mail_group_moderation_mail_group_email_uniq (changed definition: is now 'False' ('UNIQUE(mail_group_id, email)')) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites it +DEL ir.rule: mail_group.mail_group_member_rule_administrator (noupdate) +DEL ir.rule: mail_group.mail_group_member_rule_user (noupdate) +DEL ir.rule: mail_group.mail_group_message_rule_administrator (noupdate) +DEL ir.rule: mail_group.mail_group_message_rule_public (noupdate) +DEL ir.rule: mail_group.mail_group_message_rule_user (noupdate) +DEL ir.rule: mail_group.mail_group_moderation_rule_administrator (noupdate) +DEL ir.rule: mail_group.mail_group_moderation_rule_user (noupdate) +DEL ir.rule: mail_group.mail_group_rule_administrator (noupdate) +DEL ir.rule: mail_group.mail_group_rule_read_all (noupdate) +DEL ir.rule: mail_group.mail_group_rule_write_all (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +res.groups: mail_group.group_mail_group_manager (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/noupdate_changes.xml new file mode 100644 index 00000000000..56061dce5c5 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/noupdate_changes.xml @@ -0,0 +1,367 @@ + + + + True + + + + + + partial + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + full_only + True + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + + + + + + True + + + + + + + + + + + + + + + + + + + + + + + True + + + + + + + + + + + + + + + + + + + + + + + + + + 50 + + + + + + + + + + + + + + True + + + + + + partial + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + + + + + + none + + + + + + + + + + + True + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + partial + True + + + + + + + + + + + + + + + + + + + + + 50 + + + + partial + + + + + + partial + + + + + + + + + + + partial + True + + + + + diff --git a/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/post-migration.py b/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/post-migration.py new file mode 100644 index 00000000000..e219a1167ff --- /dev/null +++ b/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_adyen", "20.0.2.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/upgrade_analysis.txt new file mode 100644 index 00000000000..60a635f3fbc --- /dev/null +++ b/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/upgrade_analysis.txt @@ -0,0 +1,77 @@ +---Models in module 'payment_adyen'--- +---Fields in module 'payment_adyen'--- +---XML records in module 'payment_adyen'--- +NEW payment.method: payment_adyen.payment_method_ach_direct_debit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_affirm [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_afterpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_alipay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_alipay_hk [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_alma [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_amex [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_bacs_direct_debit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_bancontact [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_benefit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_bizum [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_blik [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_card [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_carnet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_cartes_bancaires [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_cash_app_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_clearpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_dana [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_dankort [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_diners [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_discover [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_duitnow [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_elo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_eps [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_fpx [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_gcash [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_gopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_hipercard [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_ideal [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_ideal_brand [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_jcb [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_kakaopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_klarna [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_klarna_pay_over_time [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_klarna_paynow [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_maestro [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_mastercard [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_mbway [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_mobile_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_momo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_multibanco [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_napas_card [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_online_banking_czech_republic [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_online_banking_india [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_online_banking_slovakia [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_online_banking_thailand [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_open_banking [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_p24 [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paybright [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paynow [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paypal [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paysafecard [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paytm [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paytrail [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_pix [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_promptpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_ratepay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_samsung_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_sepa_direct_debit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_swish [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_touch_n_go [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_troy [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_trustly [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_twint [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_unionpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_upi [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_vipps [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_visa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_wallets_india [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_walley [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_wechat_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_wero_brand +NEW payment.method: payment_adyen.payment_method_zip [renamed from payment module] (noupdate switched) +payment.provider: payment.payment_provider_adyen (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..d11d9cdbe54 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_adyen/20.0.2.0/upgrade_analysis_work.txt @@ -0,0 +1,80 @@ +---Models in module 'payment_adyen'--- +---Fields in module 'payment_adyen'--- +---XML records in module 'payment_adyen'--- +NEW payment.method: payment_adyen.payment_method_ach_direct_debit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_affirm [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_afterpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_alipay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_alipay_hk [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_alma [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_amex [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_bacs_direct_debit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_bancontact [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_benefit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_bizum [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_blik [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_card [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_carnet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_cartes_bancaires [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_cash_app_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_clearpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_dana [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_dankort [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_diners [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_discover [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_duitnow [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_elo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_eps [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_fpx [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_gcash [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_gopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_hipercard [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_ideal [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_ideal_brand [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_jcb [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_kakaopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_klarna [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_klarna_pay_over_time [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_klarna_paynow [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_maestro [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_mastercard [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_mbway [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_mobile_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_momo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_multibanco [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_napas_card [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_online_banking_czech_republic [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_online_banking_india [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_online_banking_slovakia [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_online_banking_thailand [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_open_banking [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_p24 [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paybright [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paynow [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paypal [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paysafecard [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paytm [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_paytrail [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_pix [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_promptpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_ratepay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_samsung_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_sepa_direct_debit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_swish [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_touch_n_go [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_troy [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_trustly [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_twint [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_unionpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_upi [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_vipps [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_visa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_wallets_india [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_walley [renamed from payment module] (noupdate switched) +NEW payment.method: payment_adyen.payment_method_wechat_pay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_adyen.payment_method_wero_brand +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_adyen.payment_method_zip [renamed from payment module] (noupdate switched) +payment.provider: payment.payment_provider_adyen (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same diff --git a/openupgrade_scripts/scripts/payment_aps/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_aps/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..bf4f283febd --- /dev/null +++ b/openupgrade_scripts/scripts/payment_aps/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/payment_aps/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_aps/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..49ede61afe2 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_aps/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_aps", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_aps/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_aps/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..a16f8116b69 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_aps/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,14 @@ +---Models in module 'payment_aps'--- +---Fields in module 'payment_aps'--- +---XML records in module 'payment_aps'--- +DEL ir.ui.view: payment_aps.redirect_form +NEW payment.method: payment_aps.payment_method_amex +NEW payment.method: payment_aps.payment_method_benefit +NEW payment.method: payment_aps.payment_method_knet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_aps.payment_method_mada [renamed from payment module] (noupdate switched) +NEW payment.method: payment_aps.payment_method_mastercard +NEW payment.method: payment_aps.payment_method_meeza [renamed from payment module] (noupdate switched) +NEW payment.method: payment_aps.payment_method_naps [renamed from payment module] (noupdate switched) +NEW payment.method: payment_aps.payment_method_omannet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_aps.payment_method_visa +payment.provider: payment.payment_provider_aps (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_aps/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_aps/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..8be7bdd7ea3 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_aps/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,21 @@ +---Models in module 'payment_aps'--- +---Fields in module 'payment_aps'--- +---XML records in module 'payment_aps'--- +DEL ir.ui.view: payment_aps.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_aps.payment_method_amex +NEW payment.method: payment_aps.payment_method_benefit +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_aps.payment_method_knet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_aps.payment_method_mada [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_aps.payment_method_mastercard +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_aps.payment_method_meeza [renamed from payment module] (noupdate switched) +NEW payment.method: payment_aps.payment_method_naps [renamed from payment module] (noupdate switched) +NEW payment.method: payment_aps.payment_method_omannet [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_aps.payment_method_visa +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_aps (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..e86d3d02d59 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,183 @@ + + + + + + + + + + + + + + Bangkok Bank CWF + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + JKO Pay + + + + + + + + Krung Thai Bank CWF + + + + + + + + + + + + + + + + + + + + + + Maybank2u + + + + + + + + + + + + + + + Pace + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SCB Easy + + + + + + + + + + + + + + + Tenpay + + + + + + + + TMB Bank + + + + + + + + + + + + + + + TTB - TMBThanachart Bank + + + + + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..7129439a53e --- /dev/null +++ b/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/post-migration.py @@ -0,0 +1,25 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_asiapay", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "payment_asiapay", + [ + "payment_method_bangkok_bank", + "payment_method_jkopay", + "payment_method_krungthai_bank", + "payment_method_maybank", + "payment_method_pace", + "payment_method_scb", + "payment_method_tenpay", + "payment_method_tmb", + "payment_method_ttb", + ], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..3bb3f3a9508 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,46 @@ +---Models in module 'payment_asiapay'--- +---Fields in module 'payment_asiapay'--- +---XML records in module 'payment_asiapay'--- +DEL ir.ui.view: payment_asiapay.redirect_form +NEW payment.method: payment_asiapay.payment_method_alipay +NEW payment.method: payment_asiapay.payment_method_alipay_hk +NEW payment.method: payment_asiapay.payment_method_amex +NEW payment.method: payment_asiapay.payment_method_atome [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_bangkok_bank [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_bank_of_ayudhya [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_card +NEW payment.method: payment_asiapay.payment_method_diners +NEW payment.method: payment_asiapay.payment_method_duitnow +NEW payment.method: payment_asiapay.payment_method_enets [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_fps [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_gcash +NEW payment.method: payment_asiapay.payment_method_hoolah [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_humm [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_jcb +NEW payment.method: payment_asiapay.payment_method_jkopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_krungthai_bank [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_linepay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_mastercard +NEW payment.method: payment_asiapay.payment_method_maya [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_maybank [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_momo +NEW payment.method: payment_asiapay.payment_method_octopus [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_pace [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_pay_id [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_payme [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_paypal +NEW payment.method: payment_asiapay.payment_method_poli [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_samsung_pay +NEW payment.method: payment_asiapay.payment_method_scb [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_tendopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_tenpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_tmb [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_touch_n_go +NEW payment.method: payment_asiapay.payment_method_truemoney [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_ttb [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_unionpay +NEW payment.method: payment_asiapay.payment_method_uob [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_visa +NEW payment.method: payment_asiapay.payment_method_wechat_pay +NEW payment.method: payment_asiapay.payment_method_zip +payment.provider: payment.payment_provider_asiapay (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..613a439a1fa --- /dev/null +++ b/openupgrade_scripts/scripts/payment_asiapay/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,69 @@ +---Models in module 'payment_asiapay'--- +---Fields in module 'payment_asiapay'--- +---XML records in module 'payment_asiapay'--- +DEL ir.ui.view: payment_asiapay.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_asiapay.payment_method_alipay +NEW payment.method: payment_asiapay.payment_method_alipay_hk +NEW payment.method: payment_asiapay.payment_method_amex +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_atome [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_bangkok_bank [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_bank_of_ayudhya [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_card +NEW payment.method: payment_asiapay.payment_method_diners +NEW payment.method: payment_asiapay.payment_method_duitnow +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_enets [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_fps [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_gcash +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_hoolah [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_humm [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_jcb +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_jkopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_krungthai_bank [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_linepay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_mastercard +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_maya [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_maybank [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_momo +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_octopus [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_pace [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_pay_id [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_payme [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_paypal +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_poli [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_samsung_pay +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_scb [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_tendopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_tenpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_tmb [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_touch_n_go +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_truemoney [renamed from payment module] (noupdate switched) +NEW payment.method: payment_asiapay.payment_method_ttb [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_unionpay +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_asiapay.payment_method_uob [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_asiapay.payment_method_visa +NEW payment.method: payment_asiapay.payment_method_wechat_pay +NEW payment.method: payment_asiapay.payment_method_zip +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_asiapay (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/noupdate_changes.xml new file mode 100644 index 00000000000..e3c2076d088 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/noupdate_changes.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wero + + + + + + diff --git a/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/post-migration.py b/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/post-migration.py new file mode 100644 index 00000000000..1bc435ae5ed --- /dev/null +++ b/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_buckaroo", "20.0.2.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "payment_buckaroo", + ["payment_method_wero"], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/upgrade_analysis.txt new file mode 100644 index 00000000000..ac6107057da --- /dev/null +++ b/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/upgrade_analysis.txt @@ -0,0 +1,36 @@ +---Models in module 'payment_buckaroo'--- +---Fields in module 'payment_buckaroo'--- +---XML records in module 'payment_buckaroo'--- +DEL ir.ui.view: payment_buckaroo.redirect_form +NEW payment.method: payment_buckaroo.payment_method_afterpay_riverty [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_alipay +NEW payment.method: payment_buckaroo.payment_method_amex +NEW payment.method: payment_buckaroo.payment_method_banco_de_bogota [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_bancolombia [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_bancontact +NEW payment.method: payment_buckaroo.payment_method_bank_reference [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_belfius [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_billink [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_card +NEW payment.method: payment_buckaroo.payment_method_cartes_bancaires +NEW payment.method: payment_buckaroo.payment_method_dankort +NEW payment.method: payment_buckaroo.payment_method_davivienda [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_eps +NEW payment.method: payment_buckaroo.payment_method_ideal +NEW payment.method: payment_buckaroo.payment_method_ideal_brand +NEW payment.method: payment_buckaroo.payment_method_in3 [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_kbc_cbc [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_klarna +NEW payment.method: payment_buckaroo.payment_method_maestro +NEW payment.method: payment_buckaroo.payment_method_mastercard +NEW payment.method: payment_buckaroo.payment_method_p24 +NEW payment.method: payment_buckaroo.payment_method_paypal +NEW payment.method: payment_buckaroo.payment_method_poste_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_sepa_direct_debit +NEW payment.method: payment_buckaroo.payment_method_tinka [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_trustly +NEW payment.method: payment_buckaroo.payment_method_visa +NEW payment.method: payment_buckaroo.payment_method_wechat_pay +NEW payment.method: payment_buckaroo.payment_method_wero [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_wero_brand +payment.provider: payment.payment_provider_buckaroo (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..9156076e2f6 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_buckaroo/20.0.2.0/upgrade_analysis_work.txt @@ -0,0 +1,54 @@ +---Models in module 'payment_buckaroo'--- +---Fields in module 'payment_buckaroo'--- +---XML records in module 'payment_buckaroo'--- +DEL ir.ui.view: payment_buckaroo.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_buckaroo.payment_method_afterpay_riverty [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_buckaroo.payment_method_alipay +NEW payment.method: payment_buckaroo.payment_method_amex +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_buckaroo.payment_method_banco_de_bogota [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_bancolombia [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_buckaroo.payment_method_bancontact +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_buckaroo.payment_method_bank_reference [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_belfius [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_billink [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_buckaroo.payment_method_card +NEW payment.method: payment_buckaroo.payment_method_cartes_bancaires +NEW payment.method: payment_buckaroo.payment_method_dankort +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_buckaroo.payment_method_davivienda [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_buckaroo.payment_method_eps +NEW payment.method: payment_buckaroo.payment_method_ideal +NEW payment.method: payment_buckaroo.payment_method_ideal_brand +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_buckaroo.payment_method_in3 [renamed from payment module] (noupdate switched) +NEW payment.method: payment_buckaroo.payment_method_kbc_cbc [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_buckaroo.payment_method_klarna +NEW payment.method: payment_buckaroo.payment_method_maestro +NEW payment.method: payment_buckaroo.payment_method_mastercard +NEW payment.method: payment_buckaroo.payment_method_p24 +NEW payment.method: payment_buckaroo.payment_method_paypal +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_buckaroo.payment_method_poste_pay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_buckaroo.payment_method_sepa_direct_debit +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_buckaroo.payment_method_tinka [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_buckaroo.payment_method_trustly +NEW payment.method: payment_buckaroo.payment_method_visa +NEW payment.method: payment_buckaroo.payment_method_wechat_pay +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_buckaroo.payment_method_wero [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_buckaroo.payment_method_wero_brand +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_buckaroo (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_custom/20.0.2.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_custom/20.0.2.0/noupdate_changes.xml new file mode 100644 index 00000000000..91a90ca1c8c --- /dev/null +++ b/openupgrade_scripts/scripts/payment_custom/20.0.2.0/noupdate_changes.xml @@ -0,0 +1,24 @@ + + + + custom + pay_on_invoice + +

Your order is confirmed, you will receive your invoice shortly.

+
+ True + + 50 +
+ + + +

Please find the payment details below.

+
+ + True +
+ + + +
diff --git a/openupgrade_scripts/scripts/payment_custom/20.0.2.0/post-migration.py b/openupgrade_scripts/scripts/payment_custom/20.0.2.0/post-migration.py new file mode 100644 index 00000000000..6e77ed7cc25 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_custom/20.0.2.0/post-migration.py @@ -0,0 +1,21 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_custom", "20.0.2.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "payment_custom", + ["payment.payment_provider_pay_on_invoice"], + ["done_msg"], + ) + openupgrade.delete_record_translations( + env.cr, + "payment_custom", + ["payment.payment_provider_transfer"], + ["pending_msg"], + ) diff --git a/openupgrade_scripts/scripts/payment_custom/20.0.2.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_custom/20.0.2.0/upgrade_analysis.txt new file mode 100644 index 00000000000..9f76d19a07e --- /dev/null +++ b/openupgrade_scripts/scripts/payment_custom/20.0.2.0/upgrade_analysis.txt @@ -0,0 +1,12 @@ +---Models in module 'payment_custom'--- +---Fields in module 'payment_custom'--- +payment_custom / payment.provider / custom_mode (selection) : selection_keys added: [pay_on_invoice] (most likely nothing to do) +payment_custom / payment.provider / partner_bank_id (many2one) : NEW relation: res.partner.bank, hasdefault: compute +---XML records in module 'payment_custom'--- +ir.model.constraint: payment_custom.constraint_payment_provider_custom_providers_setup (changed definition: is now 'False' ('CHECK(custom_mode IS NULL OR (code = 'custom' AND custom_mode IS NOT NULL))')) +NEW ir.ui.view: payment_custom.custom_payment_transfer_details +NEW ir.ui.view: payment_custom.payment_provider_kanban +DEL ir.ui.view: payment_custom.redirect_form +NEW payment.method: payment_custom.payment_method_pay_on_invoice +payment.method: payment_custom.payment_method_wire_transfer (noupdate switched) +payment.provider: payment.payment_provider_transfer (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_demo/20.0.2.0/noupdate_changes-transformation.xml b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/noupdate_changes-transformation.xml new file mode 100644 index 00000000000..3a457ddb372 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/noupdate_changes-transformation.xml @@ -0,0 +1,13 @@ + + + + + diff --git a/openupgrade_scripts/scripts/payment_demo/20.0.2.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/noupdate_changes.xml new file mode 100644 index 00000000000..f74383096f3 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/noupdate_changes.xml @@ -0,0 +1,14 @@ + + + + + + + True + + + + Express Checkout + + + diff --git a/openupgrade_scripts/scripts/payment_demo/20.0.2.0/post-migration.py b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/post-migration.py new file mode 100644 index 00000000000..a7ca69099a7 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/post-migration.py @@ -0,0 +1,20 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data( + env, + "payment_demo", + "20.0.2.0/noupdate_changes.xml", + xml_transformation_filename="20.0.2.0/noupdate_changes-transformation.xml", + ) + openupgrade.delete_record_translations( + env.cr, + "payment_demo", + ["payment_method_unknown"], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/payment_demo/20.0.2.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/upgrade_analysis.txt new file mode 100644 index 00000000000..b3fa450ed13 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/upgrade_analysis.txt @@ -0,0 +1,7 @@ +---Models in module 'payment_demo'--- +---Fields in module 'payment_demo'--- +payment_demo / payment.transaction / capture_manually (boolean) : module is now 'payment' ('payment_demo') +---XML records in module 'payment_demo'--- +payment.method: payment_demo.payment_method_demo (noupdate switched) +NEW payment.method: payment_demo.payment_method_unknown [renamed from payment module] (noupdate switched) +payment.provider: payment.payment_provider_demo (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_demo/20.0.2.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..bf8641cbc2a --- /dev/null +++ b/openupgrade_scripts/scripts/payment_demo/20.0.2.0/upgrade_analysis_work.txt @@ -0,0 +1,11 @@ +---Models in module 'payment_demo'--- +---Fields in module 'payment_demo'--- +payment_demo / payment.transaction / capture_manually (boolean) : module is now 'payment' ('payment_demo') +# NOTHING TO DO: the field only changed owning module, the column is the same +---XML records in module 'payment_demo'--- +payment.method: payment_demo.payment_method_demo (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml +NEW payment.method: payment_demo.payment_method_unknown [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +payment.provider: payment.payment_provider_demo (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..d5fb3fde6c8 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..4ceae6e26eb --- /dev/null +++ b/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_flutterwave", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..e6c33bf4d98 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,17 @@ +---Models in module 'payment_flutterwave'--- +---Fields in module 'payment_flutterwave'--- +---XML records in module 'payment_flutterwave'--- +DEL ir.ui.view: payment_flutterwave.redirect_form +NEW payment.method: payment_flutterwave.payment_method_amex +NEW payment.method: payment_flutterwave.payment_method_bank_account [renamed from payment module] (noupdate switched) +NEW payment.method: payment_flutterwave.payment_method_bank_transfer [renamed from payment module] (noupdate switched) +NEW payment.method: payment_flutterwave.payment_method_card +NEW payment.method: payment_flutterwave.payment_method_credit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_flutterwave.payment_method_discover +NEW payment.method: payment_flutterwave.payment_method_mastercard +NEW payment.method: payment_flutterwave.payment_method_mobile_money [renamed from payment module] (noupdate switched) +NEW payment.method: payment_flutterwave.payment_method_mpesa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_flutterwave.payment_method_paypal +NEW payment.method: payment_flutterwave.payment_method_ussd [renamed from payment module] (noupdate switched) +NEW payment.method: payment_flutterwave.payment_method_visa +payment.provider: payment.payment_provider_flutterwave (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..806b7f55629 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_flutterwave/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,28 @@ +---Models in module 'payment_flutterwave'--- +---Fields in module 'payment_flutterwave'--- +---XML records in module 'payment_flutterwave'--- +DEL ir.ui.view: payment_flutterwave.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_flutterwave.payment_method_amex +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_flutterwave.payment_method_bank_account [renamed from payment module] (noupdate switched) +NEW payment.method: payment_flutterwave.payment_method_bank_transfer [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_flutterwave.payment_method_card +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_flutterwave.payment_method_credit [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_flutterwave.payment_method_discover +NEW payment.method: payment_flutterwave.payment_method_mastercard +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_flutterwave.payment_method_mobile_money [renamed from payment module] (noupdate switched) +NEW payment.method: payment_flutterwave.payment_method_mpesa [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_flutterwave.payment_method_paypal +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_flutterwave.payment_method_ussd [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_flutterwave.payment_method_visa +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_flutterwave (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..6c6ef9308de --- /dev/null +++ b/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + OCA + + + + + + + + + Shopping + + + + + + + + diff --git a/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..e9cf6ee036a --- /dev/null +++ b/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_mercado_pago", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "payment_mercado_pago", + ["payment_method_oca", "payment_method_shopping"], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..79b019e1c89 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,29 @@ +---Models in module 'payment_mercado_pago'--- +---Fields in module 'payment_mercado_pago'--- +---XML records in module 'payment_mercado_pago'--- +DEL ir.ui.view: payment_mercado_pago.redirect_form +NEW payment.method: payment_mercado_pago.payment_method_amex +NEW payment.method: payment_mercado_pago.payment_method_argencard [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_bank_transfer +NEW payment.method: payment_mercado_pago.payment_method_cabal [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_caixa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_card +NEW payment.method: payment_mercado_pago.payment_method_cencosud [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_codensa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_cordial [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_cordobesa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_elo +NEW payment.method: payment_mercado_pago.payment_method_hipercard +NEW payment.method: payment_mercado_pago.payment_method_lider [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_magna [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_mastercard +NEW payment.method: payment_mercado_pago.payment_method_mercado_livre [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_mercado_pago_wallet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_naranja [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_nativa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_oca [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_presto [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_shopping [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_tarjeta_mercadopago [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_visa +payment.provider: payment.payment_provider_mercado_pago (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..8860041c0ff --- /dev/null +++ b/openupgrade_scripts/scripts/payment_mercado_pago/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,42 @@ +---Models in module 'payment_mercado_pago'--- +---Fields in module 'payment_mercado_pago'--- +---XML records in module 'payment_mercado_pago'--- +DEL ir.ui.view: payment_mercado_pago.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_mercado_pago.payment_method_amex +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_mercado_pago.payment_method_argencard [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_mercado_pago.payment_method_bank_transfer +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_mercado_pago.payment_method_cabal [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_caixa [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_mercado_pago.payment_method_card +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_mercado_pago.payment_method_cencosud [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_codensa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_cordial [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_cordobesa [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_mercado_pago.payment_method_elo +NEW payment.method: payment_mercado_pago.payment_method_hipercard +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_mercado_pago.payment_method_lider [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_magna [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_mercado_pago.payment_method_mastercard +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_mercado_pago.payment_method_mercado_livre [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_mercado_pago_wallet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_naranja [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_nativa [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_oca [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_presto [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_shopping [renamed from payment module] (noupdate switched) +NEW payment.method: payment_mercado_pago.payment_method_tarjeta_mercadopago [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_mercado_pago.payment_method_visa +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_mercado_pago (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..14a87700664 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,7 @@ + + + + + True + + diff --git a/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..188bbca8a0b --- /dev/null +++ b/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_mollie", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..1c80ae92516 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,33 @@ +---Models in module 'payment_mollie'--- +---Fields in module 'payment_mollie'--- +payment_mollie / payment.token / mollie_customer_id (char) : NEW +---XML records in module 'payment_mollie'--- +DEL ir.ui.view: payment_mollie.redirect_form +NEW payment.method: payment_mollie.payment_method_amex +NEW payment.method: payment_mollie.payment_method_apple_pay +NEW payment.method: payment_mollie.payment_method_bancontact +NEW payment.method: payment_mollie.payment_method_bank_transfer +NEW payment.method: payment_mollie.payment_method_belfius +NEW payment.method: payment_mollie.payment_method_blik +NEW payment.method: payment_mollie.payment_method_card +NEW payment.method: payment_mollie.payment_method_cartes_bancaires +NEW payment.method: payment_mollie.payment_method_discover +NEW payment.method: payment_mollie.payment_method_eps +NEW payment.method: payment_mollie.payment_method_google_pay +NEW payment.method: payment_mollie.payment_method_ideal +NEW payment.method: payment_mollie.payment_method_ideal_brand +NEW payment.method: payment_mollie.payment_method_in3 +NEW payment.method: payment_mollie.payment_method_kbc_cbc +NEW payment.method: payment_mollie.payment_method_klarna +NEW payment.method: payment_mollie.payment_method_maestro +NEW payment.method: payment_mollie.payment_method_mastercard +NEW payment.method: payment_mollie.payment_method_mbway +NEW payment.method: payment_mollie.payment_method_multibanco +NEW payment.method: payment_mollie.payment_method_p24 +NEW payment.method: payment_mollie.payment_method_paypal +NEW payment.method: payment_mollie.payment_method_paysafecard +NEW payment.method: payment_mollie.payment_method_swish +NEW payment.method: payment_mollie.payment_method_twint +NEW payment.method: payment_mollie.payment_method_visa +NEW payment.method: payment_mollie.payment_method_wero_brand +payment.provider: payment.payment_provider_mollie (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..8f7be216539 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_mollie/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,37 @@ +---Models in module 'payment_mollie'--- +---Fields in module 'payment_mollie'--- +payment_mollie / payment.token / mollie_customer_id (char) : NEW +# NOTHING TO DO: empty is the right value for existing records +---XML records in module 'payment_mollie'--- +DEL ir.ui.view: payment_mollie.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_mollie.payment_method_amex +NEW payment.method: payment_mollie.payment_method_apple_pay +NEW payment.method: payment_mollie.payment_method_bancontact +NEW payment.method: payment_mollie.payment_method_bank_transfer +NEW payment.method: payment_mollie.payment_method_belfius +NEW payment.method: payment_mollie.payment_method_blik +NEW payment.method: payment_mollie.payment_method_card +NEW payment.method: payment_mollie.payment_method_cartes_bancaires +NEW payment.method: payment_mollie.payment_method_discover +NEW payment.method: payment_mollie.payment_method_eps +NEW payment.method: payment_mollie.payment_method_google_pay +NEW payment.method: payment_mollie.payment_method_ideal +NEW payment.method: payment_mollie.payment_method_ideal_brand +NEW payment.method: payment_mollie.payment_method_in3 +NEW payment.method: payment_mollie.payment_method_kbc_cbc +NEW payment.method: payment_mollie.payment_method_klarna +NEW payment.method: payment_mollie.payment_method_maestro +NEW payment.method: payment_mollie.payment_method_mastercard +NEW payment.method: payment_mollie.payment_method_mbway +NEW payment.method: payment_mollie.payment_method_multibanco +NEW payment.method: payment_mollie.payment_method_p24 +NEW payment.method: payment_mollie.payment_method_paypal +NEW payment.method: payment_mollie.payment_method_paysafecard +NEW payment.method: payment_mollie.payment_method_swish +NEW payment.method: payment_mollie.payment_method_twint +NEW payment.method: payment_mollie.payment_method_visa +NEW payment.method: payment_mollie.payment_method_wero_brand +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_mollie (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..387e4c54a73 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + partial + + + + + diff --git a/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..8946d851ca4 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_nuvei", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..2dcbcf4ede6 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,27 @@ +---Models in module 'payment_nuvei'--- +---Fields in module 'payment_nuvei'--- +---XML records in module 'payment_nuvei'--- +DEL ir.ui.view: payment_nuvei.redirect_form +NEW payment.method: payment_nuvei.payment_method_abitab [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_amex +NEW payment.method: payment_nuvei.payment_method_astropay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_banco_guayaquil [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_banco_pichincha [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_boleto [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_card +NEW payment.method: payment_nuvei.payment_method_diners +NEW payment.method: payment_nuvei.payment_method_discover +NEW payment.method: payment_nuvei.payment_method_facilito [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_mastercard +NEW payment.method: payment_nuvei.payment_method_naranja +NEW payment.method: payment_nuvei.payment_method_nuvei_local [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_oxxopay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_pix +NEW payment.method: payment_nuvei.payment_method_pse [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_redpagos [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_spei [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_tarjeta_mercadopago +NEW payment.method: payment_nuvei.payment_method_unionpay +NEW payment.method: payment_nuvei.payment_method_visa +NEW payment.method: payment_nuvei.payment_method_webpay [renamed from payment module] (noupdate switched) +payment.provider: payment.payment_provider_nuvei (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..cf2aa89ecf9 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_nuvei/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,40 @@ +---Models in module 'payment_nuvei'--- +---Fields in module 'payment_nuvei'--- +---XML records in module 'payment_nuvei'--- +DEL ir.ui.view: payment_nuvei.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_nuvei.payment_method_abitab [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_nuvei.payment_method_amex +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_nuvei.payment_method_astropay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_banco_guayaquil [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_banco_pichincha [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_boleto [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_nuvei.payment_method_card +NEW payment.method: payment_nuvei.payment_method_diners +NEW payment.method: payment_nuvei.payment_method_discover +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_nuvei.payment_method_facilito [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_nuvei.payment_method_mastercard +NEW payment.method: payment_nuvei.payment_method_naranja +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_nuvei.payment_method_nuvei_local [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_oxxopay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_nuvei.payment_method_pix +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_nuvei.payment_method_pse [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_redpagos [renamed from payment module] (noupdate switched) +NEW payment.method: payment_nuvei.payment_method_spei [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_nuvei.payment_method_tarjeta_mercadopago +NEW payment.method: payment_nuvei.payment_method_unionpay +NEW payment.method: payment_nuvei.payment_method_visa +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_nuvei.payment_method_webpay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +payment.provider: payment.payment_provider_nuvei (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/noupdate_changes.xml new file mode 100644 index 00000000000..9079903d519 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/noupdate_changes.xml @@ -0,0 +1,22 @@ + + + + True + + + + + + + + + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/post-migration.py b/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/post-migration.py new file mode 100644 index 00000000000..ab1da51e239 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_paypal", "20.0.2.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/upgrade_analysis.txt new file mode 100644 index 00000000000..e726dd8a9ad --- /dev/null +++ b/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/upgrade_analysis.txt @@ -0,0 +1,29 @@ +---Models in module 'payment_paypal'--- +---Fields in module 'payment_paypal'--- +payment_paypal / payment.provider / paypal_account_id (char) : NEW +payment_paypal / payment.provider / paypal_email_confirmed (boolean): NEW +payment_paypal / payment.provider / paypal_is_oauth_onboarded (boolean): NEW +payment_paypal / payment.provider / paypal_payments_receivable (boolean): NEW +payment_paypal / payment.provider / paypal_seller_nonce (char) : NEW +payment_paypal / payment.transaction / paypal_setup_token_ref (char) : NEW +---XML records in module 'payment_paypal'--- +NEW ir.ui.view: payment_paypal.inline_form +NEW payment.method: payment_paypal.payment_method_amex +NEW payment.method: payment_paypal.payment_method_bancontact +NEW payment.method: payment_paypal.payment_method_blik +NEW payment.method: payment_paypal.payment_method_card +NEW payment.method: payment_paypal.payment_method_diners +NEW payment.method: payment_paypal.payment_method_eps +NEW payment.method: payment_paypal.payment_method_ideal +NEW payment.method: payment_paypal.payment_method_jcb +NEW payment.method: payment_paypal.payment_method_maestro +NEW payment.method: payment_paypal.payment_method_mastercard +NEW payment.method: payment_paypal.payment_method_multibanco +NEW payment.method: payment_paypal.payment_method_mybank [renamed from payment module] (noupdate switched) +NEW payment.method: payment_paypal.payment_method_p24 +NEW payment.method: payment_paypal.payment_method_paypal +NEW payment.method: payment_paypal.payment_method_paypal_paylater +NEW payment.method: payment_paypal.payment_method_trustly +NEW payment.method: payment_paypal.payment_method_venmo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_paypal.payment_method_visa +payment.provider: payment.payment_provider_paypal (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..c4dce670519 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_paypal/20.0.2.0/upgrade_analysis_work.txt @@ -0,0 +1,36 @@ +---Models in module 'payment_paypal'--- +---Fields in module 'payment_paypal'--- +payment_paypal / payment.provider / paypal_account_id (char) : NEW +payment_paypal / payment.provider / paypal_email_confirmed (boolean): NEW +payment_paypal / payment.provider / paypal_is_oauth_onboarded (boolean): NEW +payment_paypal / payment.provider / paypal_payments_receivable (boolean): NEW +payment_paypal / payment.provider / paypal_seller_nonce (char) : NEW +payment_paypal / payment.transaction / paypal_setup_token_ref (char) : NEW +# NOTHING TO DO: empty is the right value for existing records +---XML records in module 'payment_paypal'--- +NEW ir.ui.view: payment_paypal.inline_form +NEW payment.method: payment_paypal.payment_method_amex +NEW payment.method: payment_paypal.payment_method_bancontact +NEW payment.method: payment_paypal.payment_method_blik +NEW payment.method: payment_paypal.payment_method_card +NEW payment.method: payment_paypal.payment_method_diners +NEW payment.method: payment_paypal.payment_method_eps +NEW payment.method: payment_paypal.payment_method_ideal +NEW payment.method: payment_paypal.payment_method_jcb +NEW payment.method: payment_paypal.payment_method_maestro +NEW payment.method: payment_paypal.payment_method_mastercard +NEW payment.method: payment_paypal.payment_method_multibanco +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_paypal.payment_method_mybank [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_paypal.payment_method_p24 +NEW payment.method: payment_paypal.payment_method_paypal +NEW payment.method: payment_paypal.payment_method_paypal_paylater +NEW payment.method: payment_paypal.payment_method_trustly +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_paypal.payment_method_venmo [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_paypal.payment_method_visa +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_paypal (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..59396b10549 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..f6cbbe507d0 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_razorpay", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..da7d1d2859b --- /dev/null +++ b/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,19 @@ +---Models in module 'payment_razorpay'--- +---Fields in module 'payment_razorpay'--- +---XML records in module 'payment_razorpay'--- +NEW payment.method: payment_razorpay.payment_method_amex +NEW payment.method: payment_razorpay.payment_method_card +NEW payment.method: payment_razorpay.payment_method_diners +NEW payment.method: payment_razorpay.payment_method_discover +NEW payment.method: payment_razorpay.payment_method_emi_india [renamed from payment module] (noupdate switched) +NEW payment.method: payment_razorpay.payment_method_fpx +NEW payment.method: payment_razorpay.payment_method_maestro +NEW payment.method: payment_razorpay.payment_method_mastercard +NEW payment.method: payment_razorpay.payment_method_netbanking [renamed from payment module] (noupdate switched) +NEW payment.method: payment_razorpay.payment_method_paylater_india [renamed from payment module] (noupdate switched) +NEW payment.method: payment_razorpay.payment_method_paynow +NEW payment.method: payment_razorpay.payment_method_rupay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_razorpay.payment_method_upi +NEW payment.method: payment_razorpay.payment_method_visa +NEW payment.method: payment_razorpay.payment_method_wallets_india +payment.provider: payment.payment_provider_razorpay (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..8d57a7694cc --- /dev/null +++ b/openupgrade_scripts/scripts/payment_razorpay/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,27 @@ +---Models in module 'payment_razorpay'--- +---Fields in module 'payment_razorpay'--- +---XML records in module 'payment_razorpay'--- +NEW payment.method: payment_razorpay.payment_method_amex +NEW payment.method: payment_razorpay.payment_method_card +NEW payment.method: payment_razorpay.payment_method_diners +NEW payment.method: payment_razorpay.payment_method_discover +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_razorpay.payment_method_emi_india [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_razorpay.payment_method_fpx +NEW payment.method: payment_razorpay.payment_method_maestro +NEW payment.method: payment_razorpay.payment_method_mastercard +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_razorpay.payment_method_netbanking [renamed from payment module] (noupdate switched) +NEW payment.method: payment_razorpay.payment_method_paylater_india [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_razorpay.payment_method_paynow +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_razorpay.payment_method_rupay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_razorpay.payment_method_upi +NEW payment.method: payment_razorpay.payment_method_visa +NEW payment.method: payment_razorpay.payment_method_wallets_india +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_razorpay (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same diff --git a/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/noupdate_changes.xml new file mode 100644 index 00000000000..5b5a21c1e4a --- /dev/null +++ b/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/noupdate_changes.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + True + + + + + diff --git a/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/post-migration.py b/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/post-migration.py new file mode 100644 index 00000000000..ac0cacdfd44 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_stripe", "20.0.2.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/upgrade_analysis.txt new file mode 100644 index 00000000000..8ac44e72423 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/upgrade_analysis.txt @@ -0,0 +1,52 @@ +---Models in module 'payment_stripe'--- +---Fields in module 'payment_stripe'--- +---XML records in module 'payment_stripe'--- +DEL ir.ui.view: payment_stripe.no_pms_available_warning +NEW payment.method: payment_stripe.payment_method_ach_direct_debit +NEW payment.method: payment_stripe.payment_method_acss_direct_debit +NEW payment.method: payment_stripe.payment_method_affirm +NEW payment.method: payment_stripe.payment_method_afterpay +NEW payment.method: payment_stripe.payment_method_alipay +NEW payment.method: payment_stripe.payment_method_alma +NEW payment.method: payment_stripe.payment_method_amazon_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_stripe.payment_method_amex +NEW payment.method: payment_stripe.payment_method_apple_pay +NEW payment.method: payment_stripe.payment_method_bacs_direct_debit +NEW payment.method: payment_stripe.payment_method_bancontact +NEW payment.method: payment_stripe.payment_method_becs_direct_debit [renamed from payment module] (noupdate switched) +NEW payment.method: payment_stripe.payment_method_boleto +NEW payment.method: payment_stripe.payment_method_card +NEW payment.method: payment_stripe.payment_method_cartes_bancaires +NEW payment.method: payment_stripe.payment_method_cash_app_pay +NEW payment.method: payment_stripe.payment_method_clearpay +NEW payment.method: payment_stripe.payment_method_diners +NEW payment.method: payment_stripe.payment_method_discover +NEW payment.method: payment_stripe.payment_method_eps +NEW payment.method: payment_stripe.payment_method_fpx +NEW payment.method: payment_stripe.payment_method_google_pay +NEW payment.method: payment_stripe.payment_method_grabpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_stripe.payment_method_ideal +NEW payment.method: payment_stripe.payment_method_ideal_brand +NEW payment.method: payment_stripe.payment_method_jcb +NEW payment.method: payment_stripe.payment_method_klarna +NEW payment.method: payment_stripe.payment_method_mastercard +NEW payment.method: payment_stripe.payment_method_mobile_pay +NEW payment.method: payment_stripe.payment_method_multibanco +NEW payment.method: payment_stripe.payment_method_p24 +NEW payment.method: payment_stripe.payment_method_paynow +NEW payment.method: payment_stripe.payment_method_paypal +NEW payment.method: payment_stripe.payment_method_pix +NEW payment.method: payment_stripe.payment_method_promptpay +NEW payment.method: payment_stripe.payment_method_revolut_pay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_stripe.payment_method_satispay +NEW payment.method: payment_stripe.payment_method_sepa_direct_debit +NEW payment.method: payment_stripe.payment_method_swish +NEW payment.method: payment_stripe.payment_method_twint +NEW payment.method: payment_stripe.payment_method_unionpay +NEW payment.method: payment_stripe.payment_method_unknown +NEW payment.method: payment_stripe.payment_method_upi +NEW payment.method: payment_stripe.payment_method_visa +NEW payment.method: payment_stripe.payment_method_wechat_pay +NEW payment.method: payment_stripe.payment_method_wero_brand +NEW payment.method: payment_stripe.payment_method_zip +payment.provider: payment.payment_provider_stripe (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..e8ee8b41be5 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_stripe/20.0.2.0/upgrade_analysis_work.txt @@ -0,0 +1,63 @@ +---Models in module 'payment_stripe'--- +---Fields in module 'payment_stripe'--- +---XML records in module 'payment_stripe'--- +DEL ir.ui.view: payment_stripe.no_pms_available_warning +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_stripe.payment_method_ach_direct_debit +NEW payment.method: payment_stripe.payment_method_acss_direct_debit +NEW payment.method: payment_stripe.payment_method_affirm +NEW payment.method: payment_stripe.payment_method_afterpay +NEW payment.method: payment_stripe.payment_method_alipay +NEW payment.method: payment_stripe.payment_method_alma +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_stripe.payment_method_amazon_pay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_stripe.payment_method_amex +NEW payment.method: payment_stripe.payment_method_apple_pay +NEW payment.method: payment_stripe.payment_method_bacs_direct_debit +NEW payment.method: payment_stripe.payment_method_bancontact +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_stripe.payment_method_becs_direct_debit [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_stripe.payment_method_boleto +NEW payment.method: payment_stripe.payment_method_card +NEW payment.method: payment_stripe.payment_method_cartes_bancaires +NEW payment.method: payment_stripe.payment_method_cash_app_pay +NEW payment.method: payment_stripe.payment_method_clearpay +NEW payment.method: payment_stripe.payment_method_diners +NEW payment.method: payment_stripe.payment_method_discover +NEW payment.method: payment_stripe.payment_method_eps +NEW payment.method: payment_stripe.payment_method_fpx +NEW payment.method: payment_stripe.payment_method_google_pay +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_stripe.payment_method_grabpay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_stripe.payment_method_ideal +NEW payment.method: payment_stripe.payment_method_ideal_brand +NEW payment.method: payment_stripe.payment_method_jcb +NEW payment.method: payment_stripe.payment_method_klarna +NEW payment.method: payment_stripe.payment_method_mastercard +NEW payment.method: payment_stripe.payment_method_mobile_pay +NEW payment.method: payment_stripe.payment_method_multibanco +NEW payment.method: payment_stripe.payment_method_p24 +NEW payment.method: payment_stripe.payment_method_paynow +NEW payment.method: payment_stripe.payment_method_paypal +NEW payment.method: payment_stripe.payment_method_pix +NEW payment.method: payment_stripe.payment_method_promptpay +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_stripe.payment_method_revolut_pay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_stripe.payment_method_satispay +NEW payment.method: payment_stripe.payment_method_sepa_direct_debit +NEW payment.method: payment_stripe.payment_method_swish +NEW payment.method: payment_stripe.payment_method_twint +NEW payment.method: payment_stripe.payment_method_unionpay +NEW payment.method: payment_stripe.payment_method_unknown +NEW payment.method: payment_stripe.payment_method_upi +NEW payment.method: payment_stripe.payment_method_visa +NEW payment.method: payment_stripe.payment_method_wechat_pay +NEW payment.method: payment_stripe.payment_method_wero_brand +NEW payment.method: payment_stripe.payment_method_zip +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_stripe (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same diff --git a/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..a4a86495495 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..6821fd28a2a --- /dev/null +++ b/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_worldline", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..c90f370e800 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,40 @@ +---Models in module 'payment_worldline'--- +---Fields in module 'payment_worldline'--- +---XML records in module 'payment_worldline'--- +DEL ir.ui.view: payment_worldline.redirect_form +NEW payment.method: payment_worldline.payment_method_alipay_plus [renamed from payment module] (noupdate switched) +NEW payment.method: payment_worldline.payment_method_amex +NEW payment.method: payment_worldline.payment_method_bancontact +NEW payment.method: payment_worldline.payment_method_bizum +NEW payment.method: payment_worldline.payment_method_card +NEW payment.method: payment_worldline.payment_method_cartes_bancaires +NEW payment.method: payment_worldline.payment_method_cirrus [renamed from payment module] (noupdate switched) +NEW payment.method: payment_worldline.payment_method_cofidis [renamed from payment module] (noupdate switched) +NEW payment.method: payment_worldline.payment_method_dankort +NEW payment.method: payment_worldline.payment_method_diners +NEW payment.method: payment_worldline.payment_method_discover +NEW payment.method: payment_worldline.payment_method_eps +NEW payment.method: payment_worldline.payment_method_floa_bank [renamed from payment module] (noupdate switched) +NEW payment.method: payment_worldline.payment_method_ideal +NEW payment.method: payment_worldline.payment_method_ideal_brand +NEW payment.method: payment_worldline.payment_method_jcb +NEW payment.method: payment_worldline.payment_method_klarna +NEW payment.method: payment_worldline.payment_method_maestro +NEW payment.method: payment_worldline.payment_method_mastercard +NEW payment.method: payment_worldline.payment_method_mbway +NEW payment.method: payment_worldline.payment_method_meeza +NEW payment.method: payment_worldline.payment_method_multibanco +NEW payment.method: payment_worldline.payment_method_naps +NEW payment.method: payment_worldline.payment_method_omannet +NEW payment.method: payment_worldline.payment_method_p24 +NEW payment.method: payment_worldline.payment_method_paypal +NEW payment.method: payment_worldline.payment_method_post_finance [renamed from payment module] (noupdate switched) +NEW payment.method: payment_worldline.payment_method_rupay +NEW payment.method: payment_worldline.payment_method_troy +NEW payment.method: payment_worldline.payment_method_twint +NEW payment.method: payment_worldline.payment_method_unionpay +NEW payment.method: payment_worldline.payment_method_visa +NEW payment.method: payment_worldline.payment_method_wechat_pay +NEW payment.method: payment_worldline.payment_method_wero +NEW payment.method: payment_worldline.payment_method_wero_brand +payment.provider: payment.payment_provider_worldline (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..3fee98a2802 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_worldline/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,50 @@ +---Models in module 'payment_worldline'--- +---Fields in module 'payment_worldline'--- +---XML records in module 'payment_worldline'--- +DEL ir.ui.view: payment_worldline.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_worldline.payment_method_alipay_plus [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_worldline.payment_method_amex +NEW payment.method: payment_worldline.payment_method_bancontact +NEW payment.method: payment_worldline.payment_method_bizum +NEW payment.method: payment_worldline.payment_method_card +NEW payment.method: payment_worldline.payment_method_cartes_bancaires +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_worldline.payment_method_cirrus [renamed from payment module] (noupdate switched) +NEW payment.method: payment_worldline.payment_method_cofidis [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_worldline.payment_method_dankort +NEW payment.method: payment_worldline.payment_method_diners +NEW payment.method: payment_worldline.payment_method_discover +NEW payment.method: payment_worldline.payment_method_eps +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_worldline.payment_method_floa_bank [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_worldline.payment_method_ideal +NEW payment.method: payment_worldline.payment_method_ideal_brand +NEW payment.method: payment_worldline.payment_method_jcb +NEW payment.method: payment_worldline.payment_method_klarna +NEW payment.method: payment_worldline.payment_method_maestro +NEW payment.method: payment_worldline.payment_method_mastercard +NEW payment.method: payment_worldline.payment_method_mbway +NEW payment.method: payment_worldline.payment_method_meeza +NEW payment.method: payment_worldline.payment_method_multibanco +NEW payment.method: payment_worldline.payment_method_naps +NEW payment.method: payment_worldline.payment_method_omannet +NEW payment.method: payment_worldline.payment_method_p24 +NEW payment.method: payment_worldline.payment_method_paypal +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_worldline.payment_method_post_finance [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_worldline.payment_method_rupay +NEW payment.method: payment_worldline.payment_method_troy +NEW payment.method: payment_worldline.payment_method_twint +NEW payment.method: payment_worldline.payment_method_unionpay +NEW payment.method: payment_worldline.payment_method_visa +NEW payment.method: payment_worldline.payment_method_wechat_pay +NEW payment.method: payment_worldline.payment_method_wero +NEW payment.method: payment_worldline.payment_method_wero_brand +# NOTHING TO DO: the record is not noupdate, so the module update creates it +payment.provider: payment.payment_provider_worldline (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..3a46ec70f0e --- /dev/null +++ b/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,169 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + kfh + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..05ca2313464 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "payment_xendit", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..65d06fdb60f --- /dev/null +++ b/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,52 @@ +---Models in module 'payment_xendit'--- +---Fields in module 'payment_xendit'--- +---XML records in module 'payment_xendit'--- +DEL ir.ui.view: payment_xendit.redirect_form +NEW payment.method: payment_xendit.payment_method_7eleven [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_akulaku [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_amex +NEW payment.method: payment_xendit.payment_method_appota [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bangkok_bank +NEW payment.method: payment_xendit.payment_method_bank_bca [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bank_permata [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_billease [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bni [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bri [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bsi [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_card +NEW payment.method: payment_xendit.payment_method_cashalo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_cebuana [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_cimb_niaga [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_dana +NEW payment.method: payment_xendit.payment_method_fpx +NEW payment.method: payment_xendit.payment_method_gcash +NEW payment.method: payment_xendit.payment_method_grabpay +NEW payment.method: payment_xendit.payment_method_jcb +NEW payment.method: payment_xendit.payment_method_jeniuspay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_kfh [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_kredivo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_krungthai_bank +NEW payment.method: payment_xendit.payment_method_linepay +NEW payment.method: payment_xendit.payment_method_linkaja [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_mandiri [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_mastercard +NEW payment.method: payment_xendit.payment_method_maya +NEW payment.method: payment_xendit.payment_method_ovo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_paynow +NEW payment.method: payment_xendit.payment_method_promptpay +NEW payment.method: payment_xendit.payment_method_qris [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_scb +NEW payment.method: payment_xendit.payment_method_shopeepay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_touch_n_go +NEW payment.method: payment_xendit.payment_method_truemoney +NEW payment.method: payment_xendit.payment_method_unionpay +NEW payment.method: payment_xendit.payment_method_uob +NEW payment.method: payment_xendit.payment_method_vietcapital [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_viettelpay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_visa +NEW payment.method: payment_xendit.payment_method_vnptwallet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_vpbank [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_wechat_pay +NEW payment.method: payment_xendit.payment_method_woori [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_zalopay [renamed from payment module] (noupdate switched) +payment.provider: payment.payment_provider_xendit (noupdate switched) diff --git a/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..a38e019d049 --- /dev/null +++ b/openupgrade_scripts/scripts/payment_xendit/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,77 @@ +---Models in module 'payment_xendit'--- +---Fields in module 'payment_xendit'--- +---XML records in module 'payment_xendit'--- +DEL ir.ui.view: payment_xendit.redirect_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +NEW payment.method: payment_xendit.payment_method_7eleven [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_akulaku [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_amex +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_appota [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_bangkok_bank +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_bank_bca [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bank_permata [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_billease [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bni [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bri [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_bsi [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_card +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_cashalo [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_cebuana [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_cimb_niaga [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_dana +NEW payment.method: payment_xendit.payment_method_fpx +NEW payment.method: payment_xendit.payment_method_gcash +NEW payment.method: payment_xendit.payment_method_grabpay +NEW payment.method: payment_xendit.payment_method_jcb +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_jeniuspay [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_kfh [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_kredivo [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_krungthai_bank +NEW payment.method: payment_xendit.payment_method_linepay +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_linkaja [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_mandiri [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_mastercard +NEW payment.method: payment_xendit.payment_method_maya +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_ovo [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_paynow +NEW payment.method: payment_xendit.payment_method_promptpay +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_qris [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_scb +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_shopeepay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_touch_n_go +NEW payment.method: payment_xendit.payment_method_truemoney +NEW payment.method: payment_xendit.payment_method_unionpay +NEW payment.method: payment_xendit.payment_method_uob +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_vietcapital [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_viettelpay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_visa +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_vnptwallet [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_vpbank [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW payment.method: payment_xendit.payment_method_wechat_pay +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW payment.method: payment_xendit.payment_method_woori [renamed from payment module] (noupdate switched) +NEW payment.method: payment_xendit.payment_method_zalopay [renamed from payment module] (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +payment.provider: payment.payment_provider_xendit (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/portal/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/portal/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..08e4c471cac --- /dev/null +++ b/openupgrade_scripts/scripts/portal/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,18 @@ + + + + diff --git a/openupgrade_scripts/scripts/portal/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/portal/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..fae5501cc23 --- /dev/null +++ b/openupgrade_scripts/scripts/portal/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "portal", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/portal/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/portal/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..03801a08335 --- /dev/null +++ b/openupgrade_scripts/scripts/portal/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,51 @@ +---Models in module 'portal'--- +new model portal.entry +---Fields in module 'portal'--- +portal / account.analytic.account / website_message_ids (one2many): DEL relation: mail.message +portal / calendar.event / website_message_ids (one2many): DEL relation: mail.message +portal / crm.team / website_message_ids (one2many): DEL relation: mail.message +portal / crm.team.member / website_message_ids (one2many): DEL relation: mail.message +portal / discuss.channel / website_message_ids (one2many): DEL relation: mail.message +portal / fleet.vehicle / website_message_ids (one2many): DEL relation: mail.message +portal / fleet.vehicle.log.contract / website_message_ids (one2many): DEL relation: mail.message +portal / fleet.vehicle.log.services / website_message_ids (one2many): DEL relation: mail.message +portal / fleet.vehicle.model / website_message_ids (one2many): DEL relation: mail.message +portal / gamification.badge / website_message_ids (one2many): DEL relation: mail.message +portal / gamification.badge.user / website_message_ids (one2many): DEL relation: mail.message +portal / gamification.challenge / website_message_ids (one2many): DEL relation: mail.message +portal / iap.account / website_message_ids (one2many): DEL relation: mail.message +portal / ir.actions.server / website_message_ids (one2many): DEL relation: mail.message +portal / ir.cron / website_message_ids (one2many): DEL relation: mail.message +portal / lunch.supplier / website_message_ids (one2many): DEL relation: mail.message +portal / mail.blacklist / website_message_ids (one2many): DEL relation: mail.message +portal / maintenance.equipment / website_message_ids (one2many): DEL relation: mail.message +portal / maintenance.request / website_message_ids (one2many): DEL relation: mail.message +portal / maintenance.team / website_message_ids (one2many): DEL relation: mail.message +portal / phone.blacklist / website_message_ids (one2many): DEL relation: mail.message +portal / portal.entry / category (char) : NEW hasdefault: default +portal / portal.entry / description (text) : NEW translate +portal / portal.entry / image (binary) : NEW attachment: True +portal / portal.entry / is_config_card (boolean) : NEW hasdefault: default +portal / portal.entry / name (char) : NEW required, translate +portal / portal.entry / placeholder_count (char) : NEW +portal / portal.entry / sequence (integer) : NEW hasdefault: default +portal / portal.entry / show_in_portal (boolean) : NEW hasdefault: default +portal / portal.entry / url (char) : NEW +portal / product.category / website_message_ids (one2many): DEL relation: mail.message +portal / product.pricelist / website_message_ids (one2many): DEL relation: mail.message +portal / product.product / website_message_ids (one2many): DEL relation: mail.message +portal / product.template / website_message_ids (one2many): DEL relation: mail.message +portal / res.partner / website_message_ids (one2many): DEL relation: mail.message +---XML records in module 'portal'--- +NEW ir.access: portal.access_portal_entry_public +NEW ir.access: portal.access_portal_share +NEW ir.access: portal.access_portal_wizard +NEW ir.access: portal.access_portal_wizard_user +DEL ir.model.access: portal.access_portal_share +DEL ir.model.access: portal.access_portal_wizard +DEL ir.model.access: portal.access_portal_wizard_user +NEW ir.ui.view: portal.address_warning_icon +ir.ui.view: portal.portal_share_template (noupdate switched) +NEW ir.ui.view: portal.profile_picture_card +NEW portal.entry: portal.portal_entry_addresses +NEW portal.entry: portal.portal_entry_base diff --git a/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..8f78329f083 --- /dev/null +++ b/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..5b850abf626 --- /dev/null +++ b/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "pos_restaurant", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..8c2af2c9457 --- /dev/null +++ b/openupgrade_scripts/scripts/pos_restaurant/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,54 @@ +---Models in module 'pos_restaurant'--- +new model pos.course +---Fields in module 'pos_restaurant'--- +pos_restaurant / pos.category / course_id (many2one) : NEW relation: pos.course +pos_restaurant / pos.config / floor_plan_settings (json) : NEW +pos_restaurant / pos.config / iface_printbill (boolean) : module is now 'point_of_sale' ('pos_restaurant') +pos_restaurant / pos.config / iface_splitbill (boolean) : DEL +pos_restaurant / pos.config / set_tip_after_payment (boolean): module is now 'point_of_sale' ('pos_restaurant') +pos_restaurant / pos.config / use_course_allocation (boolean): NEW +pos_restaurant / pos.config / use_show_items_on_course_ticket (boolean): NEW +pos_restaurant / pos.course / category_ids (one2many) : NEW relation: pos.category +pos_restaurant / pos.course / name (char) : NEW required +pos_restaurant / pos.course / sequence (integer) : NEW hasdefault: default +pos_restaurant / restaurant.floor / background_color (char) : DEL +pos_restaurant / restaurant.floor / background_image (binary) : DEL attachment: True +pos_restaurant / restaurant.floor / floor_background_image (binary): DEL attachment: True +pos_restaurant / restaurant.floor / floor_plan_layout (json) : NEW +pos_restaurant / restaurant.order.course / course_id (many2one) : NEW relation: pos.course +pos_restaurant / restaurant.order.course / name (char) : NEW +pos_restaurant / restaurant.table / color (char) : DEL +pos_restaurant / restaurant.table / floor_plan_layout (json) : NEW +pos_restaurant / restaurant.table / height (float) : DEL +pos_restaurant / restaurant.table / parent_side (selection) : NEW selection_keys: ['bottom', 'left', 'right', 'top'] +pos_restaurant / restaurant.table / position_h (float) : DEL +pos_restaurant / restaurant.table / position_v (float) : DEL +pos_restaurant / restaurant.table / shape (selection) : DEL required, selection_keys: ['round', 'square'] +pos_restaurant / restaurant.table / width (float) : DEL +---XML records in module 'pos_restaurant'--- +NEW ir.access: pos_restaurant.access_pos_course +NEW ir.access: pos_restaurant.access_pos_course_manager +NEW ir.access: pos_restaurant.access_restaurant_floor +NEW ir.access: pos_restaurant.access_restaurant_floor_manager +NEW ir.access: pos_restaurant.access_restaurant_order_course +NEW ir.access: pos_restaurant.access_restaurant_table +NEW ir.access: pos_restaurant.access_restaurant_table_manager +NEW ir.actions.act_window: pos_restaurant.action_pos_course +DEL ir.model.access: pos_restaurant.access_restaurant_floor +DEL ir.model.access: pos_restaurant.access_restaurant_floor_manager +DEL ir.model.access: pos_restaurant.access_restaurant_order_course +DEL ir.model.access: pos_restaurant.access_restaurant_table +DEL ir.model.access: pos_restaurant.access_restaurant_table_manager +NEW ir.model.constraint: pos_restaurant.constraint_pos_course_name_unique +NEW ir.ui.menu: pos_restaurant.menu_pos_course +NEW ir.ui.view: pos_restaurant.pos_order_change_receipt +NEW ir.ui.view: pos_restaurant.pos_order_receipt_header +NEW ir.ui.view: pos_restaurant.pos_restaurant_pos_category_kanban_view +NEW ir.ui.view: pos_restaurant.pos_restaurant_product_pos_category_tree_view +NEW ir.ui.view: pos_restaurant.view_pos_category_form_inherit_course +NEW ir.ui.view: pos_restaurant.view_pos_course_form +NEW ir.ui.view: pos_restaurant.view_pos_course_list +pos.preset: pos_restaurant.pos_delivery_preset (noupdate switched) +pos.preset: pos_restaurant.pos_takein_preset (noupdate switched) +pos.preset: pos_restaurant.pos_takeout_preset (noupdate switched) +resource.calendar: pos_restaurant.pos_resource_preset (noupdate switched) diff --git a/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..2824bbd9bbd --- /dev/null +++ b/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,57 @@ + + + + +
+ + + + + + + + + +
+ Hello Client name, + Hello, +
+
+
Your order ... amounting in $xx.xx has been confirmed. It will be ready at 12:00 pm at street, state, zip, city, country
+
+
Thank you,
+
+
+
You can download your receipt here
+
+
+ Store name +
+
+ Sent to customers with a link to download their receipt +
+ + +
+ + + +
+ Hello Client name, + Hello, +
+
+
Your order ... amounting in $xx.xx has been confirmed. It will be ready at 12:00 pm
+
+
Thank you,
+
+
+
You can download your receipt here
+
+
+ Store name +
+
+ Sent to customers with a link to download their receipt +
+
diff --git a/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..dc70f9e1960 --- /dev/null +++ b/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "pos_self_order", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "pos_self_order", + ["delivery_email_template", "takeout_email_template"], + ["body_html", "description"], + ) diff --git a/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..c6023d04582 --- /dev/null +++ b/openupgrade_scripts/scripts/pos_self_order/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,36 @@ +---Models in module 'pos_self_order'--- +---Fields in module 'pos_self_order'--- +pos_self_order / pos.category / pos_config_ids (many2many) : module is now 'point_of_sale' ('pos_self_order') +pos_self_order / pos.config / self_ordering_primary_color (char): NEW hasdefault: default +pos_self_order / pos.config / self_ordering_service_mode (selection): selection_keys added: [dynamic_qr] (most likely nothing to do) +pos_self_order / pos.preset / delivery_distance_unit (selection): NEW selection_keys: ['km', 'mi'], hasdefault: default +pos_self_order / pos.preset / delivery_from_address (char) : NEW isfunction: function, stored +pos_self_order / pos.preset / delivery_from_city (char) : NEW +pos_self_order / pos.preset / delivery_from_country_id (many2one): NEW relation: res.country +pos_self_order / pos.preset / delivery_from_latitude (float): NEW +pos_self_order / pos.preset / delivery_from_longitude (float): NEW +pos_self_order / pos.preset / delivery_from_state_id (many2one): NEW relation: res.country.state +pos_self_order / pos.preset / delivery_from_street (char) : NEW +pos_self_order / pos.preset / delivery_from_zip (char) : NEW +pos_self_order / pos.preset / delivery_max_distance_km (float): NEW hasdefault: default +pos_self_order / pos.preset / delivery_product_id (many2one): NEW relation: product.product, hasdefault: default +pos_self_order / pos.preset / delivery_product_price (float): NEW hasdefault: default +pos_self_order / pos.preset / free_delivery_min_amount (float): NEW +pos_self_order / pos.snooze / type (False) : NEW selection_keys: ['product', 'self-ordering'], mode: modify +---XML records in module 'pos_self_order'--- +NEW ir.access: pos_self_order.access_pos_self_order_custom_link_manager +NEW ir.access: pos_self_order.access_pos_self_order_custom_link_user +DEL ir.model.access: pos_self_order.access_pos_self_order_custom_link_manager +DEL ir.model.access: pos_self_order.access_pos_self_order_custom_link_user +NEW ir.ui.view: pos_self_order.DynamicQrReceipt +NEW ir.ui.view: pos_self_order.pos_config_view_form_inherit_pos_self_order +NEW ir.ui.view: pos_self_order.pos_order_change_receipt +NEW ir.ui.view: pos_self_order.pos_order_receipt_header +NEW ir.ui.view: pos_self_order.view_pos_preset_tree +DEL ir.ui.view: pos_self_order.pos_self_view_pos_session_form +mail.template: pos_self_order.delivery_email_template (noupdate switched) +mail.template: pos_self_order.takeout_email_template (noupdate switched) +pos.preset: pos_restaurant.pos_delivery_preset (noupdate switched) +pos.preset: pos_restaurant.pos_takein_preset (noupdate switched) +pos.preset: pos_restaurant.pos_takeout_preset (noupdate switched) +NEW product.template: pos_self_order.product_delivery_template diff --git a/openupgrade_scripts/scripts/project/20.0.1.4/noupdate_changes.xml b/openupgrade_scripts/scripts/project/20.0.1.4/noupdate_changes.xml new file mode 100644 index 00000000000..b71ac130fee --- /dev/null +++ b/openupgrade_scripts/scripts/project/20.0.1.4/noupdate_changes.xml @@ -0,0 +1,29 @@ + + + + mail.mail_notification_light + + + + [ + ('project_id.privacy_visibility', 'in', ['invited_users', 'portal']), + ('has_template_ancestor', '=', False), + ('active', '=', True), + ('project_id.collaborator_ids', 'any', [ + ('partner_id', '=', user.partner_id.id), + ('access_mode', 'in', ['edit', 'advanced_edit']) + ]), + ] + + cu + + + mail.mail_notification_light + + diff --git a/openupgrade_scripts/scripts/project/20.0.1.4/post-migration.py b/openupgrade_scripts/scripts/project/20.0.1.4/post-migration.py new file mode 100644 index 00000000000..7b15311bf88 --- /dev/null +++ b/openupgrade_scripts/scripts/project/20.0.1.4/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "project", "20.0.1.4/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/project/20.0.1.4/upgrade_analysis.txt b/openupgrade_scripts/scripts/project/20.0.1.4/upgrade_analysis.txt new file mode 100644 index 00000000000..9cc06233158 --- /dev/null +++ b/openupgrade_scripts/scripts/project/20.0.1.4/upgrade_analysis.txt @@ -0,0 +1,306 @@ +---Models in module 'project'--- +new model project.task.stage.report [sql_view] +---Fields in module 'project'--- +project / project.collaborator / access_mode (selection) : NEW required, selection_keys: ['advanced_edit', 'edit', 'view'], hasdefault: default +project / project.collaborator / limited_access (boolean) : DEL +project / project.milestone / website_message_ids (one2many): DEL relation: mail.message +project / project.project / allowed_internal_user_ids (many2many): NEW relation: res.users, hasdefault: compute +project / project.project / date_last_stage_update (datetime): NEW hasdefault: default +project / project.project / duration_tracking (json) : is now stored +project / project.project / website_message_ids (one2many): DEL relation: mail.message +project / project.project.stage / color (integer) : DEL +project / project.project.stage / rotting_threshold_days (integer): NEW hasdefault: default +project / project.role / user_ids (many2many) : NEW relation: res.users +project / project.task / allow_recurring_tasks (boolean): not related anymore +project / project.task / allow_recurring_tasks (boolean): now a function +project / project.task / allow_task_dependencies (boolean): not related anymore +project / project.task / allow_task_dependencies (boolean): now a function +project / project.task / duration_tracking (json) : is now stored +project / project.task / email_cc (char) : DEL +project / project.task / website_message_ids (one2many): DEL relation: mail.message +project / project.task.type / color (integer) : DEL +project / project.update / _order : _order is now 'date desc, id desc' ('id desc') +project / project.update / email_cc (char) : DEL +project / project.update / website_message_ids (one2many): DEL relation: mail.message +project / res.users / followed_project_ids (many2many): NEW relation: project.project, stored: False +project / res.users / project_role_ids (many2many) : NEW relation: project.role +---XML records in module 'project'--- +digest.digest: digest.digest_digest_default (noupdate switched) +NEW digest.tip: project.digest_tip_project_4 +NEW digest.tip: project.digest_tip_project_5 +NEW digest.tip: project.digest_tip_project_6 +NEW digest.tip: project.digest_tip_project_7 +NEW digest.tip: project.digest_tip_project_8 +NEW digest.tip: project.digest_tip_project_9 +NEW ir.access: project.access_account_analytic_account_manager +NEW ir.access: project.access_account_analytic_account_user +NEW ir.access: project.access_mail_activity_plan_project_manager +NEW ir.access: project.access_mail_activity_plan_template_project_manager +NEW ir.access: project.access_mail_activity_type_project_manager +NEW ir.access: project.access_project_collaborator_manager +NEW ir.access: project.access_project_collaborator_user +NEW ir.access: project.access_project_personal_stage +NEW ir.access: project.access_project_project_stage +NEW ir.access: project.access_project_project_stage_delete_wizard +NEW ir.access: project.access_project_project_stage_manager +NEW ir.access: project.access_project_role_manager +NEW ir.access: project.access_project_role_user +NEW ir.access: project.access_project_share_collaborator_manager +NEW ir.access: project.access_project_share_manager +NEW ir.access: project.access_project_tags_portal +NEW ir.access: project.access_project_task_recurrence +NEW ir.access: project.access_project_task_share_manager +NEW ir.access: project.access_project_task_stage_report +NEW ir.access: project.access_project_task_type_delete_wizard +NEW ir.access: project.access_project_task_type_portal +NEW ir.access: project.access_project_task_type_user +NEW ir.access: project.access_project_template_create_wizard_manager +NEW ir.access: project.access_project_template_create_wizard_user +NEW ir.access: project.access_project_template_role_to_users_map_manager +NEW ir.access: project.access_project_template_role_to_users_map_user +NEW ir.access: project.access_resource_calendar +NEW ir.access: project.access_resource_calendar_attendance +NEW ir.access: project.account_analytic_line_rule_manager +NEW ir.access: project.burndown_chart_project_manager_rule +NEW ir.access: project.burndown_chart_project_user_rule +NEW ir.access: project.ir_rule_private_task +NEW ir.access: project.ir_rule_project_personal_stage_my +NEW ir.access: project.mail_plan_rule_group_project_manager_task +NEW ir.access: project.mail_plan_templates_rule_group_project_manager_task +NEW ir.access: project.milestone_comp_rule +NEW ir.access: project.milestone_visibility_project_admin +NEW ir.access: project.milestone_visibility_rule +NEW ir.access: project.milestone_visibility_rule_1 +NEW ir.access: project.project_collaborator_rule_portal +NEW ir.access: project.project_comp_rule +NEW ir.access: project.project_manager_all_project_tasks_rule +NEW ir.access: project.project_milestone_rule_portal_project_sharing +NEW ir.access: project.project_project_manager_rule +NEW ir.access: project.project_project_rule_portal +NEW ir.access: project.project_project_stage_rule +NEW ir.access: project.project_public_members_rule +NEW ir.access: project.project_task_rule_portal +NEW ir.access: project.project_task_rule_portal_project_sharing +NEW ir.access: project.project_user_read_on_tasks_templates_without_project_rule +NEW ir.access: project.report_project_task_manager_rule +NEW ir.access: project.report_project_task_user_report_comp_rule +NEW ir.access: project.res_partner_rule_user +NEW ir.access: project.resource_calendar_leaves_rule_group_user_create +NEW ir.access: project.resource_calendar_leaves_rule_group_user_modify +NEW ir.access: project.tags_manager_rule +NEW ir.access: project.tags_user_rule +NEW ir.access: project.task_comp_rule +NEW ir.access: project.task_type_manager_rule +NEW ir.access: project.task_type_own_write_rule +NEW ir.access: project.task_type_visibility_rule +NEW ir.access: project.task_visibility_rule +NEW ir.access: project.task_visibility_rule_project_user +NEW ir.access: project.update_comp_rule +NEW ir.access: project.update_visibility_project_admin +NEW ir.access: project.update_visibility_rule +NEW ir.access: project.update_visibility_rule_1 +ir.actions.act_window: project.act_project_project_2_project_task_all (deleted domain) +ir.actions.act_window: project.action_project_task_burndown_chart_report (deleted domain) +ir.actions.act_window: project.action_project_task_user_tree (deleted domain) +NEW ir.actions.act_window: project.action_project_time_by_stage_report +ir.actions.act_window: project.action_view_all_task (deleted domain) +ir.actions.act_window: project.action_view_my_task (deleted domain) +ir.actions.act_window: project.action_view_task (deleted domain) +ir.actions.act_window: project.action_view_task_from_milestone (deleted domain) +ir.actions.act_window: project.action_view_task_overpassed_draft (deleted domain) +ir.actions.act_window: project.dblc_proj (deleted domain) +ir.actions.act_window: project.mail_activity_plan_action_config_project_task_plan (deleted domain) +ir.actions.act_window: project.mail_activity_type_action_config_project_types (deleted domain) +NEW ir.actions.act_window: project.open_create_project_template +ir.actions.act_window: project.open_task_type_form (deleted domain) +ir.actions.act_window: project.open_task_type_form_domain (deleted domain) +ir.actions.act_window: project.open_view_project_all (deleted domain) +ir.actions.act_window: project.open_view_project_all_config (deleted domain) +ir.actions.act_window: project.open_view_project_all_config_group_stage (deleted domain) +ir.actions.act_window: project.open_view_project_all_group_stage (deleted domain) +NEW ir.actions.act_window: project.open_view_project_template +ir.actions.act_window: project.project_milestone_action (deleted domain) +ir.actions.act_window: project.project_sharing_project_task_action (deleted domain) +ir.actions.act_window: project.project_sharing_project_task_action_blocking_tasks (deleted domain) +ir.actions.act_window: project.project_sharing_project_task_action_sub_task (deleted domain) +ir.actions.act_window: project.project_task_action_from_partner (deleted domain) +ir.actions.act_window: project.project_task_action_sub_task (deleted domain) +ir.actions.act_window: project.project_update_all_action (deleted domain) +ir.actions.act_window: project.rating_rating_action_project_report (deleted domain) +ir.actions.act_window: project.rating_rating_action_task (deleted domain) +ir.actions.act_window: project.rating_rating_action_view_project_rating (deleted domain) +DEL ir.actions.act_window: project.project_milestone_action_view_tasks +NEW ir.actions.act_window.view: project.open_view_project_template_form_action_view +NEW ir.actions.act_window.view: project.open_view_project_template_kanban_action_view +NEW ir.actions.act_window.view: project.open_view_project_template_tree_action_view +DEL ir.actions.act_window.view: project.project_milestone_action_view_graph +DEL ir.actions.act_window.view: project.project_milestone_action_view_pivot +DEL ir.actions.act_window.view: project.project_milestone_action_view_tasks_calendar +DEL ir.actions.act_window.view: project.project_milestone_action_view_tasks_kanban +DEL ir.actions.act_window.view: project.project_milestone_action_view_tasks_list +NEW ir.actions.server: project.action_server_share_project +NEW ir.actions.server: project.action_server_share_task +NEW ir.config_parameter: project.portal_task_page_limit_param +ir.cron: project.ir_cron_rating_project (noupdate switched) +NEW ir.embedded.actions: project.project_embedded_action_project_burndown_chart +NEW ir.embedded.actions: project.project_embedded_action_project_overview +NEW ir.embedded.actions: project.project_embedded_action_time_by_stage +NEW ir.embedded.actions: project.project_embedded_action_update_burndown_chart +ir.exports: project.project_task_export_template (noupdate switched) +ir.exports.line: project.project_task_export_template_line_id (noupdate switched) +ir.exports.line: project.project_task_export_template_line_name (noupdate switched) +ir.exports.line: project.project_task_export_template_line_project_id (noupdate switched) +ir.exports.line: project.project_task_export_template_line_stage_id (noupdate switched) +ir.exports.line: project.project_task_export_template_line_state (noupdate switched) +ir.exports.line: project.project_task_export_template_line_tag_ids (noupdate switched) +ir.exports.line: project.project_task_export_template_line_user_ids (noupdate switched) +DEL ir.model.access: project.access_account_analytic_account_manager +DEL ir.model.access: project.access_account_analytic_account_user +DEL ir.model.access: project.access_account_analytic_line_project +DEL ir.model.access: project.access_mail_activity_plan_project_manager +DEL ir.model.access: project.access_mail_activity_plan_template_project_manager +DEL ir.model.access: project.access_mail_activity_type_project_manager +DEL ir.model.access: project.access_partner_task_user +DEL ir.model.access: project.access_project_collaborator_manager +DEL ir.model.access: project.access_project_collaborator_portal +DEL ir.model.access: project.access_project_collaborator_user +DEL ir.model.access: project.access_project_milestone_portal +DEL ir.model.access: project.access_project_milestone_project_manager +DEL ir.model.access: project.access_project_milestone_project_user +DEL ir.model.access: project.access_project_milestone_user +DEL ir.model.access: project.access_project_personal_stage +DEL ir.model.access: project.access_project_portal +DEL ir.model.access: project.access_project_project +DEL ir.model.access: project.access_project_project_manager +DEL ir.model.access: project.access_project_project_stage +DEL ir.model.access: project.access_project_project_stage_delete_wizard +DEL ir.model.access: project.access_project_project_stage_manager +DEL ir.model.access: project.access_project_role_manager +DEL ir.model.access: project.access_project_role_user +DEL ir.model.access: project.access_project_share_collaborator_manager +DEL ir.model.access: project.access_project_share_manager +DEL ir.model.access: project.access_project_sharing_task_portal (noupdate) +DEL ir.model.access: project.access_project_tags_all +DEL ir.model.access: project.access_project_tags_manager +DEL ir.model.access: project.access_project_tags_portal +DEL ir.model.access: project.access_project_task +DEL ir.model.access: project.access_project_task_burndown_chart_report +DEL ir.model.access: project.access_project_task_burndown_chart_report_user +DEL ir.model.access: project.access_project_task_recurrence +DEL ir.model.access: project.access_project_task_share_manager +DEL ir.model.access: project.access_project_task_share_user +DEL ir.model.access: project.access_project_task_type_delete_wizard +DEL ir.model.access: project.access_project_task_type_manager +DEL ir.model.access: project.access_project_task_type_portal +DEL ir.model.access: project.access_project_task_type_project_user +DEL ir.model.access: project.access_project_task_type_user +DEL ir.model.access: project.access_project_template_create_wizard_manager +DEL ir.model.access: project.access_project_template_create_wizard_user +DEL ir.model.access: project.access_project_template_role_to_users_map_manager +DEL ir.model.access: project.access_project_template_role_to_users_map_user +DEL ir.model.access: project.access_project_update_portal +DEL ir.model.access: project.access_project_update_project_manager +DEL ir.model.access: project.access_project_update_project_user +DEL ir.model.access: project.access_project_update_user +DEL ir.model.access: project.access_project_user +DEL ir.model.access: project.access_report_project_task_user +DEL ir.model.access: project.access_report_project_task_user_project_user +DEL ir.model.access: project.access_resource_calendar +DEL ir.model.access: project.access_resource_calendar_attendance +DEL ir.model.access: project.access_resource_calendar_leaves_user +DEL ir.model.access: project.access_task_on_partner +DEL ir.model.access: project.access_task_portal +NEW ir.model.constraint: project.constraint_mail_activity_task_user_active_idx +ir.model.constraint: project.constraint_mail_message_date_res_id_id_for_burndown_chart (changed definition: is now 'False' ('INDEX (date, res_id, id) WHERE model = 'project.task' AND message_type = 'notification'')) +ir.model.constraint: project.constraint_project_collaborator_unique_collaborator (changed definition: is now 'False' ('UNIQUE(project_id, partner_id)')) +ir.model.constraint: project.constraint_project_project_project_date_greater (changed definition: is now 'False' ('check(date >= date_start)')) +ir.model.constraint: project.constraint_project_tags_name_uniq (changed definition: is now 'False' ('unique (name)')) +ir.model.constraint: project.constraint_project_task_is_template_idx (changed definition: is now 'False' ('INDEX (is_template) WHERE is_template IS TRUE')) +ir.model.constraint: project.constraint_project_task_private_task_has_no_parent (changed definition: is now 'False' ('CHECK (NOT (project_id IS NULL AND parent_id IS NOT NULL))')) +ir.model.constraint: project.constraint_project_task_recurring_task_has_no_parent (changed definition: is now 'False' ('CHECK (NOT (recurring_task IS TRUE AND parent_id IS NOT NULL))')) +ir.model.constraint: project.constraint_project_task_user_rel_project_personal_stage_unique (changed definition: is now 'False' ('UNIQUE (task_id, user_id)')) +DEL ir.rule: project.burndown_chart_project_manager_rule (noupdate) +DEL ir.rule: project.burndown_chart_project_user_rule (noupdate) +DEL ir.rule: project.ir_rule_private_task (noupdate) +DEL ir.rule: project.ir_rule_project_personal_stage_my (noupdate) +DEL ir.rule: project.mail_plan_rule_group_project_manager_task (noupdate) +DEL ir.rule: project.mail_plan_templates_rule_group_project_manager_task (noupdate) +DEL ir.rule: project.milestone_comp_rule (noupdate) +DEL ir.rule: project.milestone_visibility_project_admin (noupdate) +DEL ir.rule: project.milestone_visibility_rule (noupdate) +DEL ir.rule: project.project_collaborator_rule_portal (noupdate) +DEL ir.rule: project.project_comp_rule (noupdate) +DEL ir.rule: project.project_manager_all_project_tasks_rule (noupdate) +DEL ir.rule: project.project_milestone_rule_portal_project_sharing (noupdate) +DEL ir.rule: project.project_project_manager_rule (noupdate) +DEL ir.rule: project.project_project_rule_portal (noupdate) +DEL ir.rule: project.project_project_stage_rule (noupdate) +DEL ir.rule: project.project_public_members_rule (noupdate) +DEL ir.rule: project.project_task_rule_portal (noupdate) +DEL ir.rule: project.project_task_rule_portal_project_sharing (noupdate) +DEL ir.rule: project.report_project_task_manager_rule (noupdate) +DEL ir.rule: project.report_project_task_user_report_comp_rule (noupdate) +DEL ir.rule: project.report_project_task_user_rule (noupdate) +DEL ir.rule: project.task_comp_rule (noupdate) +DEL ir.rule: project.task_type_manager_rule (noupdate) +DEL ir.rule: project.task_type_own_write_rule (noupdate) +DEL ir.rule: project.task_type_visibility_rule (noupdate) +DEL ir.rule: project.task_visibility_rule (noupdate) +DEL ir.rule: project.task_visibility_rule_project_user (noupdate) +DEL ir.rule: project.update_comp_rule (noupdate) +DEL ir.rule: project.update_visibility_project_admin (noupdate) +DEL ir.rule: project.update_visibility_rule (noupdate) +NEW ir.ui.menu: project.menu_project_config_project_template +NEW ir.ui.view: project.portal_format_date +ir.ui.view: project.project_message_user_assigned (noupdate switched) +NEW ir.ui.view: project.project_sharing_project_task_view_card +NEW ir.ui.view: project.project_templates_view_card +NEW ir.ui.view: project.project_time_by_stage_report_view_graph +NEW ir.ui.view: project.project_time_by_stage_report_view_pivot +NEW ir.ui.view: project.project_time_by_stage_report_view_search +NEW ir.ui.view: project.project_update_view_graph +NEW ir.ui.view: project.project_view_card_inherit_project +ir.ui.view: project.task_invitation_follower (noupdate switched) +NEW ir.ui.view: project.view_project_card +NEW ir.ui.view: project.view_project_card_group_stage +NEW ir.ui.view: project.view_task_card +NEW ir.ui.view: project.view_task_card_subtask_mobile +NEW ir.ui.view: project.view_task_kanban_no_default_grouping +DEL ir.ui.view: project.portal_my_home +DEL ir.ui.view: project.project_task_graph_view_project_milestone +DEL ir.ui.view: project.project_task_kanban_view_project_milestone +DEL ir.ui.view: project.project_task_pivot_view_project_milestone +DEL ir.ui.view: project.project_task_templates_kanban +DEL ir.ui.view: project.project_task_templates_list +DEL ir.ui.view: project.project_task_tree_view_project_milestone +DEL ir.ui.view: project.project_view_kanban_inherit_project +DEL ir.ui.view: project.view_task_template_search_form +mail.message.subtype: project.mt_project_stage_change (noupdate switched) +mail.message.subtype: project.mt_project_task_approved (noupdate switched) +mail.message.subtype: project.mt_project_task_canceled (noupdate switched) +mail.message.subtype: project.mt_project_task_changes_requested (noupdate switched) +mail.message.subtype: project.mt_project_task_done (noupdate switched) +mail.message.subtype: project.mt_project_task_in_progress (noupdate switched) +mail.message.subtype: project.mt_project_task_new (noupdate switched) +mail.message.subtype: project.mt_project_task_rating (noupdate switched) +mail.message.subtype: project.mt_project_task_stage (noupdate switched) +mail.message.subtype: project.mt_project_task_waiting (noupdate switched) +mail.message.subtype: project.mt_project_update_create (noupdate switched) +mail.message.subtype: project.mt_task_approved (noupdate switched) +mail.message.subtype: project.mt_task_canceled (noupdate switched) +mail.message.subtype: project.mt_task_changes_requested (noupdate switched) +mail.message.subtype: project.mt_task_done (noupdate switched) +mail.message.subtype: project.mt_task_in_progress (noupdate switched) +mail.message.subtype: project.mt_task_new (noupdate switched) +mail.message.subtype: project.mt_task_rating (noupdate switched) +mail.message.subtype: project.mt_task_stage (noupdate switched) +mail.message.subtype: project.mt_task_waiting (noupdate switched) +mail.message.subtype: project.mt_update_create (noupdate switched) +mail.template: project.mail_template_data_project_task (noupdate switched) +mail.template: project.rating_project_request_email_template (noupdate switched) +NEW portal.entry: project.portal_projects +NEW portal.entry: project.portal_tasks +project.project.stage: project.project_project_stage_0 (noupdate switched) +project.project.stage: project.project_project_stage_1 (noupdate switched) +project.project.stage: project.project_project_stage_2 (noupdate switched) +project.project.stage: project.project_project_stage_3 (noupdate switched) diff --git a/openupgrade_scripts/scripts/project_todo/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/project_todo/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..60e60c7045f --- /dev/null +++ b/openupgrade_scripts/scripts/project_todo/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,193 @@ + + + + diff --git a/openupgrade_scripts/scripts/project_todo/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/project_todo/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..add2b43cc2e --- /dev/null +++ b/openupgrade_scripts/scripts/project_todo/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "project_todo", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/project_todo/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/project_todo/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..87466be7de9 --- /dev/null +++ b/openupgrade_scripts/scripts/project_todo/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,24 @@ +---Models in module 'project_todo'--- +---Fields in module 'project_todo'--- +---XML records in module 'project_todo'--- +NEW digest.tip: project_todo.digest_tip_project_todo_0 +NEW ir.access: project_todo.access_mail_activity_todo_create +NEW ir.access: project_todo.access_project_task_type_user +NEW ir.access: project_todo.ir_rule_private_task +NEW ir.access: project_todo.project_manager_all_project_tasks_rule +NEW ir.access: project_todo.project_user_read_on_tasks_templates_without_project_rule +NEW ir.access: project_todo.tags_manager_rule +NEW ir.access: project_todo.tags_own_write_rule +NEW ir.access: project_todo.tags_user_rule +NEW ir.access: project_todo.task_edition_rule_internal +NEW ir.access: project_todo.task_type_manager_rule +NEW ir.access: project_todo.task_type_own_write_rule +NEW ir.access: project_todo.task_visibility_rule +NEW ir.access: project_todo.task_visibility_rule_project_user +ir.actions.act_window: project_todo.project_task_action_todo (deleted domain) +DEL ir.model.access: project_todo.access_mail_activity_todo_create +DEL ir.model.access: project_todo.access_project_tags_user +DEL ir.model.access: project_todo.access_project_task_type_user +DEL ir.model.access: project_todo.access_task_on_partner +DEL ir.rule: project_todo.task_edition_rule_internal (noupdate) +ir.ui.view: project_todo.todo_user_onboarding (noupdate switched) diff --git a/openupgrade_scripts/scripts/project_todo/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/project_todo/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..165410dccd5 --- /dev/null +++ b/openupgrade_scripts/scripts/project_todo/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,29 @@ +---Models in module 'project_todo'--- +---Fields in module 'project_todo'--- +---XML records in module 'project_todo'--- +NEW digest.tip: project_todo.digest_tip_project_todo_0 +# NOTHING TO DO: the record is not noupdate, so the module update creates it +NEW ir.access: project_todo.access_mail_activity_todo_create +NEW ir.access: project_todo.access_project_task_type_user +NEW ir.access: project_todo.ir_rule_private_task +NEW ir.access: project_todo.project_manager_all_project_tasks_rule +NEW ir.access: project_todo.project_user_read_on_tasks_templates_without_project_rule +NEW ir.access: project_todo.tags_manager_rule +NEW ir.access: project_todo.tags_own_write_rule +NEW ir.access: project_todo.tags_user_rule +NEW ir.access: project_todo.task_edition_rule_internal +NEW ir.access: project_todo.task_type_manager_rule +NEW ir.access: project_todo.task_type_own_write_rule +NEW ir.access: project_todo.task_visibility_rule +NEW ir.access: project_todo.task_visibility_rule_project_user +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.actions.act_window: project_todo.project_task_action_todo (deleted domain) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites the domain +DEL ir.model.access: project_todo.access_mail_activity_todo_create +DEL ir.model.access: project_todo.access_project_tags_user +DEL ir.model.access: project_todo.access_project_task_type_user +DEL ir.model.access: project_todo.access_task_on_partner +DEL ir.rule: project_todo.task_edition_rule_internal (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.ui.view: project_todo.todo_user_onboarding (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..80fb06971f0 --- /dev/null +++ b/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + mail.mail_notification_layout + + diff --git a/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..788064512e8 --- /dev/null +++ b/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "sale_gelato", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..6ca890913d3 --- /dev/null +++ b/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,10 @@ +---Models in module 'sale_gelato'--- +---Fields in module 'sale_gelato'--- +sale_gelato / product.product / gelato_variant_image_ids (one2many): NEW relation: product.document +---XML records in module 'sale_gelato'--- +delivery.carrier: sale_gelato.express_delivery (noupdate switched) +delivery.carrier: sale_gelato.standard_delivery (noupdate switched) +DEL ir.ui.view: sale_gelato.product_product_easy_form +mail.template: sale_gelato.order_status_update (noupdate switched) +product.product: sale_gelato.express_delivery_product (noupdate switched) +product.product: sale_gelato.standard_delivery_product (noupdate switched) diff --git a/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..37b366a98e5 --- /dev/null +++ b/openupgrade_scripts/scripts/sale_gelato/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,15 @@ +---Models in module 'sale_gelato'--- +---Fields in module 'sale_gelato'--- +sale_gelato / product.product / gelato_variant_image_ids (one2many): NEW relation: product.document +# NOTHING TO DO: a one2many has no column of its own +---XML records in module 'sale_gelato'--- +delivery.carrier: sale_gelato.express_delivery (noupdate switched) +delivery.carrier: sale_gelato.standard_delivery (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +DEL ir.ui.view: sale_gelato.product_product_easy_form +# NOTHING TO DO: the record is not noupdate, so the module update removes it +mail.template: sale_gelato.order_status_update (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml +product.product: sale_gelato.express_delivery_product (noupdate switched) +product.product: sale_gelato.standard_delivery_product (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same diff --git a/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..9e74fea8f42 --- /dev/null +++ b/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..4998b7f86f0 --- /dev/null +++ b/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "sale_timesheet", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..d185cbc88e5 --- /dev/null +++ b/openupgrade_scripts/scripts/sale_timesheet/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,33 @@ +---Models in module 'sale_timesheet'--- +---Fields in module 'sale_timesheet'--- +sale_timesheet / account.analytic.line / order_id (many2one) : module is now 'sale' ('sale_timesheet') +sale_timesheet / account.analytic.line / product_id (False) : NEW mode: modify, hasdefault: compute +sale_timesheet / account.analytic.line / so_line (False) : DEL mode: modify +sale_timesheet / account.analytic.line / timesheet_invoice_id (many2one): DEL relation: account.move +sale_timesheet / account.analytic.line / timesheet_invoice_type (selection): DEL selection_keys: ['billable_fixed', 'billable_manual', 'billable_milestones', 'billable_time', 'non_billable', 'other_costs', 'other_revenues', 'service_revenues', 'timesheet_revenues'] +---XML records in module 'sale_timesheet'--- +NEW ir.access: sale_timesheet.access_project_sale_line_employee_map +NEW ir.access: sale_timesheet.access_project_sale_line_employee_map_manager +NEW ir.access: sale_timesheet.account_analytic_line_rule_billing_user +NEW ir.access: sale_timesheet.account_analytic_line_rule_readonly_user +ir.actions.act_window: sale_timesheet.action_timesheet_from_invoice (deleted domain) +ir.actions.act_window: sale_timesheet.timesheet_action_billing_report (deleted domain) +ir.actions.act_window: sale_timesheet.timesheet_action_from_plan (deleted domain) +ir.actions.act_window: sale_timesheet.timesheet_action_from_sales_order (deleted domain) +ir.actions.act_window: sale_timesheet.timesheet_action_from_sales_order_item (deleted domain) +ir.actions.act_window: sale_timesheet.timesheet_action_plan_pivot (deleted domain) +DEL ir.model.access: sale_timesheet.access_project_sale_line_employee_map +DEL ir.model.access: sale_timesheet.access_project_sale_line_employee_map_manager +ir.model.constraint: sale_timesheet.constraint_project_sale_line_employee_map_uniqueness_employee (changed definition: is now 'False' ('UNIQUE(project_id,employee_id)')) +NEW ir.ui.view: sale_timesheet.account_analytic_line_view_search +NEW ir.ui.view: sale_timesheet.hr_timesheet_line_search +NEW ir.ui.view: sale_timesheet.portal_timesheet_table_with_total_inherit +NEW ir.ui.view: sale_timesheet.project_project_view_card_inherit_sale_timesheet +NEW ir.ui.view: sale_timesheet.project_project_view_card_inherit_sale_timesheet_so_button +NEW ir.ui.view: sale_timesheet.report_timesheet_sale_timesheet +NEW ir.ui.view: sale_timesheet.view_task_form2_inherit_sale_timesheet +DEL ir.ui.view: sale_timesheet.project_project_view_kanban_inherit_sale_timesheet +DEL ir.ui.view: sale_timesheet.project_project_view_kanban_inherit_sale_timesheet_so_button +DEL ir.ui.view: sale_timesheet.view_hr_timesheet_line_graph_invoice_employee +product.product: sale_timesheet.time_product (noupdate switched) +res.groups: base.group_user (noupdate switched) diff --git a/openupgrade_scripts/scripts/stock_sms/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/stock_sms/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..e6740473dcb --- /dev/null +++ b/openupgrade_scripts/scripts/stock_sms/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,8 @@ + + + + + {{ (object.company_id.name + ': Your order n° ' + object.origin + ' has been collected.' if object.origin else object.company_id.name + ': Your order has been collected.') if hasattr(object, 'delivery_type') and object.delivery_type == 'in_store' else (object.company_id.name + ': We are glad to inform you that your order n° ' + object.origin + ' has been shipped.' if object.origin else object.company_id.name + ': We are glad to inform you that your order has been shipped.') + (' Your tracking reference is ' + (object.carrier_tracking_ref) + '.' if hasattr(object, 'carrier_tracking_ref') and object.carrier_tracking_ref else '') }} + + + diff --git a/openupgrade_scripts/scripts/stock_sms/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/stock_sms/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..c7c244fd8f6 --- /dev/null +++ b/openupgrade_scripts/scripts/stock_sms/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "stock_sms", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "stock_sms", + ["sms_template_data_stock_delivery"], + ["body"], + ) diff --git a/openupgrade_scripts/scripts/stock_sms/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/stock_sms/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..9c142cc26ae --- /dev/null +++ b/openupgrade_scripts/scripts/stock_sms/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,10 @@ +---Models in module 'stock_sms'--- +---Fields in module 'stock_sms'--- +---XML records in module 'stock_sms'--- +NEW ir.access: stock_sms.access_confirm_stock_sms +NEW ir.access: stock_sms.access_sms_template_stock_manager +NEW ir.access: stock_sms.ir_rule_sms_template_stock_manager +DEL ir.model.access: stock_sms.access_confirm_stock_sms +DEL ir.model.access: stock_sms.access_sms_template_stock_manager +DEL ir.rule: stock_sms.ir_rule_sms_template_stock_manager (noupdate) +sms.template: stock_sms.sms_template_data_stock_delivery (noupdate switched) diff --git a/openupgrade_scripts/scripts/stock_sms/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/stock_sms/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..d949a309569 --- /dev/null +++ b/openupgrade_scripts/scripts/stock_sms/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,12 @@ +---Models in module 'stock_sms'--- +---Fields in module 'stock_sms'--- +---XML records in module 'stock_sms'--- +NEW ir.access: stock_sms.access_confirm_stock_sms +NEW ir.access: stock_sms.access_sms_template_stock_manager +NEW ir.access: stock_sms.ir_rule_sms_template_stock_manager +DEL ir.model.access: stock_sms.access_confirm_stock_sms +DEL ir.model.access: stock_sms.access_sms_template_stock_manager +DEL ir.rule: stock_sms.ir_rule_sms_template_stock_manager (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +sms.template: stock_sms.sms_template_data_stock_delivery (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/uom/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/uom/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..8e93a999de3 --- /dev/null +++ b/openupgrade_scripts/scripts/uom/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + t + + diff --git a/openupgrade_scripts/scripts/uom/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/uom/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..e3031c3a8de --- /dev/null +++ b/openupgrade_scripts/scripts/uom/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "uom", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "uom", + ["product_uom_ton"], + ["name"], + ) diff --git a/openupgrade_scripts/scripts/uom/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/uom/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..54ac20e9f22 --- /dev/null +++ b/openupgrade_scripts/scripts/uom/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,45 @@ +---Models in module 'uom'--- +---Fields in module 'uom'--- +---XML records in module 'uom'--- +decimal.precision: uom.decimal_product_uom (noupdate switched) +NEW ir.access: uom.access_uom_uom_manager +NEW ir.access: uom.access_uom_uom_user +NEW ir.actions.act_window: uom.uom_uom_action_list +DEL ir.actions.act_window: uom.product_uom_form_action +DEL ir.model.access: uom.access_uom_uom_manager +DEL ir.model.access: uom.access_uom_uom_user +ir.model.constraint: uom.constraint_uom_uom_factor_gt_zero (changed definition: is now 'False' ('CHECK (relative_factor!=0)')) +NEW ir.ui.view: uom.uom_uom_view_form +NEW ir.ui.view: uom.uom_uom_view_list +DEL ir.ui.view: uom.product_uom_form_view +DEL ir.ui.view: uom.product_uom_tree_view +uom.uom: uom.product_uom_cm (noupdate switched) +uom.uom: uom.product_uom_cubic_foot (noupdate switched) +uom.uom: uom.product_uom_cubic_inch (noupdate switched) +uom.uom: uom.product_uom_cubic_meter (noupdate switched) +uom.uom: uom.product_uom_day (noupdate switched) +uom.uom: uom.product_uom_dozen (noupdate switched) +uom.uom: uom.product_uom_floz (noupdate switched) +uom.uom: uom.product_uom_foot (noupdate switched) +uom.uom: uom.product_uom_gal (noupdate switched) +uom.uom: uom.product_uom_gram (noupdate switched) +uom.uom: uom.product_uom_hour (noupdate switched) +uom.uom: uom.product_uom_inch (noupdate switched) +uom.uom: uom.product_uom_kgm (noupdate switched) +uom.uom: uom.product_uom_km (noupdate switched) +uom.uom: uom.product_uom_kwh (noupdate switched) +uom.uom: uom.product_uom_lb (noupdate switched) +uom.uom: uom.product_uom_litre (noupdate switched) +uom.uom: uom.product_uom_meter (noupdate switched) +uom.uom: uom.product_uom_mile (noupdate switched) +uom.uom: uom.product_uom_milliliter (noupdate switched) +uom.uom: uom.product_uom_millimeter (noupdate switched) +uom.uom: uom.product_uom_minute (noupdate switched) +uom.uom: uom.product_uom_oz (noupdate switched) +uom.uom: uom.product_uom_pack_6 (noupdate switched) +uom.uom: uom.product_uom_qt (noupdate switched) +uom.uom: uom.product_uom_square_foot (noupdate switched) +uom.uom: uom.product_uom_square_meter (noupdate switched) +uom.uom: uom.product_uom_ton (noupdate switched) +uom.uom: uom.product_uom_unit (noupdate switched) +uom.uom: uom.product_uom_yard (noupdate switched) diff --git a/openupgrade_scripts/scripts/uom/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/uom/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..bcba398fe9d --- /dev/null +++ b/openupgrade_scripts/scripts/uom/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,56 @@ +---Models in module 'uom'--- +---Fields in module 'uom'--- +---XML records in module 'uom'--- +decimal.precision: uom.decimal_product_uom (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +NEW ir.access: uom.access_uom_uom_manager +NEW ir.access: uom.access_uom_uom_user +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +NEW ir.actions.act_window: uom.uom_uom_action_list +# NOTHING TO DO: the record is not noupdate, so the module update creates it +DEL ir.actions.act_window: uom.product_uom_form_action +# NOTHING TO DO: the record is not noupdate, so the module update removes it +DEL ir.model.access: uom.access_uom_uom_manager +DEL ir.model.access: uom.access_uom_uom_user +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.model.constraint: uom.constraint_uom_uom_factor_gt_zero (changed definition: is now 'False' ('CHECK (relative_factor!=0)')) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites it +NEW ir.ui.view: uom.uom_uom_view_form +NEW ir.ui.view: uom.uom_uom_view_list +# NOTHING TO DO: the record is not noupdate, so the module update creates it +DEL ir.ui.view: uom.product_uom_form_view +DEL ir.ui.view: uom.product_uom_tree_view +# NOTHING TO DO: the record is not noupdate, so the module update removes it +uom.uom: uom.product_uom_cm (noupdate switched) +uom.uom: uom.product_uom_cubic_foot (noupdate switched) +uom.uom: uom.product_uom_cubic_inch (noupdate switched) +uom.uom: uom.product_uom_cubic_meter (noupdate switched) +uom.uom: uom.product_uom_day (noupdate switched) +uom.uom: uom.product_uom_dozen (noupdate switched) +uom.uom: uom.product_uom_floz (noupdate switched) +uom.uom: uom.product_uom_foot (noupdate switched) +uom.uom: uom.product_uom_gal (noupdate switched) +uom.uom: uom.product_uom_gram (noupdate switched) +uom.uom: uom.product_uom_hour (noupdate switched) +uom.uom: uom.product_uom_inch (noupdate switched) +uom.uom: uom.product_uom_kgm (noupdate switched) +uom.uom: uom.product_uom_km (noupdate switched) +uom.uom: uom.product_uom_kwh (noupdate switched) +uom.uom: uom.product_uom_lb (noupdate switched) +uom.uom: uom.product_uom_litre (noupdate switched) +uom.uom: uom.product_uom_meter (noupdate switched) +uom.uom: uom.product_uom_mile (noupdate switched) +uom.uom: uom.product_uom_milliliter (noupdate switched) +uom.uom: uom.product_uom_millimeter (noupdate switched) +uom.uom: uom.product_uom_minute (noupdate switched) +uom.uom: uom.product_uom_oz (noupdate switched) +uom.uom: uom.product_uom_pack_6 (noupdate switched) +uom.uom: uom.product_uom_qt (noupdate switched) +uom.uom: uom.product_uom_square_foot (noupdate switched) +uom.uom: uom.product_uom_square_meter (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same +uom.uom: uom.product_uom_ton (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml +uom.uom: uom.product_uom_unit (noupdate switched) +uom.uom: uom.product_uom_yard (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same diff --git a/openupgrade_scripts/scripts/utm/20.0.1.2/noupdate_changes.xml b/openupgrade_scripts/scripts/utm/20.0.1.2/noupdate_changes.xml new file mode 100644 index 00000000000..b5a99f5674f --- /dev/null +++ b/openupgrade_scripts/scripts/utm/20.0.1.2/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + Mass Mailing + + diff --git a/openupgrade_scripts/scripts/utm/20.0.1.2/post-migration.py b/openupgrade_scripts/scripts/utm/20.0.1.2/post-migration.py new file mode 100644 index 00000000000..939081f2951 --- /dev/null +++ b/openupgrade_scripts/scripts/utm/20.0.1.2/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "utm", "20.0.1.2/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/utm/20.0.1.2/upgrade_analysis.txt b/openupgrade_scripts/scripts/utm/20.0.1.2/upgrade_analysis.txt new file mode 100644 index 00000000000..cb9388ea142 --- /dev/null +++ b/openupgrade_scripts/scripts/utm/20.0.1.2/upgrade_analysis.txt @@ -0,0 +1,55 @@ +---Models in module 'utm'--- +obsolete model utm.source.mixin [abstract] +---Fields in module 'utm'--- +---XML records in module 'utm'--- +NEW ir.access: utm.access_utm_campaign_system +NEW ir.access: utm.access_utm_campaign_user +NEW ir.access: utm.access_utm_medium_system +NEW ir.access: utm.access_utm_medium_user +NEW ir.access: utm.access_utm_source_system +NEW ir.access: utm.access_utm_source_user +NEW ir.access: utm.access_utm_stage_system +NEW ir.access: utm.access_utm_stage_user +NEW ir.access: utm.access_utm_tag_system +NEW ir.access: utm.access_utm_tag_user +DEL ir.model.access: utm.access_utm_campaign_system +DEL ir.model.access: utm.access_utm_campaign_user +DEL ir.model.access: utm.access_utm_medium_system +DEL ir.model.access: utm.access_utm_medium_user +DEL ir.model.access: utm.access_utm_source_system +DEL ir.model.access: utm.access_utm_source_user +DEL ir.model.access: utm.access_utm_stage_system +DEL ir.model.access: utm.access_utm_stage_user +DEL ir.model.access: utm.access_utm_tag_system +DEL ir.model.access: utm.access_utm_tag_user +ir.model.constraint: utm.constraint_utm_campaign_unique_name (changed definition: is now 'False' ('UNIQUE(name)')) +ir.model.constraint: utm.constraint_utm_medium_unique_name (changed definition: is now 'False' ('UNIQUE(name)')) +ir.model.constraint: utm.constraint_utm_source_unique_name (changed definition: is now 'False' ('UNIQUE(name)')) +ir.model.constraint: utm.constraint_utm_tag_name_uniq (changed definition: is now 'False' ('unique (name)')) +utm.medium: utm.utm_medium_direct (noupdate switched) +utm.medium: utm.utm_medium_email (noupdate switched) +NEW utm.medium: utm.utm_medium_messaging +utm.medium: utm.utm_medium_phone (noupdate switched) +NEW utm.medium: utm.utm_medium_social_media +utm.medium: utm.utm_medium_website (noupdate switched) +DEL utm.medium: utm.utm_medium_banner (noupdate) +DEL utm.medium: utm.utm_medium_facebook (noupdate) +DEL utm.medium: utm.utm_medium_google_adwords (noupdate) +DEL utm.medium: utm.utm_medium_linkedin (noupdate) +DEL utm.medium: utm.utm_medium_television (noupdate) +DEL utm.medium: utm.utm_medium_twitter (noupdate) +utm.source: utm.utm_source_craigslist (noupdate switched) +utm.source: utm.utm_source_facebook (noupdate switched) +utm.source: utm.utm_source_glassdoor (noupdate switched) +NEW utm.source: utm.utm_source_google +NEW utm.source: utm.utm_source_instagram +utm.source: utm.utm_source_linkedin (noupdate switched) +NEW utm.source: utm.utm_source_livechat [renamed from crm_livechat module] (noupdate switched) +utm.source: utm.utm_source_mailing (noupdate switched) +utm.source: utm.utm_source_monster (noupdate switched) +utm.source: utm.utm_source_newsletter (noupdate switched) +utm.source: utm.utm_source_referral (noupdate switched) +NEW utm.source: utm.utm_source_survey +utm.source: utm.utm_source_twitter (noupdate switched) +NEW utm.source: utm.utm_source_youtube +DEL utm.source: utm.utm_source_search_engine (noupdate) diff --git a/openupgrade_scripts/scripts/website/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/website/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..757c161f744 --- /dev/null +++ b/openupgrade_scripts/scripts/website/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,17 @@ + + + + + + + True + True + + + + + + + + + diff --git a/openupgrade_scripts/scripts/website/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/website/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..f43be8ad3e1 --- /dev/null +++ b/openupgrade_scripts/scripts/website/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "website", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/website/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/website/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..ac725baef20 --- /dev/null +++ b/openupgrade_scripts/scripts/website/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,456 @@ +---Models in module 'website'--- +model website (moved to base) +new model website.llms [transient] +new model website.located.mixin [abstract] +new model website.structured_data.mixin [abstract] +new model website.trackable.mixin [abstract] +---Fields in module 'website'--- +website / digest.digest / kpi_website_track_count (boolean): NEW +website / digest.digest / kpi_website_visitor_count (boolean): NEW +website / ir.ui.view / visibility (selection) : now required +website / ir.ui.view / visibility (selection) : selection_keys added: [public], removed: [] +website / res.partner / publish_on (datetime) : NEW +website / res.partner / published_date (datetime) : NEW +website / theme.website.page / breadcrumb_color (char) : NEW +website / theme.website.page / breadcrumb_overlay (boolean) : NEW +website / theme.website.page / breadcrumb_text_color (char) : NEW +website / theme.website.page / breadcrumb_visible (boolean) : NEW hasdefault: default +website / theme.website.page / url (char) : now translatable +website / website / _order : module is now 'base' ('website') +website / website / company_id (many2one) : module is now 'base' ('website') +website / website / cookie_policy_id (many2one) : NEW relation: website.page +website / website / display_name (char) : module is now 'base' ('website') +website / website / domain (char) : module is now 'base' ('website') +website / website / domain_punycode (char) : module is now 'base' ('website') +website / website / header_search_limit (integer) : NEW hasdefault: default +website / website / header_search_order_by (char) : NEW required, hasdefault: default +website / website / header_search_type (char) : NEW required, hasdefault: default +website / website / llms_txt (text) : NEW +website / website / name (char) : module is now 'base' ('website') +website / website / sequence (integer) : module is now 'base' ('website') +website / website / social_discord (char) : DEL +website / website / social_facebook (char) : DEL +website / website / social_github (char) : DEL +website / website / social_instagram (char) : DEL +website / website / social_linkedin (char) : DEL +website / website / social_tiktok (char) : DEL +website / website / social_twitter (char) : DEL +website / website / social_youtube (char) : DEL +website / website / user_id (many2one) : module is now 'base' ('website') +website / website.configurator.feature / icon_class (char) : NEW +website / website.controller.page / publish_on (datetime) : NEW +website / website.controller.page / published_date (datetime) : NEW +website / website.controller.page / visibility (selection) : now required +website / website.menu / manual_url (char) : NEW +website / website.menu / url (char) : not stored anymore +website / website.menu / url (char) : now a function +website / website.page / breadcrumb_color (char) : NEW +website / website.page / breadcrumb_overlay (boolean) : NEW +website / website.page / breadcrumb_text_color (char) : NEW +website / website.page / breadcrumb_visible (boolean) : NEW hasdefault: default +website / website.page / date_publish (datetime) : DEL +website / website.page / name (char) : is now stored +website / website.page / name (char) : not related anymore +website / website.page / name (char) : now a function +website / website.page / name (char) : now translatable +website / website.page / parent_id (many2one) : NEW relation: website.page +website / website.page / publish_on (datetime) : NEW +website / website.page / published_date (datetime) : NEW +website / website.page / url (char) : now translatable +website / website.page / visibility (selection) : now required +website / website.rewrite / redirect_type (selection) : now required +website / website.rewrite / url_from (char) : now required +website / website.snippet.filter / publish_on (datetime) : NEW +website / website.snippet.filter / published_date (datetime) : NEW +website / website.track / _order : _order is now 'visit_datetime DESC, id DESC' ('visit_datetime DESC') +---XML records in module 'website'--- +NEW ir.access: website.access_portal_entry +NEW ir.access: website.access_seo_designer +NEW ir.access: website.access_seo_public_public +NEW ir.access: website.access_theme_ir_asset_group_system +NEW ir.access: website.access_theme_ir_attachment +NEW ir.access: website.access_theme_ir_ui_view +NEW ir.access: website.access_theme_website_menu +NEW ir.access: website.access_theme_website_page +NEW ir.access: website.access_website_configurator_feature_designer +NEW ir.access: website.access_website_custom_blocked_third_party_domains +NEW ir.access: website.access_website_designer +NEW ir.access: website.access_website_dynamic_filter_system +NEW ir.access: website.access_website_ir_asset_designer +NEW ir.access: website.access_website_llms +NEW ir.access: website.access_website_menu_designer +NEW ir.access: website.access_website_menu_public +NEW ir.access: website.access_website_page_designer +NEW ir.access: website.access_website_page_properties_base_designer +NEW ir.access: website.access_website_page_properties_base_employee +NEW ir.access: website.access_website_page_properties_designer +NEW ir.access: website.access_website_page_properties_employee +NEW ir.access: website.access_website_rewrite_designer +NEW ir.access: website.access_website_robots +NEW ir.access: website.access_website_route_designer +NEW ir.access: website.access_website_technical_page +NEW ir.access: website.access_website_track_designer +NEW ir.access: website.access_website_visitor_designer +NEW ir.access: website.website_designer_edit_qweb +NEW ir.access: website.website_designer_view +NEW ir.access: website.website_group_system_edit_all_views +NEW ir.access: website.website_menu +NEW ir.access: website.website_page_controller_rule_designer +NEW ir.access: website.website_page_controller_rule_public +ir.actions.act_window: base.open_module_tree (deleted domain) +ir.actions.act_window: website.action_website_add_features (deleted domain) +ir.actions.act_window: website.theme_install_kanban_action (deleted domain) +ir.actions.act_window: website.visitor_partner_action (deleted domain) +ir.actions.act_window: website.website_visitor_page_action (deleted domain) +NEW ir.asset: website.s_age_verification_popup_001_scss +NEW ir.asset: website.s_animated_cover_000_scss +NEW ir.asset: website.s_avatars_000_scss +NEW ir.asset: website.s_bento_features_000_scss +NEW ir.asset: website.s_bento_grid_000_scss +NEW ir.asset: website.s_bento_grid_avatars_000_scss +NEW ir.asset: website.s_countdown_000_scss +NEW ir.asset: website.s_countdown_001_scss +NEW ir.asset: website.s_icon_list_000_scss +NEW ir.asset: website.s_mega_menu_dropzone_000_scss +NEW ir.asset: website.s_references_tiles_000_scss +NEW ir.asset: website.s_splash_intro_000_scss +NEW ir.asset: website.s_whatsapp_000_scss +NEW ir.asset: website.s_whatsapp_chatbox_xml +DEL ir.asset: website.s_image_gallery_000_xml +DEL ir.asset: website.s_image_gallery_001_xml +NEW ir.attachment: website.landscape_md_1 +NEW ir.attachment: website.landscape_md_2 +NEW ir.attachment: website.landscape_md_3 +NEW ir.attachment: website.landscape_md_4 +NEW ir.attachment: website.landscape_md_5 +NEW ir.attachment: website.landscape_md_6 +NEW ir.attachment: website.landscape_md_7 +NEW ir.attachment: website.landscape_md_8 +NEW ir.attachment: website.landscape_md_9 +NEW ir.attachment: website.landscape_xl_1 +NEW ir.attachment: website.landscape_xl_2 +NEW ir.attachment: website.landscape_xl_3 +NEW ir.attachment: website.portrait_lg_1 +NEW ir.attachment: website.portrait_lg_2 +NEW ir.attachment: website.portrait_lg_3 +NEW ir.attachment: website.s_launch_countdown_default_image +NEW ir.attachment: website.s_newsletter_aside_default_image +NEW ir.attachment: website.s_splash_intro_default_image +NEW ir.attachment: website.set_1_landscape_md_1 +NEW ir.attachment: website.set_1_landscape_md_2 +NEW ir.attachment: website.set_1_landscape_md_3 +NEW ir.attachment: website.set_2_square_md_1 +NEW ir.attachment: website.set_2_square_md_2 +NEW ir.attachment: website.set_2_square_md_3 +NEW ir.attachment: website.set_2_square_md_4 +NEW ir.attachment: website.set_2_square_md_5 +NEW ir.attachment: website.set_2_square_md_6 +NEW ir.attachment: website.set_2_square_md_7 +NEW ir.attachment: website.set_avatars_square_md_1 +NEW ir.attachment: website.set_avatars_square_md_2 +NEW ir.attachment: website.set_avatars_square_md_3 +NEW ir.attachment: website.set_avatars_square_md_4 +NEW ir.attachment: website.set_avatars_square_md_5 +NEW ir.attachment: website.set_avatars_square_md_6 +NEW ir.attachment: website.set_catalog_landscape_lg_1 +NEW ir.attachment: website.set_catalog_landscape_lg_2 +NEW ir.attachment: website.set_catalog_landscape_lg_3 +NEW ir.attachment: website.set_catalog_landscape_lg_4 +NEW ir.attachment: website.set_catalog_portrait_md_1 +NEW ir.attachment: website.set_catalog_square_md_1 +NEW ir.attachment: website.set_catalog_square_md_2 +NEW ir.attachment: website.set_catalog_square_md_3 +NEW ir.attachment: website.set_catalog_square_md_4 +NEW ir.attachment: website.set_catalog_square_md_5 +NEW ir.attachment: website.set_catalog_square_md_6 +NEW ir.attachment: website.set_doers_portrait_lg_1 +NEW ir.attachment: website.set_ui_landscape_xl_1 +NEW ir.attachment: website.ultrawide_lg_1 +NEW ir.attachment: website.ultrawide_lg_2 +NEW ir.attachment: website.ultrawide_lg_3 +NEW ir.attachment: website.ultrawide_lg_4 +NEW ir.attachment: website.ultrawide_lg_5 +NEW ir.attachment: website.ultrawide_lg_6 +NEW ir.cron: website.ir_cron_publish_scheduled_pages +DEL ir.model.access: website.access_seo_designer +DEL ir.model.access: website.access_seo_public_employee +DEL ir.model.access: website.access_seo_public_portal +DEL ir.model.access: website.access_seo_public_public +DEL ir.model.access: website.access_theme_ir_asset_group_system +DEL ir.model.access: website.access_theme_ir_attachment +DEL ir.model.access: website.access_theme_ir_ui_view +DEL ir.model.access: website.access_theme_website_menu +DEL ir.model.access: website.access_theme_website_page +DEL ir.model.access: website.access_website_configurator_feature_designer +DEL ir.model.access: website.access_website_controller_page_designer +DEL ir.model.access: website.access_website_controller_page_public +DEL ir.model.access: website.access_website_custom_blocked_third_party_domains +DEL ir.model.access: website.access_website_designer +DEL ir.model.access: website.access_website_dynamic_filter_public +DEL ir.model.access: website.access_website_dynamic_filter_system +DEL ir.model.access: website.access_website_ir_asset_designer +DEL ir.model.access: website.access_website_ir_ui_view_designer +DEL ir.model.access: website.access_website_ir_ui_view_restricted_editor +DEL ir.model.access: website.access_website_menu_designer +DEL ir.model.access: website.access_website_menu_employee +DEL ir.model.access: website.access_website_menu_portal +DEL ir.model.access: website.access_website_menu_public +DEL ir.model.access: website.access_website_page_designer +DEL ir.model.access: website.access_website_page_properties_base_designer +DEL ir.model.access: website.access_website_page_properties_base_employee +DEL ir.model.access: website.access_website_page_properties_base_portal +DEL ir.model.access: website.access_website_page_properties_base_public +DEL ir.model.access: website.access_website_page_properties_designer +DEL ir.model.access: website.access_website_page_properties_employee +DEL ir.model.access: website.access_website_page_properties_portal +DEL ir.model.access: website.access_website_page_properties_public +DEL ir.model.access: website.access_website_public_employee +DEL ir.model.access: website.access_website_public_portal +DEL ir.model.access: website.access_website_public_public +DEL ir.model.access: website.access_website_rewrite +DEL ir.model.access: website.access_website_rewrite_designer +DEL ir.model.access: website.access_website_robots +DEL ir.model.access: website.access_website_route_designer +DEL ir.model.access: website.access_website_technical_page +DEL ir.model.access: website.access_website_track_designer +DEL ir.model.access: website.access_website_track_system +DEL ir.model.access: website.access_website_visitor_designer +DEL ir.model.access: website.access_website_visitor_system +ir.model.constraint: website.constraint_res_users_login_key (changed definition: is now 'False' ('unique (login, website_id)')) +ir.model.constraint: website.constraint_website_controller_page_unique_name_slugified (changed definition: is now 'False' ('UNIQUE(name_slugified)')) +ir.model.constraint: website.constraint_website_visitor_access_token_unique (changed definition: is now 'False' ('unique(access_token)')) +DEL ir.model.constraint: website.constraint_website_domain_unique [renamed to base module] +DEL ir.rule: website.view_rule_visibility_connected (noupdate) +DEL ir.rule: website.view_rule_visibility_public (noupdate) +DEL ir.rule: website.website_designer_edit_qweb (noupdate) +DEL ir.rule: website.website_designer_view (noupdate) +DEL ir.rule: website.website_group_system_edit_all_views (noupdate) +DEL ir.rule: website.website_menu (noupdate) +DEL ir.rule: website.website_page_controller_rule_public +DEL ir.rule: website.website_page_rule_public (noupdate) +NEW ir.ui.view: website.400_hide_error +NEW ir.ui.view: website.403_hide_error +NEW ir.ui.view: website.415_hide_error +NEW ir.ui.view: website.422_hide_error +NEW ir.ui.view: website.4xx_hide_error +NEW ir.ui.view: website.digest_digest_view_form +NEW ir.ui.view: website.font_links +NEW ir.ui.view: website.footer_cookie_policy_link +NEW ir.ui.view: website.icons_fonts_preload +NEW ir.ui.view: website.new_page_template_about_us_s_company_team_spotlight +NEW ir.ui.view: website.new_page_template_about_us_s_title_split +NEW ir.ui.view: website.new_page_template_contact_us_s_duo_images +NEW ir.ui.view: website.new_page_template_portfolio_s_announcement_scroll +NEW ir.ui.view: website.new_page_template_portfolio_s_projects_grid_minimal +NEW ir.ui.view: website.new_page_template_portfolio_s_timeline_images +NEW ir.ui.view: website.new_page_template_portfolio_s_title +NEW ir.ui.view: website.new_page_template_portfolio_s_title_split +NEW ir.ui.view: website.new_page_template_s_announcement_scroll +NEW ir.ui.view: website.new_page_template_s_company_team_spotlight +NEW ir.ui.view: website.new_page_template_s_duo_images +NEW ir.ui.view: website.new_page_template_s_projects_grid_minimal +NEW ir.ui.view: website.new_page_template_s_timeline_images +NEW ir.ui.view: website.new_page_template_s_title +NEW ir.ui.view: website.new_page_template_s_title_split +NEW ir.ui.view: website.new_page_template_services_s_title_split +NEW ir.ui.view: website.new_page_template_utility_0_s_title_split +NEW ir.ui.view: website.new_page_template_utility_1_s_title_split +NEW ir.ui.view: website.new_page_template_utility_s_title_split +NEW ir.ui.view: website.option_header_disclaimer +NEW ir.ui.view: website.placeholder_header_disclaimer +NEW ir.ui.view: website.s_about_bold +NEW ir.ui.view: website.s_achievements_list +NEW ir.ui.view: website.s_achievements_list_item +NEW ir.ui.view: website.s_age_verification_popup +NEW ir.ui.view: website.s_animated_cover +NEW ir.ui.view: website.s_animated_number +NEW ir.ui.view: website.s_avatars +NEW ir.ui.view: website.s_awards_list +NEW ir.ui.view: website.s_banner_contained +NEW ir.ui.view: website.s_banner_glow +NEW ir.ui.view: website.s_bento_features +NEW ir.ui.view: website.s_bento_grid_avatars +NEW ir.ui.view: website.s_chart_text +NEW ir.ui.view: website.s_countdown_big_numbers_template +NEW ir.ui.view: website.s_countdown_bordered_text_template +NEW ir.ui.view: website.s_countdown_circle_template +NEW ir.ui.view: website.s_countdown_dominoes_template +NEW ir.ui.view: website.s_countdown_text_template +NEW ir.ui.view: website.s_countdown_wrapped_numbers_template +NEW ir.ui.view: website.s_cta_centered +NEW ir.ui.view: website.s_duo_images +NEW ir.ui.view: website.s_dynamic_snippet_carousel_preview_data +NEW ir.ui.view: website.s_faq_collapse_centered +NEW ir.ui.view: website.s_features_cards +NEW ir.ui.view: website.s_features_image +NEW ir.ui.view: website.s_hero_about +NEW ir.ui.view: website.s_hero_maintenance +NEW ir.ui.view: website.s_hero_minimalist +NEW ir.ui.view: website.s_hours_and_place +NEW ir.ui.view: website.s_icon +NEW ir.ui.view: website.s_icon_list +NEW ir.ui.view: website.s_image_features +NEW ir.ui.view: website.s_image_text_full +NEW ir.ui.view: website.s_intro_spotlight +NEW ir.ui.view: website.s_launch_countdown +NEW ir.ui.view: website.s_manifesto +NEW ir.ui.view: website.s_masonry_block_quad_template +NEW ir.ui.view: website.s_mega_menu_dropzone +NEW ir.ui.view: website.s_numbers_inline +NEW ir.ui.view: website.s_numbers_lite +NEW ir.ui.view: website.s_opening_hours_alt +NEW ir.ui.view: website.s_projects_grid +NEW ir.ui.view: website.s_projects_grid_minimal +NEW ir.ui.view: website.s_projects_list +NEW ir.ui.view: website.s_references_columns +NEW ir.ui.view: website.s_references_lite +NEW ir.ui.view: website.s_references_tiles +NEW ir.ui.view: website.s_services_grid +NEW ir.ui.view: website.s_services_pack +NEW ir.ui.view: website.s_showcase_square +NEW ir.ui.view: website.s_splash_intro +NEW ir.ui.view: website.s_text_block_split +NEW ir.ui.view: website.s_text_bold +NEW ir.ui.view: website.s_text_chart +NEW ir.ui.view: website.s_text_image_full +NEW ir.ui.view: website.s_title_split +NEW ir.ui.view: website.s_website_form_bold +NEW ir.ui.view: website.s_whatsapp +NEW ir.ui.view: website.search_image_item_view +NEW ir.ui.view: website.search_result_items +NEW ir.ui.view: website.search_tags_highlight +NEW ir.ui.view: website.theme_colors_preview +NEW ir.ui.view: website.unpublished_badge +NEW ir.ui.view: website.view_edit_llms +DEL ir.ui.view: website.header_search_box_input +DEL ir.ui.view: website.new_page_template_about_full_1_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_about_full_1_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_about_full_s_image_text +DEL ir.ui.view: website.new_page_template_about_full_s_numbers +DEL ir.ui.view: website.new_page_template_about_full_s_text_image +DEL ir.ui.view: website.new_page_template_about_map_s_text_block_2nd +DEL ir.ui.view: website.new_page_template_about_map_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_about_map_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_about_mini_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_about_personal_s_image_text +DEL ir.ui.view: website.new_page_template_about_personal_s_numbers +DEL ir.ui.view: website.new_page_template_about_personal_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_about_s_banner +DEL ir.ui.view: website.new_page_template_about_s_company_team +DEL ir.ui.view: website.new_page_template_about_s_cover +DEL ir.ui.view: website.new_page_template_about_s_features +DEL ir.ui.view: website.new_page_template_about_s_image_text +DEL ir.ui.view: website.new_page_template_about_s_numbers +DEL ir.ui.view: website.new_page_template_about_s_picture +DEL ir.ui.view: website.new_page_template_about_s_text_block_2nd +DEL ir.ui.view: website.new_page_template_about_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_about_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_about_s_text_cover +DEL ir.ui.view: website.new_page_template_about_s_text_image +DEL ir.ui.view: website.new_page_template_about_s_three_columns +DEL ir.ui.view: website.new_page_template_about_timeline_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_basic_2_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_basic_s_picture +DEL ir.ui.view: website.new_page_template_basic_s_quotes_carousel +DEL ir.ui.view: website.new_page_template_basic_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_basic_s_text_cover +DEL ir.ui.view: website.new_page_template_gallery_s_banner +DEL ir.ui.view: website.new_page_template_gallery_s_image_text_2nd +DEL ir.ui.view: website.new_page_template_gallery_s_text_block_2nd +DEL ir.ui.view: website.new_page_template_gallery_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_landing_0_s_cover +DEL ir.ui.view: website.new_page_template_landing_1_s_banner +DEL ir.ui.view: website.new_page_template_landing_2_s_call_to_action +DEL ir.ui.view: website.new_page_template_landing_2_s_cover +DEL ir.ui.view: website.new_page_template_landing_2_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_landing_2_s_three_columns +DEL ir.ui.view: website.new_page_template_landing_3_s_call_to_action +DEL ir.ui.view: website.new_page_template_landing_3_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_landing_3_s_three_columns +DEL ir.ui.view: website.new_page_template_landing_4_s_cover +DEL ir.ui.view: website.new_page_template_landing_4_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_landing_5_s_banner +DEL ir.ui.view: website.new_page_template_landing_s_banner +DEL ir.ui.view: website.new_page_template_landing_s_call_to_action +DEL ir.ui.view: website.new_page_template_landing_s_color_blocks_2 +DEL ir.ui.view: website.new_page_template_landing_s_cover +DEL ir.ui.view: website.new_page_template_landing_s_features +DEL ir.ui.view: website.new_page_template_landing_s_showcase +DEL ir.ui.view: website.new_page_template_landing_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_landing_s_text_cover +DEL ir.ui.view: website.new_page_template_landing_s_text_image +DEL ir.ui.view: website.new_page_template_landing_s_three_columns +DEL ir.ui.view: website.new_page_template_pricing_5_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_pricing_s_image_text_2nd +DEL ir.ui.view: website.new_page_template_pricing_s_text_block_2nd +DEL ir.ui.view: website.new_page_template_pricing_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_pricing_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_s_banner +DEL ir.ui.view: website.new_page_template_s_call_to_action +DEL ir.ui.view: website.new_page_template_s_carousel +DEL ir.ui.view: website.new_page_template_s_color_blocks_2 +DEL ir.ui.view: website.new_page_template_s_company_team +DEL ir.ui.view: website.new_page_template_s_cover +DEL ir.ui.view: website.new_page_template_s_features +DEL ir.ui.view: website.new_page_template_s_image_gallery +DEL ir.ui.view: website.new_page_template_s_image_text +DEL ir.ui.view: website.new_page_template_s_image_text_2nd +DEL ir.ui.view: website.new_page_template_s_images_wall +DEL ir.ui.view: website.new_page_template_s_media_list +DEL ir.ui.view: website.new_page_template_s_numbers +DEL ir.ui.view: website.new_page_template_s_parallax +DEL ir.ui.view: website.new_page_template_s_picture +DEL ir.ui.view: website.new_page_template_s_quotes_carousel +DEL ir.ui.view: website.new_page_template_s_references +DEL ir.ui.view: website.new_page_template_s_showcase +DEL ir.ui.view: website.new_page_template_s_text_block_2nd +DEL ir.ui.view: website.new_page_template_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_s_text_cover +DEL ir.ui.view: website.new_page_template_s_text_image +DEL ir.ui.view: website.new_page_template_s_three_columns +DEL ir.ui.view: website.new_page_template_services_0_s_three_columns +DEL ir.ui.view: website.new_page_template_services_3_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_services_s_image_text +DEL ir.ui.view: website.new_page_template_services_s_image_text_2nd +DEL ir.ui.view: website.new_page_template_services_s_parallax +DEL ir.ui.view: website.new_page_template_services_s_text_block_2nd +DEL ir.ui.view: website.new_page_template_services_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_services_s_text_block_h2 +DEL ir.ui.view: website.new_page_template_services_s_text_cover +DEL ir.ui.view: website.new_page_template_services_s_text_image +DEL ir.ui.view: website.new_page_template_services_s_three_columns +DEL ir.ui.view: website.new_page_template_team_0_s_three_columns +DEL ir.ui.view: website.new_page_template_team_2_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_team_s_image_gallery +DEL ir.ui.view: website.new_page_template_team_s_image_text +DEL ir.ui.view: website.new_page_template_team_s_image_text_2nd +DEL ir.ui.view: website.new_page_template_team_s_images_wall +DEL ir.ui.view: website.new_page_template_team_s_media_list +DEL ir.ui.view: website.new_page_template_team_s_picture +DEL ir.ui.view: website.new_page_template_team_s_text_block_h1 +DEL ir.ui.view: website.new_page_template_team_s_text_image +DEL ir.ui.view: website.new_page_template_team_s_three_columns +DEL ir.ui.view: website.one_hybrid +DEL ir.ui.view: website.s_call_to_action_about +DEL ir.ui.view: website.s_call_to_action_digital +DEL ir.ui.view: website.s_call_to_action_menu +DEL ir.ui.view: website.s_image_text_2nd +DEL ir.ui.view: website.s_picture_only +DEL ir.ui.view: website.s_text_block_2nd +DEL ir.ui.view: website.s_text_block_h1 +DEL ir.ui.view: website.s_text_block_h2 +DEL ir.ui.view: website.s_text_block_h2_contact +DEL ir.ui.view: website.s_three_columns_2nd +DEL ir.ui.view: website.s_three_columns_menu +DEL website: website.default_website [renamed to base module] (noupdate) +DEL website.configurator.feature: website.feature_module_forum +DEL website.configurator.feature: website.feature_module_stores_locator +DEL website.configurator.feature: website.feature_module_success_stories +DEL website.configurator.feature: website.feature_page_privacy_policy +website.menu: website.main_menu (noupdate switched) +website.menu: website.menu_home (noupdate switched) +DEL website.menu: website.menu_contactus (noupdate) +website.page: website.contactus_page (noupdate switched) +website.page: website.homepage_page (noupdate switched) +NEW website.page: website.privacy_policy_page diff --git a/openupgrade_scripts/scripts/website_blog/20.0.1.1/noupdate_changes.xml b/openupgrade_scripts/scripts/website_blog/20.0.1.1/noupdate_changes.xml new file mode 100644 index 00000000000..c8a262e38fb --- /dev/null +++ b/openupgrade_scripts/scripts/website_blog/20.0.1.1/noupdate_changes.xml @@ -0,0 +1,14 @@ + + + + {"background-image": "url('/website_blog/static/src/img/cover_6.webp')", "resize_class": "o_record_has_cover o_half_screen_height", "opacity": "0.4", "background_color_class": "o_cc5"} + + + diff --git a/openupgrade_scripts/scripts/website_blog/20.0.1.1/post-migration.py b/openupgrade_scripts/scripts/website_blog/20.0.1.1/post-migration.py new file mode 100644 index 00000000000..22dc76ae81e --- /dev/null +++ b/openupgrade_scripts/scripts/website_blog/20.0.1.1/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "website_blog", "20.0.1.1/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/website_blog/20.0.1.1/upgrade_analysis.txt b/openupgrade_scripts/scripts/website_blog/20.0.1.1/upgrade_analysis.txt new file mode 100644 index 00000000000..8a42aa87228 --- /dev/null +++ b/openupgrade_scripts/scripts/website_blog/20.0.1.1/upgrade_analysis.txt @@ -0,0 +1,97 @@ +---Models in module 'website_blog'--- +---Fields in module 'website_blog'--- +website_blog / blog.blog / website_message_ids (one2many): DEL relation: mail.message +website_blog / blog.post / breadcrumb_visible (boolean) : NEW hasdefault: default +website_blog / blog.post / post_date (datetime) : DEL +website_blog / blog.post / publish_on (datetime) : NEW +website_blog / blog.post / recommended_next_post_id (many2one): NEW relation: blog.post +website_blog / blog.post / website_message_ids (one2many): DEL relation: mail.message +website_blog / res.partner / blog_post_ids (one2many) : NEW relation: blog.post +website_blog / website.track / blog_post_id (many2one) : NEW relation: blog.post +---XML records in module 'website_blog'--- +blog.blog: website_blog.blog_blog_1 (noupdate switched) +NEW ir.access: website_blog.blog_blog_employee +NEW ir.access: website_blog.blog_blog_manager +NEW ir.access: website_blog.blog_post_employee +NEW ir.access: website_blog.blog_post_manager +NEW ir.access: website_blog.blog_tag_category_manager +NEW ir.access: website_blog.blog_tag_category_public +NEW ir.access: website_blog.blog_tag_manager +NEW ir.access: website_blog.blog_tag_public +NEW ir.access: website_blog.website_blog_post_public +NEW ir.access: website_blog.website_blog_public +NEW ir.actions.act_window: website_blog.website_blog_visitor_blog_post_action +DEL ir.model.access: website_blog.blog_blog +DEL ir.model.access: website_blog.blog_blog_employee +DEL ir.model.access: website_blog.blog_blog_portal +DEL ir.model.access: website_blog.blog_blog_public +DEL ir.model.access: website_blog.blog_post +DEL ir.model.access: website_blog.blog_post_employee +DEL ir.model.access: website_blog.blog_post_portal +DEL ir.model.access: website_blog.blog_post_public +DEL ir.model.access: website_blog.blog_tag_category +DEL ir.model.access: website_blog.blog_tag_category_employee +DEL ir.model.access: website_blog.blog_tag_category_portal +DEL ir.model.access: website_blog.blog_tag_category_public +DEL ir.model.access: website_blog.blog_tag_edition +DEL ir.model.access: website_blog.blog_tag_employee +DEL ir.model.access: website_blog.blog_tag_portal +DEL ir.model.access: website_blog.blog_tag_public +ir.model.constraint: website_blog.constraint_blog_tag_category_name_uniq (changed definition: is now 'False' ('unique (name)')) +ir.model.constraint: website_blog.constraint_blog_tag_name_uniq (changed definition: is now 'False' ('unique (name)')) +DEL ir.rule: website_blog.website_blog_post_public (noupdate) +DEL ir.rule: website_blog.website_blog_public (noupdate) +NEW ir.ui.view: website_blog.blog_post_card +NEW ir.ui.view: website_blog.blog_post_comment_count +NEW ir.ui.view: website_blog.blog_post_content_footer_archive +NEW ir.ui.view: website_blog.blog_post_content_footer_share_links +NEW ir.ui.view: website_blog.blog_post_content_mobile_toc +NEW ir.ui.view: website_blog.blog_post_list_card +NEW ir.ui.view: website_blog.blog_post_minimal_list_card +NEW ir.ui.view: website_blog.blog_post_next_compact +NEW ir.ui.view: website_blog.blog_post_next_full_cover +NEW ir.ui.view: website_blog.blog_post_regular_cover_share_links +NEW ir.ui.view: website_blog.blog_post_split_cover_share_links +NEW ir.ui.view: website_blog.blog_post_split_sticky_card +ir.ui.view: website_blog.blog_post_template_new_post (noupdate switched) +NEW ir.ui.view: website_blog.opt_blog_bordered_grid_view +NEW ir.ui.view: website_blog.opt_blog_compact_list_view +NEW ir.ui.view: website_blog.opt_blog_fullwidth +NEW ir.ui.view: website_blog.opt_blog_grid_columns_2 +NEW ir.ui.view: website_blog.opt_blog_grid_columns_3 +NEW ir.ui.view: website_blog.opt_blog_grid_columns_4 +NEW ir.ui.view: website_blog.opt_blog_large_list_view +NEW ir.ui.view: website_blog.opt_blog_page_title +NEW ir.ui.view: website_blog.opt_blog_post_footer_share_links_display +NEW ir.ui.view: website_blog.opt_blog_post_footer_tags_display +NEW ir.ui.view: website_blog.opt_blog_post_full_container +NEW ir.ui.view: website_blog.opt_blog_post_full_width_cover +NEW ir.ui.view: website_blog.opt_blog_post_header_author_avatar_display +NEW ir.ui.view: website_blog.opt_blog_post_header_share_links_display +NEW ir.ui.view: website_blog.opt_blog_post_header_tags_display +NEW ir.ui.view: website_blog.opt_blog_post_large_container +NEW ir.ui.view: website_blog.opt_blog_post_split_cover +NEW ir.ui.view: website_blog.opt_blog_post_toc_display +NEW ir.ui.view: website_blog.opt_blog_promoted_post +NEW ir.ui.view: website_blog.opt_blog_simple_list_view +NEW ir.ui.view: website_blog.opt_blog_split_grid_view +NEW ir.ui.view: website_blog.opt_posts_loop_show_date +NEW ir.ui.view: website_blog.opt_posts_loop_show_filter +NEW ir.ui.view: website_blog.opt_posts_loop_show_tags +NEW ir.ui.view: website_blog.opt_sidebar_blog_index_about_us +NEW ir.ui.view: website_blog.post_published_info +NEW ir.ui.view: website_blog.post_tags +NEW ir.ui.view: website_blog.post_unpublished_badge +NEW ir.ui.view: website_blog.robots +NEW ir.ui.view: website_blog.s_blog_posts_carousel +NEW ir.ui.view: website_blog.s_blog_posts_carousel_preview_card +NEW ir.ui.view: website_blog.s_dynamic_snippet_blog_posts_carousel_preview_data +NEW ir.ui.view: website_blog.website_blog_visitor_page_view_search +NEW ir.ui.view: website_blog.website_blog_visitor_page_view_tree +NEW ir.ui.view: website_blog.website_blog_visitor_track_view_tree +NEW ir.ui.view: website_blog.website_blog_visitor_view_form +NEW ir.ui.view: website_blog.website_blog_visitor_view_tree +mail.message.subtype: website_blog.mt_blog_blog_published (noupdate switched) +NEW res.groups: website_blog.group_website_blog_manager +NEW res.groups.privilege: website_blog.res_groups_privilege_blog +website.menu: website_blog.menu_blog (noupdate switched) diff --git a/openupgrade_scripts/scripts/website_event_track/20.0.1.3/noupdate_changes.xml b/openupgrade_scripts/scripts/website_event_track/20.0.1.3/noupdate_changes.xml new file mode 100644 index 00000000000..eb4e1b2e83c --- /dev/null +++ b/openupgrade_scripts/scripts/website_event_track/20.0.1.3/noupdate_changes.xml @@ -0,0 +1,262 @@ + + + + mail.mail_notification_light + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
+ Your Event Track +
+ +
+ + + +
+
+
+
+ + + + + + + +
+
+ Hello, +

+ You recently showed interest for the talk + OpenWood Collection Online Reveal + OpenWood Collection Online Reveal. +
+
+
+ + + + + + + +
+ Add this talk to your calendar + + + iCal + + + + Outlook + + + + Google + +
+
+
+
+
+ See you soon,
+ + --
+ YourCompany +
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +
+ + +
May 4, 20217:00 AM + - 5:00 PM +
+
FromMay 4, 2021 + - 7:00 AM + To + May 6, 2021 + - 5:00 PM +
+
+ + Europe/Brussels + +
+
+ + + + + + + +
Teksa SpA
+
+ +
Puerto Madero 9710
+ + + +
Of A15, Santiago (RM)
+ + +
+ Pudahuel, + + C1, + + + 98450 + + +
+ +
Argentina
+ + +
+
+
+
Note: The start and end times of the talk were not specified when the email was sent. The times indicated in this message correspond to those of the event. +
+ +
+
+
+ + +
+ Questions about this talk? +
Please contact the organizer:
+ +
+
+
+ +
+
+ +
+ Get the best mobile experience. + Install our mobile app +
+
+ +
+
+ + + + + +
+ +
+
+
+
+ + + + +
+ Sent by YourCompany +
+ Discover all our events. +
+
+
+
+
+
diff --git a/openupgrade_scripts/scripts/website_event_track/20.0.1.3/post-migration.py b/openupgrade_scripts/scripts/website_event_track/20.0.1.3/post-migration.py new file mode 100644 index 00000000000..01a5a332491 --- /dev/null +++ b/openupgrade_scripts/scripts/website_event_track/20.0.1.3/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "website_event_track", "20.0.1.3/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "website_event_track", + ["mail_template_data_track_reminder"], + ["body_html"], + ) diff --git a/openupgrade_scripts/scripts/website_event_track/20.0.1.3/upgrade_analysis.txt b/openupgrade_scripts/scripts/website_event_track/20.0.1.3/upgrade_analysis.txt new file mode 100644 index 00000000000..04692ada0d4 --- /dev/null +++ b/openupgrade_scripts/scripts/website_event_track/20.0.1.3/upgrade_analysis.txt @@ -0,0 +1,65 @@ +---Models in module 'website_event_track'--- +---Fields in module 'website_event_track'--- +website_event_track / event.event / location_display_background (binary): NEW attachment: True +website_event_track / event.event / location_display_upcoming_track_count (selection): NEW required, selection_keys: ['2', '3', '4', '5'], hasdefault: default +website_event_track / event.track / publish_on (datetime) : NEW +website_event_track / event.track / published_date (datetime) : NEW +website_event_track / event.track / website_message_ids (one2many): DEL relation: mail.message +---XML records in module 'website_event_track'--- +event.track.stage: website_event_track.event_track_stage0 (noupdate switched) +event.track.stage: website_event_track.event_track_stage1 (noupdate switched) +event.track.stage: website_event_track.event_track_stage2 (noupdate switched) +event.track.stage: website_event_track.event_track_stage3 (noupdate switched) +event.track.stage: website_event_track.event_track_stage4 (noupdate switched) +event.track.stage: website_event_track.event_track_stage5 (noupdate switched) +NEW ir.access: website_event_track.access_event_track_employee +NEW ir.access: website_event_track.access_event_track_location_manager +NEW ir.access: website_event_track.access_event_track_location_user +NEW ir.access: website_event_track.access_event_track_manager +NEW ir.access: website_event_track.access_event_track_stage_manager +NEW ir.access: website_event_track.access_event_track_stage_public +NEW ir.access: website_event_track.access_event_track_tag_category_user +NEW ir.access: website_event_track.access_event_track_tag_employee +NEW ir.access: website_event_track.access_event_track_tag_manager +NEW ir.access: website_event_track.access_event_track_tag_user +NEW ir.access: website_event_track.access_event_track_user +NEW ir.access: website_event_track.access_event_track_visitor_manager +NEW ir.access: website_event_track.event_track_public +NEW ir.access: website_event_track.ir_rule_event_track_tag_public +ir.actions.act_window: website_event_track.event_track_action_from_visitor (deleted domain) +ir.actions.act_window: website_event_track.website_visitor_action_from_track (deleted domain) +DEL ir.asset: website_event_track.s_searchbar_000_xml +DEL ir.model.access: website_event_track.access_event_track_employee +DEL ir.model.access: website_event_track.access_event_track_location_manager +DEL ir.model.access: website_event_track.access_event_track_location_user +DEL ir.model.access: website_event_track.access_event_track_manager +DEL ir.model.access: website_event_track.access_event_track_portal +DEL ir.model.access: website_event_track.access_event_track_public +DEL ir.model.access: website_event_track.access_event_track_stage_employee +DEL ir.model.access: website_event_track.access_event_track_stage_manager +DEL ir.model.access: website_event_track.access_event_track_stage_portal +DEL ir.model.access: website_event_track.access_event_track_stage_public +DEL ir.model.access: website_event_track.access_event_track_tag_category_user +DEL ir.model.access: website_event_track.access_event_track_tag_employee +DEL ir.model.access: website_event_track.access_event_track_tag_manager +DEL ir.model.access: website_event_track.access_event_track_tag_portal +DEL ir.model.access: website_event_track.access_event_track_tag_public +DEL ir.model.access: website_event_track.access_event_track_tag_user +DEL ir.model.access: website_event_track.access_event_track_user +DEL ir.model.access: website_event_track.access_event_track_visitor +DEL ir.model.access: website_event_track.access_event_track_visitor_manager +ir.model.constraint: website_event_track.constraint_event_track_tag_name_uniq (changed definition: is now 'False' ('unique (name)')) +DEL ir.rule: website_event_track.event_track_public (noupdate) +DEL ir.rule: website_event_track.ir_rule_event_track_tag_public (noupdate) +NEW ir.ui.view: website_event_track.event_track_location_display +NEW ir.ui.view: website_event_track.event_track_location_display_content +NEW ir.ui.view: website_event_track.event_track_location_display_empty_state +NEW ir.ui.view: website_event_track.event_track_location_display_no_cookies_bar +NEW ir.ui.view: website_event_track.event_track_location_display_speaker +NEW ir.ui.view: website_event_track.event_track_location_display_track +NEW ir.ui.view: website_event_track.website_event_track_favorite_submenu +mail.message.subtype: website_event_track.mt_event_track (noupdate switched) +mail.message.subtype: website_event_track.mt_track_blocked (noupdate switched) +mail.message.subtype: website_event_track.mt_track_ready (noupdate switched) +mail.template: website_event_track.mail_template_data_track_confirmation (noupdate switched) +mail.template: website_event_track.mail_template_data_track_reminder (noupdate switched) diff --git a/openupgrade_scripts/scripts/website_forum/20.0.1.2/noupdate_changes.xml b/openupgrade_scripts/scripts/website_forum/20.0.1.2/noupdate_changes.xml new file mode 100644 index 00000000000..e882423cc21 --- /dev/null +++ b/openupgrade_scripts/scripts/website_forum/20.0.1.2/noupdate_changes.xml @@ -0,0 +1,118 @@ + + + + + + + +
+ +
+ +
+ +
+ + +
+
+ + + + + + + +
+ + +
+
+ + + Answers +
+
+
+ + +
+
+ +
+
+
+
+
+
+
+ + + + + + + + + + + + + + +
diff --git a/openupgrade_scripts/scripts/website_forum/20.0.1.2/post-migration.py b/openupgrade_scripts/scripts/website_forum/20.0.1.2/post-migration.py new file mode 100644 index 00000000000..73becc5137f --- /dev/null +++ b/openupgrade_scripts/scripts/website_forum/20.0.1.2/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "website_forum", "20.0.1.2/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/website_forum/20.0.1.2/upgrade_analysis.txt b/openupgrade_scripts/scripts/website_forum/20.0.1.2/upgrade_analysis.txt new file mode 100644 index 00000000000..7c65ea649b3 --- /dev/null +++ b/openupgrade_scripts/scripts/website_forum/20.0.1.2/upgrade_analysis.txt @@ -0,0 +1,218 @@ +---Models in module 'website_forum'--- +new model forum.post.comment +---Fields in module 'website_forum'--- +website_forum / forum.forum / website_message_ids (one2many): DEL relation: mail.message +website_forum / forum.post / comment_ids (one2many) : NEW relation: forum.post.comment +website_forum / forum.post / follower_ids (many2many) : NEW relation: res.partner +website_forum / forum.post / message_follower_ids (one2many): DEL relation: mail.followers +website_forum / forum.post / message_ids (one2many) : DEL relation: mail.message +website_forum / forum.post / rating_ids (one2many) : DEL relation: rating.rating +website_forum / forum.post / website_message_ids (one2many): DEL relation: mail.message +website_forum / forum.post / write_date_content (datetime) : NEW +website_forum / forum.post.comment / body (html) : NEW +website_forum / forum.post.comment / post_id (many2one) : NEW relation: forum.post, required +website_forum / forum.tag / follower_ids (many2many) : NEW relation: res.partner +website_forum / forum.tag / message_follower_ids (one2many): DEL relation: mail.followers +website_forum / forum.tag / message_ids (one2many) : DEL relation: mail.message +website_forum / forum.tag / rating_ids (one2many) : DEL relation: rating.rating +website_forum / forum.tag / website_message_ids (one2many): DEL relation: mail.message +---XML records in module 'website_forum'--- +forum.forum: website_forum.forum_help (noupdate switched) +forum.post.reason: website_forum.reason_1 (noupdate switched) +forum.post.reason: website_forum.reason_11 (noupdate switched) +forum.post.reason: website_forum.reason_12 (noupdate switched) +forum.post.reason: website_forum.reason_13 (noupdate switched) +forum.post.reason: website_forum.reason_14 (noupdate switched) +forum.post.reason: website_forum.reason_15 (noupdate switched) +forum.post.reason: website_forum.reason_2 (noupdate switched) +forum.post.reason: website_forum.reason_3 (noupdate switched) +forum.post.reason: website_forum.reason_4 (noupdate switched) +forum.post.reason: website_forum.reason_6 (noupdate switched) +forum.post.reason: website_forum.reason_7 (noupdate switched) +forum.post.reason: website_forum.reason_8 (noupdate switched) +forum.post.reason: website_forum.reason_9 (noupdate switched) +gamification.badge: website_forum.badge_23 (noupdate switched) +gamification.badge: website_forum.badge_25 (noupdate switched) +gamification.badge: website_forum.badge_26 (noupdate switched) +gamification.badge: website_forum.badge_31 (noupdate switched) +gamification.badge: website_forum.badge_32 (noupdate switched) +gamification.badge: website_forum.badge_5 (noupdate switched) +gamification.badge: website_forum.badge_6 (noupdate switched) +gamification.badge: website_forum.badge_7 (noupdate switched) +gamification.badge: website_forum.badge_a_1 (noupdate switched) +gamification.badge: website_forum.badge_a_2 (noupdate switched) +gamification.badge: website_forum.badge_a_3 (noupdate switched) +gamification.badge: website_forum.badge_a_4 (noupdate switched) +gamification.badge: website_forum.badge_a_5 (noupdate switched) +gamification.badge: website_forum.badge_a_6 (noupdate switched) +gamification.badge: website_forum.badge_a_8 (noupdate switched) +gamification.badge: website_forum.badge_p_1 (noupdate switched) +gamification.badge: website_forum.badge_p_2 (noupdate switched) +gamification.badge: website_forum.badge_p_4 (noupdate switched) +gamification.badge: website_forum.badge_q_1 (noupdate switched) +gamification.badge: website_forum.badge_q_10 (noupdate switched) +gamification.badge: website_forum.badge_q_2 (noupdate switched) +gamification.badge: website_forum.badge_q_3 (noupdate switched) +gamification.badge: website_forum.badge_q_4 (noupdate switched) +gamification.badge: website_forum.badge_q_5 (noupdate switched) +gamification.badge: website_forum.badge_q_6 (noupdate switched) +gamification.badge: website_forum.badge_q_7 (noupdate switched) +gamification.badge: website_forum.badge_q_8 (noupdate switched) +gamification.badge: website_forum.badge_q_9 (noupdate switched) +gamification.challenge: website_forum.challenge_chief_commentator (noupdate switched) +gamification.challenge: website_forum.challenge_commentator (noupdate switched) +gamification.challenge: website_forum.challenge_configure_profile (noupdate switched) +gamification.challenge: website_forum.challenge_critic (noupdate switched) +gamification.challenge: website_forum.challenge_disciplined (noupdate switched) +gamification.challenge: website_forum.challenge_editor (noupdate switched) +gamification.challenge: website_forum.challenge_enlightened (noupdate switched) +gamification.challenge: website_forum.challenge_famous_question (noupdate switched) +gamification.challenge: website_forum.challenge_favorite_question_1 (noupdate switched) +gamification.challenge: website_forum.challenge_favorite_question_5 (noupdate switched) +gamification.challenge: website_forum.challenge_good_answer (noupdate switched) +gamification.challenge: website_forum.challenge_good_question (noupdate switched) +gamification.challenge: website_forum.challenge_great_answer (noupdate switched) +gamification.challenge: website_forum.challenge_great_question (noupdate switched) +gamification.challenge: website_forum.challenge_guru (noupdate switched) +gamification.challenge: website_forum.challenge_nice_answer (noupdate switched) +gamification.challenge: website_forum.challenge_nice_question (noupdate switched) +gamification.challenge: website_forum.challenge_notable_question (noupdate switched) +gamification.challenge: website_forum.challenge_peer_pressure (noupdate switched) +gamification.challenge: website_forum.challenge_popular_question (noupdate switched) +gamification.challenge: website_forum.challenge_pundit (noupdate switched) +gamification.challenge: website_forum.challenge_scholar (noupdate switched) +gamification.challenge: website_forum.challenge_self_learner (noupdate switched) +gamification.challenge: website_forum.challenge_stellar_question_25 (noupdate switched) +gamification.challenge: website_forum.challenge_student (noupdate switched) +gamification.challenge: website_forum.challenge_supporter (noupdate switched) +gamification.challenge: website_forum.challenge_taxonomist (noupdate switched) +gamification.challenge: website_forum.challenge_teacher (noupdate switched) +gamification.challenge.line: website_forum.line_chief_commentator (noupdate switched) +gamification.challenge.line: website_forum.line_commentator (noupdate switched) +gamification.challenge.line: website_forum.line_configure_profile (noupdate switched) +gamification.challenge.line: website_forum.line_critic (noupdate switched) +gamification.challenge.line: website_forum.line_disciplined (noupdate switched) +gamification.challenge.line: website_forum.line_editor (noupdate switched) +gamification.challenge.line: website_forum.line_enlightened (noupdate switched) +gamification.challenge.line: website_forum.line_famous_question (noupdate switched) +gamification.challenge.line: website_forum.line_favorite_question_1 (noupdate switched) +gamification.challenge.line: website_forum.line_favorite_question_5 (noupdate switched) +gamification.challenge.line: website_forum.line_good_answer (noupdate switched) +gamification.challenge.line: website_forum.line_good_question (noupdate switched) +gamification.challenge.line: website_forum.line_great_answer (noupdate switched) +gamification.challenge.line: website_forum.line_great_question (noupdate switched) +gamification.challenge.line: website_forum.line_guru (noupdate switched) +gamification.challenge.line: website_forum.line_nice_answer (noupdate switched) +gamification.challenge.line: website_forum.line_nice_question (noupdate switched) +gamification.challenge.line: website_forum.line_notable_question (noupdate switched) +gamification.challenge.line: website_forum.line_peer_pressure (noupdate switched) +gamification.challenge.line: website_forum.line_popular_question (noupdate switched) +gamification.challenge.line: website_forum.line_pundit (noupdate switched) +gamification.challenge.line: website_forum.line_scholar (noupdate switched) +gamification.challenge.line: website_forum.line_self_learner (noupdate switched) +gamification.challenge.line: website_forum.line_stellar_question_25 (noupdate switched) +gamification.challenge.line: website_forum.line_student (noupdate switched) +gamification.challenge.line: website_forum.line_supporter (noupdate switched) +gamification.challenge.line: website_forum.line_taxonomist (noupdate switched) +gamification.challenge.line: website_forum.line_teacher (noupdate switched) +gamification.goal.definition: website_forum.definition_commentator (noupdate switched) +gamification.goal.definition: website_forum.definition_configure_profile (noupdate switched) +gamification.goal.definition: website_forum.definition_critic (noupdate switched) +gamification.goal.definition: website_forum.definition_disciplined (noupdate switched) +gamification.goal.definition: website_forum.definition_editor (noupdate switched) +gamification.goal.definition: website_forum.definition_enlightened (noupdate switched) +gamification.goal.definition: website_forum.definition_famous_question (noupdate switched) +gamification.goal.definition: website_forum.definition_favorite_question_1 (noupdate switched) +gamification.goal.definition: website_forum.definition_favorite_question_5 (noupdate switched) +gamification.goal.definition: website_forum.definition_good_answer (noupdate switched) +gamification.goal.definition: website_forum.definition_good_question (noupdate switched) +gamification.goal.definition: website_forum.definition_great_answer (noupdate switched) +gamification.goal.definition: website_forum.definition_great_question (noupdate switched) +gamification.goal.definition: website_forum.definition_guru (noupdate switched) +gamification.goal.definition: website_forum.definition_nice_answer (noupdate switched) +gamification.goal.definition: website_forum.definition_nice_question (noupdate switched) +gamification.goal.definition: website_forum.definition_notable_question (noupdate switched) +gamification.goal.definition: website_forum.definition_peer_pressure (noupdate switched) +gamification.goal.definition: website_forum.definition_popular_question (noupdate switched) +gamification.goal.definition: website_forum.definition_pundit (noupdate switched) +gamification.goal.definition: website_forum.definition_scholar (noupdate switched) +gamification.goal.definition: website_forum.definition_self_learner (noupdate switched) +gamification.goal.definition: website_forum.definition_stellar_question_25 (noupdate switched) +gamification.goal.definition: website_forum.definition_student (noupdate switched) +gamification.goal.definition: website_forum.definition_supporter (noupdate switched) +gamification.goal.definition: website_forum.definition_taxonomist (noupdate switched) +gamification.goal.definition: website_forum.definition_teacher (noupdate switched) +NEW ir.access: website_forum.access_forum_forum_manager +NEW ir.access: website_forum.access_forum_forum_public +NEW ir.access: website_forum.access_forum_post_comment_portal +NEW ir.access: website_forum.access_forum_post_comment_public +NEW ir.access: website_forum.access_forum_post_comment_user +NEW ir.access: website_forum.access_forum_post_portal +NEW ir.access: website_forum.access_forum_post_public +NEW ir.access: website_forum.access_forum_post_reason_public +NEW ir.access: website_forum.access_forum_post_reason_website_designer +NEW ir.access: website_forum.access_forum_post_user +NEW ir.access: website_forum.access_forum_tag_public +NEW ir.access: website_forum.access_forum_tag_user +NEW ir.access: website_forum.website_forum +NEW ir.access: website_forum.website_forum_create_website_designer +NEW ir.access: website_forum.website_forum_post +NEW ir.access: website_forum.website_forum_post_comment +NEW ir.access: website_forum.website_forum_post_vote_all +NEW ir.access: website_forum.website_forum_post_vote_own +NEW ir.access: website_forum.website_forum_post_vote_own_1 +NEW ir.access: website_forum.website_forum_tag +ir.actions.act_url: website_forum.action_open_forum (noupdate switched) +ir.actions.act_window: website_forum.forum_post_action (noupdate switched) +ir.actions.act_window: website_forum.forum_post_action_favorites (deleted domain) (noupdate switched) +ir.actions.act_window: website_forum.forum_post_action_forum_main (deleted domain) (noupdate switched) +DEL ir.model.access: website_forum.access_forum_forum_employee +DEL ir.model.access: website_forum.access_forum_forum_manager +DEL ir.model.access: website_forum.access_forum_forum_portal +DEL ir.model.access: website_forum.access_forum_forum_public +DEL ir.model.access: website_forum.access_forum_post_portal +DEL ir.model.access: website_forum.access_forum_post_public +DEL ir.model.access: website_forum.access_forum_post_reason_portal +DEL ir.model.access: website_forum.access_forum_post_reason_public +DEL ir.model.access: website_forum.access_forum_post_reason_user +DEL ir.model.access: website_forum.access_forum_post_user +DEL ir.model.access: website_forum.access_forum_post_vote_portal +DEL ir.model.access: website_forum.access_forum_post_vote_user +DEL ir.model.access: website_forum.access_forum_tag_portal +DEL ir.model.access: website_forum.access_forum_tag_public +DEL ir.model.access: website_forum.access_forum_tag_user +ir.model.constraint: website_forum.constraint_forum_post_vote_vote_uniq (changed definition: is now 'False' ('unique (post_id, user_id)')) +NEW ir.model.constraint: website_forum.constraint_forum_tag_forum_id_posts_count_idx +ir.model.constraint: website_forum.constraint_forum_tag_name_uniq (changed definition: is now 'False' ('unique (name, forum_id)')) +DEL ir.rule: website_forum.website_forum_connected (noupdate) +DEL ir.rule: website_forum.website_forum_connected_post (noupdate) +DEL ir.rule: website_forum.website_forum_connected_tag (noupdate) +DEL ir.rule: website_forum.website_forum_create_website_designer (noupdate) +DEL ir.rule: website_forum.website_forum_post_vote_all (noupdate) +DEL ir.rule: website_forum.website_forum_post_vote_own (noupdate) +DEL ir.rule: website_forum.website_forum_private (noupdate) +DEL ir.rule: website_forum.website_forum_private_post (noupdate) +DEL ir.rule: website_forum.website_forum_private_tag (noupdate) +DEL ir.rule: website_forum.website_forum_public (noupdate) +DEL ir.rule: website_forum.website_forum_public_post (noupdate) +DEL ir.rule: website_forum.website_forum_public_tag (noupdate) +NEW ir.ui.view: website_forum.follow_button +NEW ir.ui.view: website_forum.forum_post_link +ir.ui.view: website_forum.forum_post_template_new_answer (noupdate switched) +ir.ui.view: website_forum.forum_post_template_new_question (noupdate switched) +ir.ui.view: website_forum.forum_post_template_validation (noupdate switched) +ir.ui.view: website_forum.forum_post_view_form (noupdate switched) +ir.ui.view: website_forum.forum_post_view_graph (noupdate switched) +ir.ui.view: website_forum.forum_post_view_kanban (noupdate switched) +ir.ui.view: website_forum.forum_post_view_search (noupdate switched) +ir.ui.view: website_forum.forum_post_view_tree (noupdate switched) +DEL ir.ui.view: website_forum.follow +mail.message.subtype: website_forum.mt_answer_edit (noupdate switched) +mail.message.subtype: website_forum.mt_answer_new (noupdate switched) +NEW mail.message.subtype: website_forum.mt_ask_validation +NEW mail.message.subtype: website_forum.mt_comment_new +mail.message.subtype: website_forum.mt_forum_answer_new (noupdate switched) +mail.message.subtype: website_forum.mt_forum_question_new (noupdate switched) +mail.message.subtype: website_forum.mt_question_edit (noupdate switched) +mail.message.subtype: website_forum.mt_question_new (noupdate switched) +website.menu: website_forum.menu_website_forums (noupdate switched) diff --git a/openupgrade_scripts/scripts/website_livechat/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/website_livechat/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..20a22a6b6f3 --- /dev/null +++ b/openupgrade_scripts/scripts/website_livechat/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/openupgrade_scripts/scripts/website_livechat/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/website_livechat/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..9f1e13d3e4f --- /dev/null +++ b/openupgrade_scripts/scripts/website_livechat/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "website_livechat", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/website_livechat/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/website_livechat/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..eb02f0ecdf3 --- /dev/null +++ b/openupgrade_scripts/scripts/website_livechat/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,9 @@ +---Models in module 'website_livechat'--- +---Fields in module 'website_livechat'--- +website_livechat / website.visitor / livechat_operator_id (many2one): DEL relation: res.partner +---XML records in module 'website_livechat'--- +NEW ir.access: website_livechat.access_website_track_livechat_users +NEW ir.access: website_livechat.access_website_visitor_livechat_users +ir.actions.act_window: website_livechat.website_visitor_livechat_session_action (deleted domain) +DEL ir.model.access: website_livechat.access_website_track_livechat_users +DEL ir.model.access: website_livechat.access_website_visitor_livechat_users diff --git a/openupgrade_scripts/scripts/website_livechat/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/website_livechat/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..8aedf62dc81 --- /dev/null +++ b/openupgrade_scripts/scripts/website_livechat/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,13 @@ +---Models in module 'website_livechat'--- +---Fields in module 'website_livechat'--- +website_livechat / website.visitor / livechat_operator_id (many2one): DEL relation: res.partner +# NOTHING TO DO: the column is left in place for database_cleanup +---XML records in module 'website_livechat'--- +NEW ir.access: website_livechat.access_website_track_livechat_users +NEW ir.access: website_livechat.access_website_visitor_livechat_users +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.actions.act_window: website_livechat.website_visitor_livechat_session_action (deleted domain) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites the domain +DEL ir.model.access: website_livechat.access_website_track_livechat_users +DEL ir.model.access: website_livechat.access_website_visitor_livechat_users +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids diff --git a/openupgrade_scripts/scripts/website_profile/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/website_profile/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..d189de0643b --- /dev/null +++ b/openupgrade_scripts/scripts/website_profile/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,19 @@ + + + + + + Hello Marc Demo,

+ You have been invited to validate your email in order to get access to "YourCompany" website. + To validate your email, please click on the button below: + + Thanks for your participation! +
+
+ + + mail.mail_notification_layout +
+
diff --git a/openupgrade_scripts/scripts/website_profile/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/website_profile/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..a46f5b54636 --- /dev/null +++ b/openupgrade_scripts/scripts/website_profile/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "website_profile", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "website_profile", + ["validation_email"], + ["body_html"], + ) diff --git a/openupgrade_scripts/scripts/website_profile/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/website_profile/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..c0bc78f9f29 --- /dev/null +++ b/openupgrade_scripts/scripts/website_profile/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,8 @@ +---Models in module 'website_profile'--- +---Fields in module 'website_profile'--- +website_profile / gamification.badge / publish_on (datetime) : NEW +website_profile / gamification.badge / published_date (datetime) : NEW +---XML records in module 'website_profile'--- +NEW ir.access: website_profile.gamification_karma_rank_access_restricted_editor +DEL ir.model.access: website_profile.gamification_karma_rank_access_restricted_editor +mail.template: website_profile.validation_email (noupdate switched) diff --git a/openupgrade_scripts/scripts/website_profile/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/website_profile/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..2ed75546a7c --- /dev/null +++ b/openupgrade_scripts/scripts/website_profile/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,11 @@ +---Models in module 'website_profile'--- +---Fields in module 'website_profile'--- +website_profile / gamification.badge / publish_on (datetime) : NEW +website_profile / gamification.badge / published_date (datetime) : NEW +# NOTHING TO DO: empty is the right value for existing records +---XML records in module 'website_profile'--- +NEW ir.access: website_profile.gamification_karma_rank_access_restricted_editor +DEL ir.model.access: website_profile.gamification_karma_rank_access_restricted_editor +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +mail.template: website_profile.validation_email (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml diff --git a/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..a50c405dfc4 --- /dev/null +++ b/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + +

Your order will be ready soon.

+
+ + True + 40 +
+
diff --git a/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..81ec64d044a --- /dev/null +++ b/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/post-migration.py @@ -0,0 +1,15 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "website_sale_collect", "20.0.1.0/noupdate_changes.xml") + openupgrade.delete_record_translations( + env.cr, + "website_sale_collect", + ["payment_provider_on_site"], + ["pending_msg"], + ) diff --git a/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..5c3e878b321 --- /dev/null +++ b/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,8 @@ +---Models in module 'website_sale_collect'--- +---Fields in module 'website_sale_collect'--- +website_sale_collect / payment.provider / custom_mode (False) : selection_keys added: [pay_on_invoice] (most likely nothing to do) +---XML records in module 'website_sale_collect'--- +delivery.carrier: website_sale_collect.carrier_pick_up_in_store (noupdate switched) +NEW ir.ui.view: website_sale_collect.payment_provider_form +NEW ir.ui.view: website_sale_collect.sale_order_view_form +product.product: website_sale_collect.product_pick_up_in_store (noupdate switched) diff --git a/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..0e87a8760b7 --- /dev/null +++ b/openupgrade_scripts/scripts/website_sale_collect/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,12 @@ +---Models in module 'website_sale_collect'--- +---Fields in module 'website_sale_collect'--- +website_sale_collect / payment.provider / custom_mode (False) : selection_keys added: [pay_on_invoice] (most likely nothing to do) +# NOTHING TO DO: keys were added, the existing values stay valid +---XML records in module 'website_sale_collect'--- +delivery.carrier: website_sale_collect.carrier_pick_up_in_store (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml +NEW ir.ui.view: website_sale_collect.payment_provider_form +NEW ir.ui.view: website_sale_collect.sale_order_view_form +# NOTHING TO DO: the record is not noupdate, so the module update creates it +product.product: website_sale_collect.product_pick_up_in_store (noupdate switched) +# NOTHING TO DO: only the noupdate flag changed, the definition is the same diff --git a/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/noupdate_changes.xml b/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/noupdate_changes.xml new file mode 100644 index 00000000000..f88f7550ca5 --- /dev/null +++ b/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/noupdate_changes.xml @@ -0,0 +1,6 @@ + + + + mail.mail_notification_light + + diff --git a/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/post-migration.py b/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/post-migration.py new file mode 100644 index 00000000000..3b909ef4c9e --- /dev/null +++ b/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/post-migration.py @@ -0,0 +1,9 @@ +# Copyright 2026 Don Kendall +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate() +def migrate(env, version): + openupgrade.load_data(env, "website_slides_survey", "20.0.1.0/noupdate_changes.xml") diff --git a/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/upgrade_analysis.txt b/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/upgrade_analysis.txt new file mode 100644 index 00000000000..58193f8d919 --- /dev/null +++ b/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/upgrade_analysis.txt @@ -0,0 +1,23 @@ +---Models in module 'website_slides_survey'--- +---Fields in module 'website_slides_survey'--- +---XML records in module 'website_slides_survey'--- +NEW ir.access: website_slides_survey.survey_question_answer_slide_channel_officer +NEW ir.access: website_slides_survey.survey_question_rule_slide_channel_officer +NEW ir.access: website_slides_survey.survey_rule_slide_channel_officer +NEW ir.access: website_slides_survey.survey_user_input_line_rule_slide_channel_officer +NEW ir.access: website_slides_survey.survey_user_input_rule_slide_channel_officer +ir.actions.act_window: website_slides_survey.slide_slide_action_certification (deleted domain) +ir.actions.act_window: website_slides_survey.survey_survey_action_slides (deleted domain) +DEL ir.model.access: website_slides_survey.access_survey_question_answer_slides_officer +DEL ir.model.access: website_slides_survey.access_survey_question_slides_officer +DEL ir.model.access: website_slides_survey.access_survey_slides_officer +DEL ir.model.access: website_slides_survey.access_survey_user_input_line_slides_officer +DEL ir.model.access: website_slides_survey.access_survey_user_input_slides_officer +ir.model.constraint: website_slides_survey.constraint_slide_slide_check_certification_preview (changed definition: is now 'False' ('CHECK(slide_category != 'certification' OR is_preview = False)')) +ir.model.constraint: website_slides_survey.constraint_slide_slide_check_survey_id (changed definition: is now 'False' ('CHECK(slide_category != 'certification' OR survey_id IS NOT NULL)')) +DEL ir.rule: website_slides_survey.survey_question_answer_slide_channel_officer (noupdate) +DEL ir.rule: website_slides_survey.survey_question_rule_slide_channel_officer (noupdate) +DEL ir.rule: website_slides_survey.survey_rule_slide_channel_officer (noupdate) +DEL ir.rule: website_slides_survey.survey_user_input_line_rule_slide_channel_officer (noupdate) +DEL ir.rule: website_slides_survey.survey_user_input_rule_slide_channel_officer (noupdate) +mail.template: website_slides_survey.mail_template_user_input_certification_failed (noupdate switched) diff --git a/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/upgrade_analysis_work.txt b/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/upgrade_analysis_work.txt new file mode 100644 index 00000000000..b419d5ef464 --- /dev/null +++ b/openupgrade_scripts/scripts/website_slides_survey/20.0.1.0/upgrade_analysis_work.txt @@ -0,0 +1,29 @@ +---Models in module 'website_slides_survey'--- +---Fields in module 'website_slides_survey'--- +---XML records in module 'website_slides_survey'--- +NEW ir.access: website_slides_survey.survey_question_answer_slide_channel_officer +NEW ir.access: website_slides_survey.survey_question_rule_slide_channel_officer +NEW ir.access: website_slides_survey.survey_rule_slide_channel_officer +NEW ir.access: website_slides_survey.survey_user_input_line_rule_slide_channel_officer +NEW ir.access: website_slides_survey.survey_user_input_rule_slide_channel_officer +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.actions.act_window: website_slides_survey.slide_slide_action_certification (deleted domain) +ir.actions.act_window: website_slides_survey.survey_survey_action_slides (deleted domain) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites the domain +DEL ir.model.access: website_slides_survey.access_survey_question_answer_slides_officer +DEL ir.model.access: website_slides_survey.access_survey_question_slides_officer +DEL ir.model.access: website_slides_survey.access_survey_slides_officer +DEL ir.model.access: website_slides_survey.access_survey_user_input_line_slides_officer +DEL ir.model.access: website_slides_survey.access_survey_user_input_slides_officer +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +ir.model.constraint: website_slides_survey.constraint_slide_slide_check_certification_preview (changed definition: is now 'False' ('CHECK(slide_category != 'certification' OR is_preview = False)')) +ir.model.constraint: website_slides_survey.constraint_slide_slide_check_survey_id (changed definition: is now 'False' ('CHECK(slide_category != 'certification' OR survey_id IS NOT NULL)')) +# NOTHING TO DO: the record is not noupdate, so the module update rewrites it +DEL ir.rule: website_slides_survey.survey_question_answer_slide_channel_officer (noupdate) +DEL ir.rule: website_slides_survey.survey_question_rule_slide_channel_officer (noupdate) +DEL ir.rule: website_slides_survey.survey_rule_slide_channel_officer (noupdate) +DEL ir.rule: website_slides_survey.survey_user_input_line_rule_slide_channel_officer (noupdate) +DEL ir.rule: website_slides_survey.survey_user_input_rule_slide_channel_officer (noupdate) +# NOTHING TO DO: base folds ir.model.access and ir.rule into ir.access, keeping the xml_ids +mail.template: website_slides_survey.mail_template_user_input_certification_failed (noupdate switched) +# DONE: post-migration: load noupdate_changes.xml