Daily updates from Odoo
Sunday, June 22, 2025
11 changes · master
Enhancements to existing features
This update improves automated website and portal test tours by explicitly marking steps that navigate away or reload the page. It helps make testing more reliable across appointment, documents, helpdesk, point of sale, sign, planning, and localization flows without changing normal user functionality.
Original PR description
In this commit, we add expectUnloadPage to steps that require it to explicitly declare that the step will cause the page to be unloaded.
Resolved issues and error corrections
This update removes outdated setup logic and hidden settings that are no longer needed because Field Service projects are now billable by default. The change helps keep the system simpler and reduces the chance of inconsistent project configuration behind the scenes.
Original PR description
Related to the community PR: https://github.com/odoo/odoo/pull/215114 We remove some unused code about the 'partner_id' blacklist fields, and remove some context keys as we make the projects billable by default now. task-4700746
Miscellaneous changes
Fixed onboarding document tours which was not working properly. Task-4210376 Forward-Port-Of: odoo/enterprise#72639 Forward-Port-Of: odoo/enterprise#70900
Original PR description
Fixed onboarding document tours which was not working properly. Task-4210376 Forward-Port-Of: odoo/enterprise#72639 Forward-Port-Of: odoo/enterprise#70900
For lot/serial manufactured products with a 'register production' check: - the prefilled lot on MO's form do not appear on Shop Floor - the (+) button always generate a new lot, overwriting the prefilled one We want the Shop Floor to show and take in account the prefilled lot id. task: 4840332 Forward-Port-Of: odoo/enterprise#87163
Original PR description
For lot/serial manufactured products with a 'register production' check: - the prefilled lot on MO's form do not appear on Shop Floor - the (+) button always generate a new lot, overwriting the prefilled one We want the Shop Floor to show and take in account the prefilled lot id. task: 4840332 Forward-Port-Of: odoo/enterprise#87163
This commit reverts the changes made in the following PR: https://github.com/odoo/enterprise/pull/80136. This change implied heavy changes in processes, which are unnecessary. The behavior is reverted to unarchive offer contracts upon applicant signature. task-4805608 Related revert PR: https://github.com/odoo/enterprise/pull/80136 Forward-Port-Of: odoo/enterprise#86207
Original PR description
This commit reverts the changes made in the following PR: https://github.com/odoo/enterprise/pull/80136. This change implied heavy changes in processes, which are unnecessary. The behavior is reverted to unarchive offer contracts upon applicant signature. task-4805608 Related revert PR: https://github.com/odoo/enterprise/pull/80136 Forward-Port-Of: odoo/enterprise#86207
Reproduce: 1. Install Accounting 2. Accounting > Bank: Click on some unreconciled statement line There are some buttons like "Internal Transfer" representing reconciliation models. 3. Delete all reconciliation models. 4. Accounting > Bank: Click on some unreconciled statement line There is a button w/o label. Clicking on it gives an error. (In debug mode the button generation gives an error already) There should be no buttons at all The issue is that the `get_available_reconcile_model_per
Original PR description
Reproduce: 1. Install Accounting 2. Accounting > Bank: Click on some unreconciled statement line There are some buttons like "Internal Transfer" representing reconciliation models. 3. Delete all…
Reproduce:
1. Install Accounting
2. Accounting > Bank: Click on some unreconciled statement line There are some buttons like "Internal Transfer" representing reconciliation models.
3. Delete all reconciliation models.
4. Accounting > Bank: Click on some unreconciled statement line There is a button w/o label. Clicking on it gives an error. (In debug mode the button generation gives an error already) There should be no buttons at all
The issue is that the `get_available_reconcile_model_per_statement_line` can return sth like this in case no reconcilation model was found for statement lines with id 18, 19, 20, 21.
```python
{
18: [{'id': None, 'display_name': None}],
19: [{'id': None, 'display_name': None}],
20: [{'id': None, 'display_name': None}],
21: [{'id': None, 'display_name': None}]
}
```
Since the javascript code assumes that `{'id': None, 'display_name': None}` actually represents a reconciliation model, the error occurs.
After this commit `{'id': None, 'display_name': None}` entries should not appear anymore. In the example an empty dictionary would be returned
task: None
Forward-Port-Of: odoo/enterprise#88140This [commit](https://github.com/odoo-dev/enterprise/commit/43088c9c7cd40fe1c8a088e959a0c8b510990061#diff-58e5e345ff4395ccf7e6c13178e3c909cb18204ffcdceaa7352bd67b9d3432c8) changed the group on the Transfers menuitem button as specified by the specs of its tasks but it was later removed from the specs altough kept in the changes. We realized we did not want that change now and this commit addresses that. task-none Forward-Port-Of: odoo/enterprise#88081 Forward-Port-Of: odoo/enterprise#88019
Original PR description
This [commit](https://github.com/odoo-dev/enterprise/commit/43088c9c7cd40fe1c8a088e959a0c8b510990061#diff-58e5e345ff4395ccf7e6c13178e3c909cb18204ffcdceaa7352bd67b9d3432c8) changed the group on the Transfers menuitem button as specified by the specs of its tasks but it was later removed from the specs altough kept in the changes. We realized we did not want that change now and this commit addresses that. task-none Forward-Port-Of: odoo/enterprise#88081 Forward-Port-Of: odoo/enterprise#88019
We used to display notifications like "We're waiting for your IoT Box to send its devices", that no longer make sense. This commit remove those notifications. Task: 4853242 Forward-Port-Of: odoo/enterprise#88178
Original PR description
We used to display notifications like "We're waiting for your IoT Box to send its devices", that no longer make sense. This commit remove those notifications. Task: 4853242 Forward-Port-Of: odoo/enterprise#88178
In order to detect blackboxes as blackboxes instead of adam scales, without installing `pos_blackbox_be` module, we added it to the list of modules from which we download driver. Task: 4787403 Forward-Port-Of: odoo/enterprise#88064
Original PR description
In order to detect blackboxes as blackboxes instead of adam scales, without installing `pos_blackbox_be` module, we added it to the list of modules from which we download driver. Task: 4787403 Forward-Port-Of: odoo/enterprise#88064
The call to the script downloading and extracting `libeasyctep.so` was returning a traceback if it failed to remount the system readonly. We moved the rw/ro mounting logic from the sh script to the python call to avoid this. Task: 4852374 Forward-Port-Of: odoo/enterprise#88045
Original PR description
The call to the script downloading and extracting `libeasyctep.so` was returning a traceback if it failed to remount the system readonly. We moved the rw/ro mounting logic from the sh script to the python call to avoid this. Task: 4852374 Forward-Port-Of: odoo/enterprise#88045
**Steps to reproduce:** - Install account_budget - Activate "Budget Management" in Accounting settings - Go to "Accounting / Accounting / Analytic Budget" - Create a new budget: * Budget Type: Expense * Period: [this month] * Budget Lines: [a line with an analytic account (AA) in 2 plans] - Open the budget **Issue 1:** Create a PO at the current date with a line having only one of the AA as analytic distribution and an amount higher than the budgeted amount. The PO line and
Original PR description
**Steps to reproduce:** - Install account_budget - Activate "Budget Management" in Accounting settings - Go to "Accounting / Accounting / Analytic Budget" - Create a new budget: * Budget Type:…
**Steps to reproduce:** - Install account_budget - Activate "Budget Management" in Accounting settings - Go to "Accounting / Accounting / Analytic Budget" - Create a new budget: * Budget Type: Expense * Period: [this month] * Budget Lines: [a line with an analytic account (AA) in 2 plans] - Open the budget **Issue 1:** Create a PO at the current date with a line having only one of the AA as analytic distribution and an amount higher than the budgeted amount. The PO line and the Budget button appear in red, but it shouldn't because the analytic distribution of the line doesn't match all the accounts defined on the budget line. The line will not impact the budget, but it appears in red, which is confusing. **Cause 1:** When computing the budget lines linked to the PO line, the domain that is used is only taking into account the plans that are set on the PO line, ignoring the plans that are not set. For the Budget button, all the PO lines are used instead of just those having the correct analytic distribution. **Issue 2:** - Create a PO at the current date with 2 lines: 1) a line with the same AA than the budget line and an amount higher than the budget amount 2) a line with the same AA than the budget line and an amount lower than the budget amount - Save the PO The first line should be red, but it is not. **Cause 2:** When computing the budget lines linked to the PO lines, only the last PO line has its value set. opw-4757067 Forward-Port-Of: odoo/enterprise#87884