odoo-addon-openupgrade-scripts 18.0.1.0.0.360__py3-none-any.whl → 18.0.1.0.0.367__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.
@@ -134,7 +134,7 @@ def adapt_account_move_sending_data(env):
134
134
  '{author_user_id}', sending_data::jsonb->'sp_user_id')
135
135
  WHERE sending_data IS NOT NULL AND sending_data::jsonb ? 'sp_user_id'""",
136
136
  )
137
- # send_mail: True -> 'sending_methods': {"email"}:
137
+ # send_mail: True -> 'sending_methods': ["email"]:
138
138
  openupgrade.logged_query(
139
139
  env.cr,
140
140
  """
@@ -127,7 +127,7 @@ new model website.page.properties.base [module website]
127
127
  # Found with different type: 8
128
128
  # In obsolete models: 34
129
129
  # New columns: 1651
130
- # Not matched: 844
130
+ # Not matched: 845
131
131
  ---XML records in module 'general'---
132
132
  ERROR: module not in list of installed modules:
133
133
  ---Models in module 'pos_mercury'---
@@ -0,0 +1,20 @@
1
+ # Copyright 2025 L4 Tech S.L.
2
+ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
+
4
+ from openupgradelib import openupgrade
5
+
6
+
7
+ def delete_noupdate_xml_ids(env):
8
+ openupgrade.delete_records_safely_by_xml_id(
9
+ env,
10
+ [
11
+ "microsoft_calendar.microsoft_calendar_not_own_token_rule",
12
+ "microsoft_calendar.microsoft_calendar_own_token_rule",
13
+ "microsoft_calendar.microsoft_calendar_token_system_access",
14
+ ],
15
+ )
16
+
17
+
18
+ @openupgrade.migrate()
19
+ def migrate(env, version):
20
+ delete_noupdate_xml_ids(env)
@@ -0,0 +1,82 @@
1
+ # Copyright 2025 L4 Tech S.L.
2
+ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
+
4
+ from openupgradelib import openupgrade
5
+
6
+
7
+ def calendar_precompute_ms_universal_event_id(env):
8
+ """
9
+ Now in 18.0 the ms_universal_event_id is no longer computed from microsoft_id
10
+ - https://github.com/odoo/odoo/blob/18.0/addons/microsoft_calendar/models/microsoft_sync.py#L411
11
+ Now the id is defined directly from the Microsoft API call, more
12
+ specifically field 'iCalUId'
13
+ - https://github.com/odoo/odoo/blob/18.0/addons/microsoft_calendar/utils/microsoft_calendar.py#L159
14
+ So, in order for past calendar events and calendar recurrence to have
15
+ a ms_universal_event_id we must precompute by splitting
16
+ by ':' the microsoft_id
17
+ - https://github.com/odoo/odoo/blob/18.0/addons/microsoft_calendar/models/microsoft_sync.py#L120
18
+ """
19
+
20
+ openupgrade.logged_query(
21
+ env.cr,
22
+ """
23
+ UPDATE calendar_recurrence
24
+ SET ms_universal_event_id = split_part(microsoft_id, ':', 2),
25
+ microsoft_id = split_part(microsoft_id, ':', 1)
26
+ WHERE microsoft_id LIKE '%:%';
27
+ """,
28
+ )
29
+
30
+ openupgrade.logged_query(
31
+ env.cr,
32
+ """
33
+ UPDATE calendar_event
34
+ SET ms_universal_event_id = split_part(microsoft_id, ':', 2),
35
+ microsoft_id = split_part(microsoft_id, ':', 1)
36
+ WHERE microsoft_id LIKE '%:%';
37
+ """,
38
+ )
39
+
40
+
41
+ def microsoft_calendar_credentials_to_res_users_settings(env):
42
+ """
43
+ microsoft.calendar.credentials has been deleted and now settings are
44
+ stored in res.users.settings. For each user in microsoft.calendar.credentials
45
+ user_ids (one2many) field we must copy into that user's res.users.settings
46
+ (user_id, many2one) the following fields:
47
+ * calendar_sync_token -> microsoft_calendar_sync_token
48
+ * last_sync_date -> microsoft_last_sync_date
49
+ * synchronization_stopped -> microsoft_synchronization_stopped
50
+ """
51
+
52
+ openupgrade.logged_query(
53
+ env.cr,
54
+ """
55
+ UPDATE res_users_settings AS rus
56
+ SET
57
+ microsoft_calendar_sync_token = cred.calendar_sync_token,
58
+ microsoft_last_sync_date = cred.last_sync_date,
59
+ microsoft_synchronization_stopped = cred.synchronization_stopped
60
+ FROM res_users AS ru
61
+ JOIN microsoft_calendar_credentials AS cred
62
+ ON ru.microsoft_calendar_account_id = cred.id
63
+ WHERE rus.user_id = ru.id;
64
+ """,
65
+ )
66
+
67
+
68
+ @openupgrade.migrate()
69
+ def migrate(env, version):
70
+ openupgrade.add_columns(
71
+ env,
72
+ [
73
+ ("calendar.event", "ms_universal_event_id", "char"),
74
+ ("calendar.recurrence", "ms_universal_event_id", "char"),
75
+ ("res.users.settings", "microsoft_calendar_sync_token", "char"),
76
+ ("res.users.settings", "microsoft_last_sync_date", "datetime"),
77
+ ("res.users.settings", "microsoft_synchronization_stopped", "boolean"),
78
+ ],
79
+ )
80
+
81
+ calendar_precompute_ms_universal_event_id(env)
82
+ microsoft_calendar_credentials_to_res_users_settings(env)
@@ -0,0 +1,31 @@
1
+ ---Models in module 'microsoft_calendar'---
2
+ obsolete model microsoft.calendar.credentials (merged to res.users.settings)
3
+ # DONE: Merge into res.users.settings in pre-migrate
4
+
5
+ ---Fields in module 'microsoft_calendar'---
6
+ microsoft_calendar / calendar.event / ms_universal_event_id (char) : is now stored
7
+ microsoft_calendar / calendar.event / ms_universal_event_id (char) : not a function anymore
8
+ microsoft_calendar / calendar.recurrence / ms_universal_event_id (char) : is now stored
9
+ microsoft_calendar / calendar.recurrence / ms_universal_event_id (char) : not a function anymore
10
+ # DONE: Precompute in pre-migrate
11
+
12
+ microsoft_calendar / microsoft.calendar.credentials / calendar_sync_token (char) : DEL
13
+ microsoft_calendar / microsoft.calendar.credentials / last_sync_date (datetime) : DEL
14
+ microsoft_calendar / microsoft.calendar.credentials / synchronization_stopped (boolean): DEL
15
+ microsoft_calendar / microsoft.calendar.credentials / user_ids (one2many) : DEL relation: res.users, required
16
+ microsoft_calendar / res.users / microsoft_calendar_account_id (many2one): DEL relation: microsoft.calendar.credentials
17
+ microsoft_calendar / res.users.settings / microsoft_calendar_sync_token (char): NEW
18
+ microsoft_calendar / res.users.settings / microsoft_last_sync_date (datetime): NEW
19
+ microsoft_calendar / res.users.settings / microsoft_synchronization_stopped (boolean): NEW
20
+ # DONE: Merge into res.users.settings in pre-migrate
21
+
22
+ ---XML records in module 'microsoft_calendar'---
23
+ DEL ir.model.access: microsoft_calendar.access_microsoft_calendar_credentials
24
+ DEL ir.model.access: microsoft_calendar.microsoft_calendar_manager
25
+ DEL ir.model.constraint: microsoft_calendar.constraint_res_users_microsoft_token_uniq
26
+ # DONE: Nothing to do
27
+
28
+ DEL ir.rule: microsoft_calendar.microsoft_calendar_not_own_token_rule (noupdate)
29
+ DEL ir.rule: microsoft_calendar.microsoft_calendar_own_token_rule (noupdate)
30
+ DEL ir.rule: microsoft_calendar.microsoft_calendar_token_system_access (noupdate)
31
+ # DONE: Safely deleted in post-migration
@@ -0,0 +1,40 @@
1
+ # Copyright 2025 Tecnativa - Carlos Lopez
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
3
+ from openupgradelib import openupgrade
4
+
5
+
6
+ def _fill_restaurant_table_table_number(env):
7
+ # Update when name is numeric
8
+ openupgrade.logged_query(
9
+ env.cr,
10
+ """
11
+ UPDATE restaurant_table
12
+ SET table_number = name::integer
13
+ WHERE name ~ '^[0-9]+$';
14
+ """,
15
+ )
16
+ # Generate numbering by floor_id when 'name' is not numeric
17
+ openupgrade.logged_query(
18
+ env.cr,
19
+ """
20
+ WITH numbered AS (
21
+ SELECT id,
22
+ ROW_NUMBER() OVER (PARTITION BY floor_id ORDER BY id) AS rn
23
+ FROM restaurant_table
24
+ WHERE name !~ '^[0-9]+$'
25
+ )
26
+ UPDATE restaurant_table t
27
+ SET table_number = n.rn
28
+ FROM numbered n
29
+ WHERE t.id = n.id;
30
+ """,
31
+ )
32
+
33
+
34
+ @openupgrade.migrate()
35
+ def migrate(env, version):
36
+ _fill_restaurant_table_table_number(env)
37
+ openupgrade.delete_records_safely_by_xml_id(
38
+ env,
39
+ ["pos_restaurant.pos_config_main_restaurant"],
40
+ )
@@ -0,0 +1,14 @@
1
+ # Copyright 2025 Tecnativa - Carlos Lopez
2
+ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
3
+ from openupgradelib import openupgrade
4
+
5
+ field_renames = [
6
+ ("pos.config", "pos_config", "self_ordering_takeaway", "takeaway"),
7
+ ("pos.config", "pos_config", "self_ordering_alternative_fp_id", "takeaway_fp_id"),
8
+ ("pos.order", "pos_order", "take_away", "takeaway"),
9
+ ]
10
+
11
+
12
+ @openupgrade.migrate()
13
+ def migrate(env, version=None):
14
+ openupgrade.rename_fields(env, field_renames)
@@ -0,0 +1,34 @@
1
+ ---Models in module 'pos_restaurant'---
2
+ ---Fields in module 'pos_restaurant'---
3
+ pos_restaurant / pos.config / iface_orderline_notes (boolean): DEL
4
+ # NOTHING TO DO: Odoo enables by default the possibility to add a note into order lines without an additional setting
5
+ # see https://github.com/odoo/odoo/commit/f47b9a27e50266899e73b43a71c31621e57e8c6c
6
+
7
+ pos_restaurant / pos.config / module_pos_restaurant (False) : DEL mode: modify
8
+ # NOTHING TO DO: this field is present in the point_of_sale module.
9
+ # Odoo removed the default value of True, so when creating a new pos.config,
10
+ # enabling restaurant features must be an explicit user setting, without altering existing data.
11
+
12
+ pos_restaurant / pos.config / takeaway (boolean) : NEW
13
+ pos_restaurant / pos.config / takeaway_fp_id (many2one) : NEW relation: account.fiscal.position
14
+ pos_restaurant / pos.order / takeaway (boolean) : NEW hasdefault: default
15
+ # DONE: pre-migration: Moved from pos_self_order and renamed these fields
16
+ # see https://github.com/odoo/odoo/commit/1395065fe1283db957a99305bccc742483999485
17
+
18
+ pos_restaurant / pos.order.line / note (char) : module is now 'point_of_sale' ('pos_restaurant')
19
+ # NOTHING TO DO: field moved in commit https://github.com/odoo/odoo/commit/1b079fdc18bbede882ac8e68b81ca0516344aba6
20
+
21
+ pos_restaurant / restaurant.floor / floor_background_image (binary): NEW attachment: True
22
+ # NOTHING TO DO: New feature added in https://github.com/odoo/odoo/commit/b42b0f8b541a13621b671b0b7e57812ef11fc1b2
23
+
24
+ pos_restaurant / restaurant.table / name (char) : DEL required
25
+ pos_restaurant / restaurant.table / table_number (integer) : NEW required, hasdefault: default
26
+ # DONE: post-migration: convert char to integer where possible, otherwise generate a table number by floor_id
27
+ # see https://github.com/odoo/odoo/commit/e96cbbcc9656089da21afe57c16970fdd0621d1c
28
+
29
+ pos_restaurant / restaurant.table / parent_id (many2one) : NEW relation: restaurant.table
30
+ # NOTHING TO DO: new feature to merge tables, introduced in commit https://github.com/odoo/odoo/commit/fbd632a9a6a8a68618f0445c96e2c2746ffc907d
31
+
32
+ ---XML records in module 'pos_restaurant'---
33
+ DEL pos.config: pos_restaurant.pos_config_main_restaurant (noupdate)
34
+ # DONE: post-migration: safely delete
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo-addon-openupgrade_scripts
3
- Version: 18.0.1.0.0.360
3
+ Version: 18.0.1.0.0.367
4
4
  Requires-Python: >=3.10
5
5
  Requires-Dist: odoo==18.0.*
6
6
  Requires-Dist: openupgradelib
@@ -7,7 +7,7 @@ odoo/addons/openupgrade_scripts/readme/DESCRIPTION.md,sha256=6hwHccovmE9cfaV7PQP
7
7
  odoo/addons/openupgrade_scripts/readme/INSTALL.md,sha256=NDKVZRv0J8BTqcSTD7JwUXL_AY-cDJoegn5IUTbEOFk,113
8
8
  odoo/addons/openupgrade_scripts/scripts/account/18.0.1.3/noupdate_changes.xml,sha256=givzahE7VAv9gM1TkNDHs3qhNh3AZacox5q-hDuDjIU,4078
9
9
  odoo/addons/openupgrade_scripts/scripts/account/18.0.1.3/post-migration.py,sha256=H-mx1NIfSfZvHghcvYRKHWJoZQEWJc9psTTL1Sbn33g,6519
10
- odoo/addons/openupgrade_scripts/scripts/account/18.0.1.3/pre-migration.py,sha256=Lm8x-SdarGIuUap9amSVUHCY_gFWotlPlUYrgbkDoR0,8249
10
+ odoo/addons/openupgrade_scripts/scripts/account/18.0.1.3/pre-migration.py,sha256=WfnU5dP1a6Xxoz_kr7QzKpgycCGFhlAOvKtHM2fm3ok,8249
11
11
  odoo/addons/openupgrade_scripts/scripts/account/18.0.1.3/upgrade_analysis.txt,sha256=xpQwQxWn0ktacfLBgmRuRMjvSY9R4ClAQlfLJRs35Tg,21369
12
12
  odoo/addons/openupgrade_scripts/scripts/account/18.0.1.3/upgrade_analysis_work.txt,sha256=IHraqatQaxlTvOPt0HE9Uca1y_qw1ZsUF-fB2PnQIH8,25211
13
13
  odoo/addons/openupgrade_scripts/scripts/account/tests/data.py,sha256=beOIEOzb6-hvlpjM9VVZrSj8pqZ6U7AcrS-w3vkTgsU,490
@@ -56,7 +56,7 @@ odoo/addons/openupgrade_scripts/scripts/base/18.0.1.3/post-migration.py,sha256=f
56
56
  odoo/addons/openupgrade_scripts/scripts/base/18.0.1.3/pre-migration.py,sha256=eGEjAYIoYmIQGTQ3QwpE_6FGUJvvmgK35oE1jNqRWJE,2371
57
57
  odoo/addons/openupgrade_scripts/scripts/base/18.0.1.3/upgrade_analysis.txt,sha256=zn2pp5rMSMiAoUgIgLEZ8DivttarkojVX1v3xZY2Ry8,22324
58
58
  odoo/addons/openupgrade_scripts/scripts/base/18.0.1.3/upgrade_analysis_work.txt,sha256=DtjRkyr9Xu9MZt-NvAOmUYdd9kgJErm-KOfzZOriBXc,23232
59
- odoo/addons/openupgrade_scripts/scripts/base/18.0.1.3/upgrade_general_log.txt,sha256=iZA6fv4czQ5dUX4rhV87p5Zyrx2M3_aT4AhQpNl7LUk,12169
59
+ odoo/addons/openupgrade_scripts/scripts/base/18.0.1.3/upgrade_general_log.txt,sha256=nE1mPhiSG3jP8S3iSBSTQhInSuggFuWm3czRHCvPkGw,12169
60
60
  odoo/addons/openupgrade_scripts/scripts/base/tests/data_base_migration.py,sha256=G4qE5if25WvkEBxDp3S9QfVRFiD4MV7bZFeagvp5qL8,302
61
61
  odoo/addons/openupgrade_scripts/scripts/base/tests/test_base_migration.py,sha256=jj1GMmV4SX_5q9t-PvIlD1pSR6_swUcpcKKe3r2ZT4E,703
62
62
  odoo/addons/openupgrade_scripts/scripts/base_address_extended/18.0.1.1/upgrade_analysis.txt,sha256=ZOyM6AVCXejBYRawvroMqOMDKsira10CnD6UG46UG7U,186
@@ -414,7 +414,10 @@ odoo/addons/openupgrade_scripts/scripts/membership/18.0.1.0/upgrade_analysis.txt
414
414
  odoo/addons/openupgrade_scripts/scripts/membership/18.0.1.0/upgrade_analysis_work.txt,sha256=d0FICCjOzYfjAg2UJJafby4vvrBCDX4eTiSbGKGbmYs,174
415
415
  odoo/addons/openupgrade_scripts/scripts/microsoft_account/18.0.1.0/upgrade_analysis.txt,sha256=A-hAfz4jaf1_-Uw2-6JP4inCGDe6LXPvVvXb7Dk9Nyc,174
416
416
  odoo/addons/openupgrade_scripts/scripts/microsoft_account/18.0.1.0/upgrade_analysis_work.txt,sha256=WOW-rrbxfYPAZz5opiZYc5BvWAD1m20_d_0wGyxJ3rQ,190
417
+ odoo/addons/openupgrade_scripts/scripts/microsoft_calendar/18.0.1.0/post-migration.py,sha256=SnU1iPijeRJffbCYkY023UCuPXWPPU5JIpSBRoVh2gA,558
418
+ odoo/addons/openupgrade_scripts/scripts/microsoft_calendar/18.0.1.0/pre-migration.py,sha256=6jpZHXM9bTfehEeLxi01XrGlN1SZLEWa0ltMM0fBW4Y,3071
417
419
  odoo/addons/openupgrade_scripts/scripts/microsoft_calendar/18.0.1.0/upgrade_analysis.txt,sha256=zXEF6tSbLrHHge5W0qcIcJ1aefiiYSb7TNSoNf5ODuI,1883
420
+ odoo/addons/openupgrade_scripts/scripts/microsoft_calendar/18.0.1.0/upgrade_analysis_work.txt,sha256=Zh4mAb58nwUKpeloaPTz7XDVwKKhnjGH8jLty4m1iu0,2090
418
421
  odoo/addons/openupgrade_scripts/scripts/microsoft_outlook/18.0.1.1/upgrade_analysis.txt,sha256=z2Avhmp69lxCI-2aP3WRa-FuJ0AIAwjSuGokMGfjdnc,174
419
422
  odoo/addons/openupgrade_scripts/scripts/microsoft_outlook/18.0.1.1/upgrade_analysis_work.txt,sha256=yLsE0lZ5aLI6PJek3ToPUWCSGgXzQPJzsIrouxBLwww,190
420
423
  odoo/addons/openupgrade_scripts/scripts/mrp/18.0.2.0/post-migration.py,sha256=_bqyQPj6zoUiW_bSzeSIQul8F7FhHY1lahmDVPh4LOI,906
@@ -497,7 +500,10 @@ odoo/addons/openupgrade_scripts/scripts/pos_online_payment_self_order/18.0.1.0/u
497
500
  odoo/addons/openupgrade_scripts/scripts/pos_paytm/18.0.1.0/upgrade_analysis.txt,sha256=IxTqqzAKdP7jmUA2WEYmtjEFd2Na5OLdhwDXlqfaUCM,626
498
501
  odoo/addons/openupgrade_scripts/scripts/pos_pine_labs/18.0.1.0/upgrade_analysis.txt,sha256=D8tPgzeckSzVb4hdYvmA9C0YV3YdWRmjRaYmVPskgiA,887
499
502
  odoo/addons/openupgrade_scripts/scripts/pos_razorpay/18.0.1.0/upgrade_analysis.txt,sha256=VJ86JFGUejTpUwl09PvwRLUns5_TnI8uqsHzyF7Tljk,717
503
+ odoo/addons/openupgrade_scripts/scripts/pos_restaurant/18.0.1.0/post-migration.py,sha256=I_rRXx1zK7NLa2dbLBvALPKQZMZUn_gjOzyZ1vJ0k9Y,1100
504
+ odoo/addons/openupgrade_scripts/scripts/pos_restaurant/18.0.1.0/pre-migration.py,sha256=FiGbjpqEQVsB7_LDULFNWZE-EC2D1-f7Wt2t-CH_Dfo,490
500
505
  odoo/addons/openupgrade_scripts/scripts/pos_restaurant/18.0.1.0/upgrade_analysis.txt,sha256=ITt5Zr1UJxJ4Y0Uhxu1hNrz80km84qgwQ4bT4gOZti8,1191
506
+ odoo/addons/openupgrade_scripts/scripts/pos_restaurant/18.0.1.0/upgrade_analysis_work.txt,sha256=g1NPzT0oI9tuoSX3EEl2mHXb4Flfx8CgU2fF8wBXQsI,2404
501
507
  odoo/addons/openupgrade_scripts/scripts/pos_restaurant_adyen/18.0.1.0/upgrade_analysis.txt,sha256=Tm2XlP6Xsn-oIwmeP2NtJVhLNxYn4BPoB3nw8b7CMJ4,183
502
508
  odoo/addons/openupgrade_scripts/scripts/pos_sale/18.0.1.1/pre-migration.py,sha256=rn6-LXg_CSwx5-Wn40bksNQqcBroH5585LAHXk5vVhU,1089
503
509
  odoo/addons/openupgrade_scripts/scripts/pos_sale/18.0.1.1/upgrade_analysis.txt,sha256=yuDVy8-bw2z45Gh6TOAKtUq-HvC3d8_jRtwvhENjTMI,257
@@ -760,7 +766,7 @@ odoo/addons/openupgrade_scripts/scripts/website_slides_survey/18.0.1.0/upgrade_a
760
766
  odoo/addons/openupgrade_scripts/static/description/banner.png,sha256=KTIBu4gfxeZVw9zjs_fivTgFEOeaAorlBxajmCA1p6k,26859
761
767
  odoo/addons/openupgrade_scripts/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
762
768
  odoo/addons/openupgrade_scripts/static/description/index.html,sha256=Jc0qAThlH5WnoSq6vPamjC8WyMkdo_9zkhDuU1qW1VI,12722
763
- odoo_addon_openupgrade_scripts-18.0.1.0.0.360.dist-info/METADATA,sha256=v3XdUMeP-IjuNc5lpDOvxbc8FtilK9tWjQ6gJE4u4pE,3812
764
- odoo_addon_openupgrade_scripts-18.0.1.0.0.360.dist-info/WHEEL,sha256=ZhOvUsYhy81Dx67gN3TV0RchQWBIIzutDZaJODDg2Vo,81
765
- odoo_addon_openupgrade_scripts-18.0.1.0.0.360.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
766
- odoo_addon_openupgrade_scripts-18.0.1.0.0.360.dist-info/RECORD,,
769
+ odoo_addon_openupgrade_scripts-18.0.1.0.0.367.dist-info/METADATA,sha256=sAiwdaAi01aFqf_CWwpeULotswpppzWhEeTZ1nAwNw8,3812
770
+ odoo_addon_openupgrade_scripts-18.0.1.0.0.367.dist-info/WHEEL,sha256=ZhOvUsYhy81Dx67gN3TV0RchQWBIIzutDZaJODDg2Vo,81
771
+ odoo_addon_openupgrade_scripts-18.0.1.0.0.367.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
772
+ odoo_addon_openupgrade_scripts-18.0.1.0.0.367.dist-info/RECORD,,