|
|
for rec in self:
version_model = rec.env["odoo.module.branch.version"]
current_release_versions = version_model.search(
[
("module_branch_id", "=", rec.source_module_branch_id.id),
(
"sequence",
">",
rec.project_module_id.installed_version_id.sequence,
),
("has_migration_script", "=", True),
],
order="sequence",
)
# Collect versions with migration scripts accross next modules
# taking into account module renaming/replacement
target_branch = rec.migration_path_id.target_branch_id
next_modules = rec.source_module_branch_id._get_next_module_branches(
target_branch
)
new_release_versions = next_modules.version_ids.filtered(
"has_migration_script"
).sorted(key=lambda v: (v.branch_sequence, v.sequence))
rec.migration_script_ids = current_release_versions | new_release_versions
|
|