odoo-addon-openupgrade-scripts 17.0.1.0.1.384__py3-none-any.whl → 17.0.1.0.1.453__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. odoo/addons/openupgrade_scripts/apriori.py +11 -0
  2. odoo/addons/openupgrade_scripts/scripts/account/17.0.1.2/end-migration.py +43 -0
  3. odoo/addons/openupgrade_scripts/scripts/account/17.0.1.2/post-migration.py +1 -1
  4. odoo/addons/openupgrade_scripts/scripts/account/17.0.1.2/pre-migration.py +21 -3
  5. odoo/addons/openupgrade_scripts/scripts/account/17.0.1.2/upgrade_analysis_work.txt +1 -1
  6. odoo/addons/openupgrade_scripts/scripts/account_debit_note/17.0.1.0/upgrade_analysis_work.txt +5 -0
  7. odoo/addons/openupgrade_scripts/scripts/account_edi_ubl_cii/17.0.1.0/end-migration.py +7 -4
  8. odoo/addons/openupgrade_scripts/scripts/account_fleet/17.0.1.0/upgrade_analysis_work.txt +5 -0
  9. odoo/addons/openupgrade_scripts/scripts/auth_ldap/17.0.1.0/upgrade_analysis_work.txt +4 -0
  10. odoo/addons/openupgrade_scripts/scripts/base/17.0.1.3/pre-migration.py +29 -0
  11. odoo/addons/openupgrade_scripts/scripts/hr_attendance/17.0.2.0/post-migration.py +20 -0
  12. odoo/addons/openupgrade_scripts/scripts/hr_attendance/17.0.2.0/upgrade_analysis_work.txt +3 -2
  13. odoo/addons/openupgrade_scripts/scripts/hr_holidays/17.0.1.6/pre-migration.py +13 -0
  14. odoo/addons/openupgrade_scripts/scripts/hr_holidays/17.0.1.6/upgrade_analysis_work.txt +3 -1
  15. odoo/addons/openupgrade_scripts/scripts/hr_recruitment_skills/17.0.1.0/upgrade_analysis_work.txt +11 -0
  16. odoo/addons/openupgrade_scripts/scripts/hr_skills/17.0.1.0/upgrade_analysis_work.txt +20 -0
  17. odoo/addons/openupgrade_scripts/scripts/hr_skills_slides/17.0.1.0/upgrade_analysis_work.txt +5 -0
  18. odoo/addons/openupgrade_scripts/scripts/hr_skills_survey/17.0.1.0/pre-migration.py +22 -0
  19. odoo/addons/openupgrade_scripts/scripts/hr_skills_survey/17.0.1.0/upgrade_analysis_work.txt +14 -0
  20. odoo/addons/openupgrade_scripts/scripts/l10n_be/17.0.2.0/post-migration.py +16 -0
  21. odoo/addons/openupgrade_scripts/scripts/l10n_be/17.0.2.0/upgrade_analysis_work.txt +931 -0
  22. odoo/addons/openupgrade_scripts/scripts/l10n_dk/17.0.1.3/post-migration.py +44 -0
  23. odoo/addons/openupgrade_scripts/scripts/l10n_dk/17.0.1.3/upgrade_analysis_work.txt +570 -0
  24. odoo/addons/openupgrade_scripts/scripts/l10n_es/17.0.5.4/pre-migration.py +11 -0
  25. odoo/addons/openupgrade_scripts/scripts/l10n_es/17.0.5.4/upgrade_analysis_work.txt +1 -1
  26. odoo/addons/openupgrade_scripts/scripts/l10n_latam_base/17.0.1.0/upgrade_analysis_work.txt +6 -0
  27. odoo/addons/openupgrade_scripts/scripts/l10n_latam_invoice_document/17.0.1.0/upgrade_analysis_work.txt +15 -0
  28. odoo/addons/openupgrade_scripts/scripts/l10n_pt/17.0.1.0/post-migration.py +17 -0
  29. odoo/addons/openupgrade_scripts/scripts/l10n_pt/17.0.1.0/pre-migration.py +29 -0
  30. odoo/addons/openupgrade_scripts/scripts/l10n_pt/17.0.1.0/upgrade_analysis_work.txt +608 -0
  31. odoo/addons/openupgrade_scripts/scripts/loyalty/17.0.1.0/upgrade_analysis_work.txt +14 -0
  32. odoo/addons/openupgrade_scripts/scripts/maintenance/17.0.1.0/pre-migration.py +18 -1
  33. odoo/addons/openupgrade_scripts/scripts/payment/17.0.2.0/noupdate_changes_work.xml +5 -3
  34. odoo/addons/openupgrade_scripts/scripts/payment/17.0.2.0/post-migration.py +532 -0
  35. odoo/addons/openupgrade_scripts/scripts/payment_custom/17.0.2.0/post-migration.py +11 -1
  36. odoo/addons/openupgrade_scripts/scripts/payment_demo/17.0.2.0/noupdate_changes.xml +2 -0
  37. odoo/addons/openupgrade_scripts/scripts/payment_demo/17.0.2.0/post-migration.py +21 -0
  38. odoo/addons/openupgrade_scripts/scripts/payment_demo/17.0.2.0/upgrade_analysis_work.txt +11 -0
  39. odoo/addons/openupgrade_scripts/scripts/point_of_sale/17.0.1.0.1/pre-migration.py +1 -0
  40. odoo/addons/openupgrade_scripts/scripts/point_of_sale/17.0.1.0.1/upgrade_analysis_work.txt +1 -1
  41. odoo/addons/openupgrade_scripts/scripts/pos_epson_printer/17.0.1.0/upgrade_analysis_work.txt +9 -0
  42. odoo/addons/openupgrade_scripts/scripts/pos_hr/17.0.1.0/pre-migration.py +10 -0
  43. odoo/addons/openupgrade_scripts/scripts/pos_hr/17.0.1.0/upgrade_analysis_work.txt +12 -0
  44. odoo/addons/openupgrade_scripts/scripts/pos_restaurant/17.0.1.0/post-migration.py +19 -0
  45. odoo/addons/openupgrade_scripts/scripts/pos_restaurant/17.0.1.0/upgrade_analysis_work.txt +47 -0
  46. odoo/addons/openupgrade_scripts/scripts/pos_sale/17.0.1.1/upgrade_analysis_work.txt +5 -0
  47. odoo/addons/openupgrade_scripts/scripts/project/17.0.1.3/pre-migration.py +11 -0
  48. odoo/addons/openupgrade_scripts/scripts/sale/17.0.1.2/post-migration.py +12 -0
  49. odoo/addons/openupgrade_scripts/scripts/sale/17.0.1.2/upgrade_analysis_work.txt +4 -0
  50. odoo/addons/openupgrade_scripts/scripts/sale_loyalty/17.0.1.0/upgrade_analysis_work.txt +9 -0
  51. odoo/addons/openupgrade_scripts/scripts/sale_loyalty_delivery/17.0.1.0/upgrade_analysis_work.txt +12 -0
  52. odoo/addons/openupgrade_scripts/scripts/web/17.0.1.0/pre-migration.py +16 -1
  53. odoo/addons/openupgrade_scripts/scripts/web_editor/17.0.1.0/post-migration.py +17 -0
  54. odoo/addons/openupgrade_scripts/scripts/website_crm_livechat/17.0.1.0/upgrade_analysis_work.txt +5 -0
  55. odoo/addons/openupgrade_scripts/scripts/website_sale_loyalty/17.0.1.0/upgrade_analysis_work.txt +5 -0
  56. odoo/addons/openupgrade_scripts/scripts/website_sale_picking/17.0.1.0/post-migration.py +15 -0
  57. odoo/addons/openupgrade_scripts/scripts/website_sale_picking/17.0.1.0/pre-migration.py +19 -0
  58. odoo/addons/openupgrade_scripts/scripts/website_sale_picking/17.0.1.0/upgrade_analysis_work.txt +12 -0
  59. odoo/addons/openupgrade_scripts/scripts/website_sale_product_configurator/17.0.1.0/upgrade_analysis_work.txt +12 -0
  60. {odoo_addon_openupgrade_scripts-17.0.1.0.1.384.dist-info → odoo_addon_openupgrade_scripts-17.0.1.0.1.453.dist-info}/METADATA +2 -1
  61. {odoo_addon_openupgrade_scripts-17.0.1.0.1.384.dist-info → odoo_addon_openupgrade_scripts-17.0.1.0.1.453.dist-info}/RECORD +63 -27
  62. {odoo_addon_openupgrade_scripts-17.0.1.0.1.384.dist-info → odoo_addon_openupgrade_scripts-17.0.1.0.1.453.dist-info}/WHEEL +1 -1
  63. {odoo_addon_openupgrade_scripts-17.0.1.0.1.384.dist-info → odoo_addon_openupgrade_scripts-17.0.1.0.1.453.dist-info}/top_level.txt +0 -0
@@ -10,6 +10,8 @@ renamed_modules = {
10
10
  # odoo/enterprise
11
11
  # OCA/delivery-carrier
12
12
  "delivery_carrier_customer_info": "partner_delivery_info",
13
+ # OCA/l10n-spain
14
+ "l10n_es_pos": "l10n_es_pos_oca",
13
15
  # OCA/social
14
16
  "mail_activity_unlink_log": "mail_activity_cancel_tracking",
15
17
  }
@@ -28,6 +30,7 @@ merged_modules = {
28
30
  "l10n_in_tcs_tds": "l10n_in",
29
31
  "l10n_in_upi": "l10n_in",
30
32
  "l10n_latam_account_sequence": "l10n_latam_invoice_document",
33
+ "l10n_multilang": "account",
31
34
  "loyalty_delivery": "sale_loyalty_delivery",
32
35
  "pos_cache": "point_of_sale",
33
36
  "pos_daily_sales_reports": "point_of_sale",
@@ -60,8 +63,16 @@ merged_modules = {
60
63
  "maintenance_plan": "maintenance",
61
64
  "maintenance_plan_activity": "maintenance",
62
65
  "maintenance_plan_employee": "maintenance",
66
+ # OCA/product-attribute
67
+ "product_catalog": "product",
68
+ "product_catalog_sale": "sale",
63
69
  # OCA/purchase-workflow
64
70
  "purchase_discount": "purchase",
71
+ # OCA/sale-promotion
72
+ "loyalty_initial_date_validity": "loyalty",
73
+ "sale_loyalty_initial_date_validity": "sale_loyalty",
74
+ # OCA/sale-reporting
75
+ "sale_report_country_state": "sale",
65
76
  # OCA/social
66
77
  "mail_activity_plan": "mail",
67
78
  "mass_mailing_custom_unsubscribe_event": "mass_mailing",
@@ -0,0 +1,43 @@
1
+ # Copyright 2025 Le Filament (https://le-filament.com)
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
3
+ from openupgradelib import openupgrade
4
+
5
+
6
+ def _assign_journal_xmlids(env):
7
+ """
8
+ Starting in Odoo 17, Odoo expects journals to get external id
9
+ like account.1_sale for sale journal on company 1
10
+ We therefore assign xmlids to existing journals so that they will not be recreated
11
+ """
12
+ for company in env["res.company"].search([("chart_template", "!=", False)]):
13
+ template_data = env["account.chart.template"]._get_chart_template_data(
14
+ company.chart_template
15
+ )
16
+ existing_journals = (
17
+ env["account.journal"]
18
+ .with_context(active_test=False)
19
+ .search(env["account.journal"]._check_company_domain(company), order="id")
20
+ )
21
+ for xmlid, journal_data in list(
22
+ template_data.get("account.journal", {}).items()
23
+ ):
24
+ if not env.ref(xmlid, raise_if_not_found=False) and "type" in journal_data:
25
+ journal = existing_journals.filtered(
26
+ lambda j: j.type == journal_data["type"] # noqa: B023
27
+ )[:1]
28
+ if journal:
29
+ existing_journals -= journal
30
+ env["ir.model.data"]._update_xmlids(
31
+ [
32
+ {
33
+ "xml_id": f"account.{company.id}_{xmlid}",
34
+ "record": journal,
35
+ "noupdate": True,
36
+ }
37
+ ]
38
+ )
39
+
40
+
41
+ @openupgrade.migrate()
42
+ def migrate(env, version):
43
+ _assign_journal_xmlids(env)
@@ -508,7 +508,7 @@ def _map_chart_template_id_to_chart_template(
508
508
  `l10n_` prefix removed (usually the country's iso code)
509
509
  """
510
510
  env.cr.execute(
511
- f"""SELECT m.id, CONCAT(imd.module, '.', imd.name)
511
+ f"""SELECT m.{coa_m2o}, CONCAT(imd.module, '.', imd.name)
512
512
  FROM {model_table} m
513
513
  JOIN ir_model_data imd
514
514
  ON imd.model='account.chart.template'
@@ -2,8 +2,6 @@
2
2
  # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
3
  from openupgradelib import openupgrade
4
4
 
5
- from odoo.tools.sql import convert_column_translatable
6
-
7
5
  _fields_renames = [
8
6
  (
9
7
  "res.company",
@@ -73,7 +71,6 @@ def _convert_account_tax_description(env):
73
71
  openupgrade.rename_columns(
74
72
  env.cr, {"account_tax": [("description", "invoice_label")]}
75
73
  )
76
- convert_column_translatable(env.cr, "account_tax", "invoice_label", "jsonb")
77
74
 
78
75
 
79
76
  def _am_create_delivery_date_column(env):
@@ -198,6 +195,26 @@ def _pre_create_early_pay_discount_computation(env):
198
195
  )
199
196
 
200
197
 
198
+ def _pre_account_move_line_invoice_date_computation(env):
199
+ """Avoid triggering the computed method"""
200
+ openupgrade.logged_query(
201
+ env.cr,
202
+ """
203
+ ALTER TABLE account_move_line
204
+ ADD COLUMN IF NOT EXISTS invoice_date DATE;
205
+ """,
206
+ )
207
+ openupgrade.logged_query(
208
+ env.cr,
209
+ """
210
+ UPDATE account_move_line aml
211
+ SET invoice_date = am.invoice_date
212
+ FROM account_move am
213
+ WHERE am.invoice_date IS NOT NULL AND aml.move_id = am.id;
214
+ """,
215
+ )
216
+
217
+
201
218
  def _decouple_obsolete_tables(env):
202
219
  """
203
220
  Remove all foreign keys held by and pointed to template tables
@@ -283,6 +300,7 @@ def migrate(env, version):
283
300
  _account_report_update_figure_type(env)
284
301
  _account_tax_repartition_line_merge_repartition_lines_m2o(env)
285
302
  _pre_create_early_pay_discount_computation(env)
303
+ _pre_account_move_line_invoice_date_computation(env)
286
304
  _decouple_obsolete_tables(env)
287
305
  _pre_create_account_report_active(env)
288
306
  _remove_obsolete_constraints(env)
@@ -167,7 +167,7 @@ account / account.move.line / display_type (selection) : select
167
167
  # NOTHING TO DO: new feature "Discount allocation" https://github.com/odoo/odoo/pull/133286
168
168
 
169
169
  account / account.move.line / invoice_date (date) : NEW isrelated: related, stored
170
- # NOTHING TO DO: ORM resolves by SQL this filling being a direct related field with 1 level depth.
170
+ # DONE: pre-migration: Pre-create the column for avoiding triggering the compute and transfer data from account moves to all the account move lines.
171
171
 
172
172
  account / account.move.line / tax_audit (char) : DEL
173
173
  # NOTHING TO DO: deprecated
@@ -0,0 +1,5 @@
1
+ ---Models in module 'account_debit_note'---
2
+ ---Fields in module 'account_debit_note'---
3
+ ---XML records in module 'account_debit_note'---
4
+ NEW ir.actions.server: account_debit_note.action_move_debit_note
5
+ # NOTHING TO DO: New feature
@@ -3,10 +3,13 @@ from openupgradelib import openupgrade
3
3
 
4
4
 
5
5
  def _res_partner_compute_fields_values(env):
6
- res_partner = env["res.partner"].with_context(active_test=False).search([])
7
- res_partner._compute_ubl_cii_format()
8
- res_partner._compute_peppol_endpoint()
9
- res_partner._compute_peppol_eas()
6
+ partners = (
7
+ env["res.partner"]
8
+ .with_context(active_test=False)
9
+ .search(["|", ("country_id", "!=", False), ("vat", "!=", False)])
10
+ )
11
+ partners._compute_ubl_cii_format()
12
+ partners._compute_peppol_eas()
10
13
 
11
14
 
12
15
  @openupgrade.migrate()
@@ -0,0 +1,5 @@
1
+ ---Models in module 'account_fleet'---
2
+ ---Fields in module 'account_fleet'---
3
+ ---XML records in module 'account_fleet'---
4
+ ---nothing has changed in this module--
5
+ # NOTHING TO DO
@@ -0,0 +1,4 @@
1
+ ---Models in module 'auth_ldap'---
2
+ ---Fields in module 'auth_ldap'---
3
+ ---XML records in module 'auth_ldap'---
4
+ ---nothing has changed in this module--
@@ -45,6 +45,32 @@ _column_renames = {
45
45
  }
46
46
 
47
47
 
48
+ def _handle_l10n_de_mis_reports_xmlids(cr):
49
+ """Before executing the merged modules, we need to rename some XML-IDs with the same
50
+ name of l10n_de_skr03_mis_reports/l10n_de_skr04_mis_reports into
51
+ l10n_de_mis_reports.
52
+ """
53
+ if not openupgrade.is_module_installed(
54
+ cr, "l10n_de_skr03_mis_reports"
55
+ ) and not openupgrade.is_module_installed(cr, "l10n_de_skr04_mis_reports"):
56
+ return
57
+ _xmlids_renames = []
58
+ # fmt: off
59
+ bs_names = ["anlagevermoegen", "immaterielle", "schutzrechte", "konzessionen", "firmenwert", "geleistetet_anzahlungen", "total_immaterielle", "grundstueck", "maschinen", "ausstattung", "anlagen_im_bau", "total_sachanlagen", "anteile", "ausleihungen", "beteiligungen", "ausleihungen_beteiligung", "wertpapiere_av", "sonstige_ausleihungen", "total_finanzanlagen", "total_anlagevermoegen", "umlaufvermoegen", "i_vorraete", "roh_hilfs_betriebsstoffe", "unfertige_leistungen", "fertige_erzeugnisse", "anzahlungen", "total_vorraete", "ii_forderungen", "forderungen_ll", "forderungen_unternehmen", "forderungen_beteiligungen", "total_forderungen", "iii_wertpapiere", "wertpapiere_uv_anteile", "wertpapiere_uv_sonstige", "total_wertpapiere_uv", "liquide_mittel", "total_umlaufvermoegen", "rechnungsabgrenzung_aktiva", "aktive_latente_steuern", "fehlbetrag", "aktivseite", "eigenkapital", "gezeichnetes_kapital", "variables_kapital", "gewinnruecklage", "ruecklage_gesetzlich", "ruecklage_eigene_anteile", "ruecklage_satzung", "ruecklage_andere_gewinne", "gewinn_des_jahres", "total_gewinnruecklage", "gewinn_verlustvortrag", "jahresgewinn_verlust", "sopo_mit_ruecklage", "total_eigenkapital", "rueckstellungen", "rueckstellungen_pensionen", "rueckstellungen_steuern", "rueckstellungen_sonstige", "total_rueckstellungen", "verbindlichkeiten", "verbindlichkeiten_anleihen", "verbindlichkeiten_bank", "verbindlichkeiten_ll", "verbindlichkeiten_wechsel", "verbindlichkeiten_sonstige", "total_verbindlichkeiten", "rechnungsabgrenzung_passiva", "passive_latente_steuern", "passivseite"] # noqa: E501
60
+ pl_names = ["betriebliche_erloese", "umsatzerloese", "bestandsveraenderungen", "eigenleistungen", "sonstige_ertraege", "total_erloese", "betriebsaufwand", "materialaufwand", "materialaufwand_a", "materialaufwand_b", "personalaufwand", "personalaufwand_a", "personalaufwand_b", "abschreibungen", "abschreibungen_a", "abschreibungen_b", "sonstige_aufwendungen", "total_aufwendungen", "total_betriebsergebnis", "ertraege_beteiligungen", "ertraege_wertpapiere", "zinsertraege", "zinsaufwendungen", "ergebnis_gewoehnliche", "ao_ergebnis", "ao_ergebnis_erloese", "ao_ergebnis_aufwendungen", "total_ao_ergebnis", "steuern", "steuern_ertrag", "sonstige_steuern", "gewinn_verlust", "gewinnvortrag_vj", "entnahme_kapitalruecklage", "entnahme_gewinnruecklage", "einstellung_ruecklage", "bilanzgewinn"] # noqa: E501
61
+ # fmt: on
62
+ for coa in ("skr03", "skr04"):
63
+ for report in ("mis_report_bs", "mis_report_pl"):
64
+ for name in [""] + bs_names + pl_names:
65
+ _xmlids_renames.append(
66
+ (
67
+ f"l10n_de_{coa}_mis_reports.{report}{'_' if name else ''}{name}", # noqa: E501
68
+ f"l10n_de_mis_reports.{report}_{coa}{'_' if name else ''}{name}", # noqa: E501
69
+ )
70
+ )
71
+ openupgrade.rename_xmlids(cr, _xmlids_renames)
72
+
73
+
48
74
  def _fill_ir_server_object_lines_into_action_server(cr):
49
75
  openupgrade.logged_query(
50
76
  cr,
@@ -196,6 +222,8 @@ def _handle_partner_private_type(cr):
196
222
  openupgrade.copy_columns(cr, _column_copies)
197
223
  # Change contact type and erase sensitive information
198
224
  query = "type = 'contact'"
225
+ # name of private contact may be null, which is forbidden by res_partner_check_name
226
+ query += ", name = COALESCE(name, '*****')"
199
227
  for field in [
200
228
  "street",
201
229
  "street2",
@@ -236,6 +264,7 @@ def migrate(cr, version):
236
264
  "when migrating your database."
237
265
  )
238
266
  openupgrade.update_module_names(cr, renamed_modules.items())
267
+ _handle_l10n_de_mis_reports_xmlids(cr)
239
268
  openupgrade.update_module_names(cr, merged_modules.items(), merge_modules=True)
240
269
  openupgrade.clean_transient_models(cr)
241
270
  openupgrade.rename_xmlids(cr, _xmlids_renames)
@@ -67,6 +67,16 @@ def hr_attendance_menus(env):
67
67
  ]
68
68
  }
69
69
  )
70
+ openupgrade.rename_xmlids(
71
+ env.cr,
72
+ [
73
+ (
74
+ "hr_attendance.group_hr_attendance",
75
+ "hr_attendance.group_hr_attendance_own_reader",
76
+ ),
77
+ ],
78
+ allow_merge=True,
79
+ )
70
80
  # Remove the groups of 16.0 from the Attendances > Kiosk Mode menu
71
81
  env.ref("hr_attendance.menu_hr_attendance_kiosk_no_user_mode").write(
72
82
  {
@@ -75,6 +85,16 @@ def hr_attendance_menus(env):
75
85
  ]
76
86
  }
77
87
  )
88
+ openupgrade.rename_xmlids(
89
+ env.cr,
90
+ [
91
+ (
92
+ "hr_attendance.group_hr_attendance_kiosk",
93
+ "hr_attendance.group_hr_attendance_own_reader",
94
+ ),
95
+ ],
96
+ allow_merge=True,
97
+ )
78
98
 
79
99
 
80
100
  @openupgrade.migrate()
@@ -102,7 +102,8 @@ DEL res.groups: hr_attendance.group_hr_attendance_user
102
102
 
103
103
  NEW res.groups: hr_attendance.group_hr_attendance_own_reader
104
104
  DEL res.groups: hr_attendance.group_hr_attendance_kiosk
105
- # DONE: pre-migration: rename group
105
+ # DONE: post-migration: merge group
106
106
 
107
+ NEW res.groups: hr_attendance.group_hr_attendance_own_reader
107
108
  DEL res.groups: hr_attendance.group_hr_attendance
108
- # NOTHING TO DO
109
+ # DONE: post-migration: merge group
@@ -20,6 +20,18 @@ _column_renames = {
20
20
  ],
21
21
  }
22
22
 
23
+ _field_add = [
24
+ (
25
+ "number_of_hours",
26
+ "hr.leave",
27
+ "hr_leave",
28
+ "float",
29
+ None,
30
+ "hr_holidays",
31
+ 0.0,
32
+ ),
33
+ ]
34
+
23
35
 
24
36
  def _pre_create_accrual_plan_active(cr):
25
37
  """
@@ -156,6 +168,7 @@ def migrate(env, version):
156
168
  openupgrade.rename_models(env.cr, _model_renames)
157
169
  openupgrade.rename_tables(env.cr, _table_renames)
158
170
  openupgrade.rename_columns(env.cr, _column_renames)
171
+ openupgrade.add_fields(env, _field_add)
159
172
  _pre_create_accrual_plan_active(env.cr)
160
173
  _hr_leave_company_id(env.cr)
161
174
  _map_leave_accrual_level_action(env.cr)
@@ -29,8 +29,10 @@ hr_holidays / hr.leave / mode_company_id (many2one) : not a
29
29
  # NOTHING TO DO: states removed only
30
30
 
31
31
  hr_holidays / hr.leave / number_of_days (float) : now a function
32
+ # NOTHING TO DO
33
+
32
34
  hr_holidays / hr.leave / number_of_hours (float) : NEW isfunction: function, stored
33
- # NOTHING TO DO: computed fields
35
+ # DONE: pre-migration: add column for avoiding the computation
34
36
 
35
37
  hr_holidays / hr.leave / rating_ids (one2many) : NEW relation: rating.rating
36
38
  hr_holidays / hr.leave / resource_calendar_id (many2one): NEW relation: resource.calendar, hasdefault: compute
@@ -0,0 +1,11 @@
1
+ ---Models in module 'hr_recruitment_skills'---
2
+ ---Fields in module 'hr_recruitment_skills'---
3
+ ---XML records in module 'hr_recruitment_skills'---
4
+ DEL ir.model.access: hr_recruitment_skills.access_hr_applicant_skill
5
+ # NOTHING TO DO: Handled by ORM
6
+
7
+ NEW ir.rule: hr_recruitment_skills.hr_applicant_skill_officer_rule (noupdate)
8
+ # NOTHING TO DO: new security rules added in https://github.com/odoo/odoo/commit/3faad0a7a057c9e620e3b6f58d191f64bece6fb8
9
+
10
+ NEW ir.ui.menu: hr_recruitment_skills.hr_recruitment_skill_type_menu
11
+ # NOTHING TO DO: Handled by ORM
@@ -0,0 +1,20 @@
1
+ ---Models in module 'hr_skills'---
2
+ new model hr.employee.cv.wizard [transient]
3
+ new model report.hr_skills.report_employee_cv [abstract]
4
+ # NOTHING TO DO: New transient or abstract models
5
+
6
+ ---Fields in module 'hr_skills'---
7
+ ---XML records in module 'hr_skills'---
8
+ NEW hr.skill.type: hr_skills.hr_skill_type_lang (noupdate)
9
+ NEW ir.actions.act_window: hr_skills.action_hr_employee_cv_wizard
10
+ NEW ir.actions.report: hr_skills.action_report_employee_cv
11
+ NEW ir.actions.server: hr_skills.action_print_employees_cv
12
+ DEL ir.actions.server: hr_skills.action_open_skills_log_employee
13
+ NEW ir.model.access: hr_skills.access_hr_employee_cv_wizard
14
+ NEW ir.ui.view: hr_skills.hr_employee_cv_wizard_view_form
15
+ NEW ir.ui.view: hr_skills.report_employee_cv
16
+ NEW ir.ui.view: hr_skills.report_employee_cv_company
17
+ NEW ir.ui.view: hr_skills.report_employee_cv_main_panel
18
+ NEW ir.ui.view: hr_skills.report_employee_cv_sidepanel
19
+ NEW report.paperformat: hr_skills.paperformat_resume
20
+ # NOTHING TO DO: new stuff or delete noupdate=0 ir stuff
@@ -0,0 +1,5 @@
1
+ ---Models in module 'hr_skills_slides'---
2
+ ---Fields in module 'hr_skills_slides'---
3
+ ---XML records in module 'hr_skills_slides'---
4
+ ---nothing has changed in this module--
5
+ # NOTHING TO DO
@@ -0,0 +1,22 @@
1
+ # Copyright 2025 Tecnativa - Pedro M. Baeza
2
+ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
+ from openupgradelib import openupgrade
4
+
5
+
6
+ @openupgrade.migrate()
7
+ def migrate(env, version):
8
+ openupgrade.add_columns(
9
+ env, [(False, "expiration_status", "char", "valid", "hr_resume_line")]
10
+ )
11
+ openupgrade.logged_query(
12
+ env.cr,
13
+ """
14
+ UPDATE hr_resume_line
15
+ SET expiration_status = CASE
16
+ WHEN date_end <= now() at time zone 'utc' THEN 'expired'
17
+ WHEN date_end <= (now() - INTERVAL '3 MONTHS') at time zone 'utc'
18
+ THEN 'expiring'
19
+ END
20
+ WHERE date_end IS NOT NULL
21
+ """,
22
+ )
@@ -0,0 +1,14 @@
1
+ ---Models in module 'hr_skills_survey'---
2
+ ---Fields in module 'hr_skills_survey'---
3
+ hr_skills_survey / hr.resume.line / department_id (many2one) : NEW relation: hr.department, isrelated: related, stored
4
+ # NOTHING TO DO: ORM already handles this efficiently with a SQL initializing the field
5
+
6
+ hr_skills_survey / hr.resume.line / expiration_status (selection) : NEW selection_keys: ['expired', 'expiring', 'valid'], isfunction: function, stored
7
+ # DONE: pre-migration: Pre-created and fast-filled
8
+
9
+ ---XML records in module 'hr_skills_survey'---
10
+ NEW ir.actions.act_window: hr_skills_survey.hr_employee_certification_report_action
11
+ NEW ir.ui.menu: hr_skills_survey.hr_employee_certication_report_menu
12
+ NEW ir.ui.view: hr_skills_survey.hr_employee_certification_report_view_list
13
+ NEW ir.ui.view: hr_skills_survey.hr_resume_line_view_search
14
+ # NOTHING TO DO: new ir stuff
@@ -0,0 +1,16 @@
1
+ # Copyright 2025 Tecnativa - Pedro M. Baeza
2
+ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
+ from openupgradelib import openupgrade
4
+
5
+
6
+ @openupgrade.migrate()
7
+ def migrate(env, version):
8
+ l10n_be_xmlids = [
9
+ "tax_group_tva_0",
10
+ "tax_group_tva_12",
11
+ "tax_group_tva_21",
12
+ "tax_group_tva_6",
13
+ ]
14
+ openupgrade.delete_records_safely_by_xml_id(
15
+ env, [f"l10n_be.{x}" for x in l10n_be_xmlids]
16
+ )