Tuesday, May 26, 2026
7 changes · 17.0
Resolved issues and error corrections
This update resolves a minor typo in the name of the Sendcloud website delivery module. The incorrect display name ('Sendcould') has been corrected to the accurate 'Sendcloud'. This ensures consistent and correct module identification within the Odoo Enterprise system.
Original PR description
The displayed name contained a typo ("Sendcould" instead of "Sendcloud") All other references already use the correct spelling, so no further changes were necessary.
opw-6239003This update fixes a potential issue where users could inadvertently select inactive Intrastat codes when configuring products. Now, a warning message will appear if a user attempts to select an inactive code, ensuring data accuracy and preventing incorrect reporting. This improves data integrity for Intrastat reporting.
Original PR description
Problem: When choosing an intrastat code on a product, all the codes are shown, even the ones that are expired or not yet active. Users can select an intrastat code that is not active. Steps to reproduce: 1. Check the intrastat code list and find a code with a start date in the future or an expiry date in the past 2. Note the code description 3. Open a product form view and try to set/change the intrastat code 4. Search for the code description noted in step 2 5. Note that the code is proposed while it should not be proposed Solution: When an intrastat code is selected, if the code is not active, a warning message is shown to the user. opw-6217915
This update resolves an issue where internal transfer transactions weren't being accurately reflected in the matching entries tab. The fix ensures that liquidity lines are correctly displayed after an internal transfer is created, improving the accuracy of bank reconciliation reports. This change was made to address a reported bug and maintain data integrity.
Original PR description
How to reproduce the issue: - Create two journals: bank 1 and bank 2. - In bank 1 create a transaction for -1000 and validate it as an internal transfer. - In bank 2 create a transaction for +1000. In the Match existing entries tab, the liquidity line from the original transfer is not displayed. This is due to the filter added by 3d74f4a2ab212a3546b43c7dfa563360b600d3b6. opw-6226947 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
A test was failing intermittently due to a user account lacking the necessary write permissions on bank statement lines. This change grants the required write access within the test environment, resolving the failure and ensuring the test consistently passes. This improves the reliability of our testing process.
Original PR description
The test `test_branch_user_bank_statement_foreign_currency` is sometimes failling because the user doesn't have write access rights on account.bank.statement.line. When only account app is installed, the user branch_user only has read access. The group added in the test doesn't provide those rights. Runbot errors: 243653, 243655, 243688 opw-6214971 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update resolves a discrepancy in HTML parsing behavior caused by recent updates to the underlying libraries (libxml2 and lxml). The fix ensures consistent HTML output across different versions, preventing potential issues with how Odoo renders and processes web content. It also includes improvements to error handling related to these library updates.
Original PR description
## [FIX] core: lxml compatibility v2.14.0+ (HTML parsing) In version 2.14.0, libxml2 fixed a long standing quirk in its HTML handling where it always implies `<p>` start tags [1]. As a result, there…
## [FIX] core: lxml compatibility v2.14.0+ (HTML parsing) In version 2.14.0, libxml2 fixed a long standing quirk in its HTML handling where it always implies `<p>` start tags [1]. As a result, there is a difference in behavior between pre and post 2.14.0 produced HTML when no start tag is provided: - pre: always has a `<p>` tag - post: depending on the case, could have either a `<span>` or `<p>` tag. This commit introduces a monkeypatch of the lxml's HTML parser when built with libxml2 2.14.0+ to maintain a similar behavior with older versions. [1]: https://gitlab.gnome.org/GNOME/libxml2/-/commit/8cf6129bbd836e666e7eda8c9e61c00387ae388b ## [FIX] base,l10n_it_edi: catch TypeError/ValueError for lxml 6+ compat Updates exception handling to account for stricter type checking introduced in lxml 5/6 and libxml2 2.12+. Note: Ubuntu 26.04 (Resolute) provides lxml 6.9.2/libxml2 2.15 while Debian Trixie has lxml 5.4.0/libxml2 2.9.14. Don't be fooled by the version `2.12.7+dfsg+really2.9.14-2.1+deb13u1` which actually means that Debian has reverted/held back the core engine to 2.9.14 while adding commits from 2.12.7.
This update fixes an issue where the website editor would become unresponsive and ignore user input after a failed save attempt (like a missing required field). The fix ensures the editor returns to a consistent state, preventing frustrating delays and incorrect behavior for users. This improves the overall user experience and data integrity within the website editor.
Original PR description
When a save fails (for example due to a required field), the editor stays open, but some transient editor classes may already have been removed from the DOM.
This leaves the editor in an inconsistent state and can trigger a weird flow while making changes.
For example, as a result, users may see every second keystroke ignored after a failed save.
Steps to reproduce:
- Open a product page in website editor
- Remove the product name
- Click save
- The expected popover is shown ("Operation cannot be completed")
- Type again in the product name field => Every second keystroke is ignored (rollbacked actually).
task-5190459This update resolves an issue where certain product categories were incorrectly displayed on websites other than the intended one. The fix ensures that categories are only shown to users accessing them through their current website, improving the user experience and preventing broken links. This change enhances website consistency and reduces potential customer frustration.
Original PR description
Steps to produce: --- - Install `website_sale` with demo data. - Go to `website > ecommerce > products > ecommerce categories`. - Open `Desks/Components` category > Set website to `My website 2`. -…
Steps to produce: --- - Install `website_sale` with demo data. - Go to `website > ecommerce > products > ecommerce categories`. - Open `Desks/Components` category > Set website to `My website 2`. - Open the shop page on website > Click on Desks category. Issue: --- - The Components subcategory is still displayed on Website 1. - Clicking on it leads to a Not Found page since the category is not assigned to that website. Root cause: --- - At [1], In the category filmstrip template, subcategories are fetched without filtering based on website access. - As a result, categories restricted to another website are still shown. Solution: --- - Filter categories using the `can_access_from_current_website` method to ensure only categories accessible from the current website are displayed. [1]https://github.com/odoo/odoo/blob/900fc043064216c5943ea07392d8120be7b50b63/addons/website_sale/views/templates.xml#L758-L769 opw-6159549 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr