Thursday, June 19, 2025
12 changes · 18.0
Resolved issues and error corrections
Fixes an issue where merging CRM leads could fail if older lead records had no priority value. This helps sales teams merge historical or incomplete lead data without interruptions.
Original PR description
The field priority is not required (even if it has a default) so it is possible to have False instead of a str.
Traceback occures when merging leads that contains historical data.
```
File "/home/odoo/src/odoo/saas-18.3/addons/crm/models/crm_lead.py", line 1501, in _merge_opportunity
merged_data = opportunities._merge_data(self._merge_get_fields())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/odoo/src/odoo/saas-18.3/addons/crm/models/crm_lead.py", line 1457, in _merge_data
data[field_name] = fcallable(field_name, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/odoo/src/odoo/saas-18.3/addons/crm/models/crm_lead.py", line 1555, in <lambda>
'priority': lambda fname, leads: max(leads.mapped('priority')) if leads else False,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: '>' not supported between instances of 'str' and 'bool'
```This fix prevents the messaging interface from crashing in rare cases where a chat bubble appears but its related conversation is temporarily unavailable or deleted. Users should experience a smoother, more reliable chat experience while the system waits for data to load or recognizes that the conversation no longer exists.
Original PR description
There are some rare cases there's a chat bubble but no thread, e.g. when the thread is deleted and/or data hasn't be fetched (yet). These cases should assume no thread for a short time instead of following crash: ``` TypeError: Cannot read properties of undefined (reading 'importantCounter') ```
This fix updates an internal HTML editor test so it waits properly for toolbar popovers before checking results. It reduces random test failures, helping keep development and release validation more dependable without changing user-facing behavior.
Original PR description
The expect assertion does not wait, and waiting one animation frame is not enough for popovers, like the toolbar, as explained in [1]. [1]: https://github.com/odoo/odoo/pull/211426/commits/54da715df84789f9a1acc0cfc91be41dcdbab140
This fixes an issue in the Mail composer where clicking Save or Cancel while editing a message could unexpectedly move the page. Users can now finish or discard edits without losing their place, making message updates feel smoother and less disruptive.
Original PR description
**Current behavior before PR:** Clicking "Cancel" or "Save" in the composer would unintentionally cause the page to scroll. **Desired behavior after PR is merged:** This default behavior is now prevented in `onClickCancelOrSaveEditText`. **task**-[4826935](https://www.odoo.com/odoo/my-tasks/4826935) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes an issue in Sales Projects where the project display used the wrong view type after a recent change. Users should again see the expected list-style view, reducing confusion when working with projects linked to sales.
Original PR description
opw-4865213 Caused-by: https://github.com/odoo/odoo/pull/212680
Video options such as autoplay and loop now appear as proper on/off switches in the editor, even when the website app is not installed. This keeps the video settings popup consistent and easier to use across setups.
Original PR description
Description of the issue this PR addresses: - The video settings popup has toggle options like autoplay and loop. These need styles from the website module to look like switches. Without that module, they show as checkboxes. Current behavior before PR: - When the website module is not installed, Toggle options look like checkboxes instead of switches. Desired behavior after PR is merged: - Basic switch styles are added directly in the html_editor module. Toggles now look correct even without the website module. task-4865400 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
A faulty test setting was removed from the Italian e-invoicing website sale module. This helps the automated checkout tests run correctly, reducing false build failures without changing customer-facing behavior.
Original PR description
steps to reproduce : 1. Install l10n_it_edi_website_sale 2. run the test `test_public_user_codice_fiscale` remove the unknown key `test` from the tour build_error-223784
This change fixes a flaky internal test in the web module that could fail unpredictably. It simplifies the test setup, making automated checks more stable without changing customer-facing behavior.
Original PR description
This commit fixes a race condition in one of Hoot's internal tests. The fix simplifies the failing test since the previous manipulations were redundant and fragile. runbot [223471](https://runbot.odoo.com/odoo/runbot.build.error/223471) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents users from accidentally editing purchase and vendor bill matching records that are only meant for viewing. It avoids a save error in the Purchase Matching screen, making the vendor bill workflow more reliable.
Original PR description
Currently, an error is produced when attempting to edit fields in the **Purchase Line and Vendor Bill line matching view** model. **Steps to reproduce:** - Install the `purchase` module. - Open a Vendor Bill form and click the "Purchase Matching" button. - In the list view, change the **Vendor** field of any record. - Attempt to save. **Error:** ``` UndefinedTable relation "purchase_bill_line_match" does not exist LINE 1: UPDATE "purchase_bill_line_match" ``` Here, the `purchase.bill.line.match` model is defined with `_auto = False`, meaning it is a non-storable model, does not have a corresponding database table, and therefore cannot be updated directly. [1] - https://github.com/odoo/odoo/blob/5977da2c93d522ece984d2fa8a31624f4b612eca/addons/purchase/models/purchase_bill_line_match.py#L10-L12 This commit makes fields read-only in the model, avoiding unintended write attempts on a non-storable view model. Sentry-6629713332
This fix allows records that track HTML content history to be updated in batches without failing. It improves reliability for users and administrators when multiple versioned content records are changed at once.
Original PR description
Allow batch write on model using the `HtmlFieldHistory` mixin. task-4852381 task-4731389 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Documents app now automatically configures the Internal folder with the expected email alias, matching earlier behavior on SaaS. The Sign integration also avoids errors when that folder was removed before installation, making setup more reliable.
Original PR description
As in earlier versions, add an alias to the Internal folder so that it is configured out of the box on Saas. In sign, we make sure to not try and embed an action on the Internal folder if it was already deleted before the bridge is installed. Task-4690653
The duplicate transaction search in bank accounting now works even when the Starting Date field is left empty. If no date is entered, the system uses today's date instead, avoiding an error that could interrupt accounting users.
Original PR description
Currently, an error occurs when finding duplicate transactions in the bank. Steps to Reproduce: - Install the `accountant` module. - In `Accounting Dashboard`, click on `Bank`. - In Actions, click `Find Duplicate Transactions`. - Clear the `Starting Date` field and click save. `TypeError: unsupported operand type(s) for -: 'bool' and 'relativedelta'` This error occurs when the system attempts to find duplicate transactions without a Starting Date. When finding duplicate transactions, it tries to calculate the `prior_date` using `date_from - relativedelta(months=3)` [1]. However, since `date_from` is `False`, this raises an error. [1] https://github.com/odoo/enterprise/blob/acdba5ecf89ee8920f82e07e16fac2a0f9659b12/account_online_synchronization/models/account_journal.py#L314 This commit ensures that if the Starting Date is empty when finding duplicate transactions, it uses today’s date as the Starting Date. sentry-6653835511