Friday, May 22, 2026
10 changes · master
Enhancements to existing features
This update simplifies the calculations for 'Retained Earnings' and 'Result for the Year' within the French Balance Sheet report. These changes improve the accuracy and reliability of the financial reporting for French-speaking businesses using Odoo Enterprise. This is an internal improvement.
Original PR description
Simplify the formulas of 'Retained earnings' and 'Result for the year' in the french Balance Sheet. task-6087994 Forward-Port-Of: odoo/enterprise#113949 Forward-Port-Of: odoo/enterprise#112731
This update optimizes the way data is sent between the user's browser and the Odoo server for account reports. Previously, a large amount of information was transmitted unnecessarily. Now, only the essential data is sent, resulting in faster report loading and reduced server load.
Original PR description
When formating the values of columns or getting the annotations for the lines, we previously send the entire lines dict. Now, we only send the elements on the line and columns that are required to reduce the size of the dict sent from the client to the server. task-5922438
This update ensures the test case for stock barcode picking is aligned with recent changes in the Odoo system. This improves the reliability of our testing process and helps maintain compatibility within the enterprise module.
Original PR description
- Applied minor adjustments and updated the test case to align with recent changes and ensure compatibility. Community PR:- odoo/odoo#259859 TaskId:-6127981
This pull request updates the labels used in the VoIP activity scheduling form within the Enterprise module. The change clarifies the terminology used for scheduling VoIP calls, enhancing usability and reducing potential confusion for users. This is an internal improvement to the user interface.
Original PR description
Task-[6240796](https://www.odoo.com/odoo/project.task/6240796)
Resolved issues and error corrections
This update resolves an issue preventing users from adding multiple images to product pages within the AI website sale module. The fix corrects a technical error related to how image loading was handled, ensuring the feature now works as intended. This improves the presentation of products with multiple images.
Original PR description
Steps to reproduce: =================== 1. Install ai_website_sale 2. Go to a product page and enter edit mode 3. In the right panel => Images => click "Add More" (Extra Media) 4. Select a PNG or JPG image and click Add => TypeError: loadPromiseResolveFunction is not a function Cause: ====== The `ai_website_sale` patch for `ProductAddExtraImageAction.getMediaDialogProps` destructures the argument with key `loadResolveFunction` (renamed to `loadPromiseResolveFunction` locally), but the caller in `load()` passes `loadPromiseResolveFunction` as the key. The key mismatch means the local variable is always `undefined`, and the `save` closure in the parent's `getMediaDialogProps` closes over `undefined` instead of the Promise's `resolve` function. Fix: ==== align the parameter key. It's a backport of this commit https://github.com/odoo/enterprise/commit/e5b89df328601af881af115c6083a648af0cc1a1 opw-6215476 Forward-Port-Of: odoo/enterprise#117454
This update eliminates a redundant type definition file that was causing issues with the OWL package. Removing this file resolves a technical problem, ensuring the enterprise version of Odoo functions correctly. This change improves stability and performance.
Original PR description
This commit removes the `@types/main.d.ts` file, as it seems it is not necessary and was preventing the types from the installed OWL package from being used. Before: <img width="689" height="74" alt="image" src="https://github.com/user-attachments/assets/f25ca51d-0ef7-466d-9b89-0c80047b0f97" /> After: <img width="571" height="52" alt="image" src="https://github.com/user-attachments/assets/c54455ed-279f-4449-aa77-08dd822203d2" />
A test related to embedded account reports was failing due to inconsistencies in demo data. The fix ensures the test accurately validates report options by generating the necessary account reports within the test itself, regardless of whether demo data is loaded. This resolves a runbot error and maintains test reliability.
Original PR description
Previously, embedded account reports always loaded the global account report. A fix introduced in version 19.0 changed this behavior so that the system now loads the most appropriate audit report,…
Previously, embedded account reports always loaded the global account report. A fix introduced in version 19.0 changed this behavior so that the system now loads the most appropriate audit report, specifically, the account report corresponding to the audit report's company (see: odoo/enterprise#101377). In version 19.1, a test was added to validate account report options. However, this test assumed that embedded account reports would always load the global account report (i.e., `account_reports.balance_sheet`). When tests run on runbot, demo data is not loaded. In that context, no report variants exist in the database, so the system falls back to the global account report, causing the test to pass. In environments where demo data is loaded, a report variant does exist, and the system correctly selects it instead of the global report. As a result, the test assertions are no longer valid and fail, leading to runbot errors. To address the issue, we will generate the account reports within the `setup` method of the test. This ensures that the assertions remain consistent, regardless of whether demo data is present. runbot-error-id~242235 Forward-Port-Of: odoo/enterprise#117231 Forward-Port-Of: odoo/enterprise#112486
This update corrects a visual issue where the project sharing notebook was using dark styles, causing a conflict with the light mode theme. The team removed a specific style file to ensure consistent appearance across Odoo Enterprise.
Original PR description
The project sharing notebook previously used dark-themed styles, which conflicted with the light mode .Removing the notebook.dark.scss file from the imported files in the manifest. task-4922564 Forward-Port-Of: odoo/enterprise#99161
This update adjusts the formatting of numeric values in account reports to align with the overall column styling. The change adds a small padding to the header, creating a more consistent and visually appealing report. This improves the readability and presentation of financial data.
Original PR description
the following commit slightly modified the styling of reports header by alligning the text on the right for numeric values to match the styling of the values in the column. However, the forward port in 19.3 didn't notice that a small padding was now present in the version. https://github.com/odoo/enterprise/commit/196aa04b301499fdb2ea0769f7f07ff504a46b2b In addition, no class is needed for budget columns since no names are provided. **BEFORE** <img width="776" height="252" alt="image" src="https://github.com/user-attachments/assets/02c9dbb2-ab68-4b81-abb4-08db7f663794" /> **AFTER** <img width="518" height="276" alt="image" src="https://github.com/user-attachments/assets/3fb86584-6699-4b49-b2b9-87685bad0c16" /> Forward-Port-Of: odoo/enterprise#117920
This update simplifies how text is clipped in website content, primarily within the website_appointment and related modules. The change replaces older, browser-specific code with a more flexible and maintainable approach using a standard CSS class and variable. This ensures consistent text clipping across different browsers and allows for easier customization of the number of lines displayed.
Original PR description
*: website_helpdesk, website_helpdesk_forum, website_helpdesk_slides - requires https://github.com/odoo/odoo/pull/248061 --------------- This commit clears up the `-webkit-line-clamp` handled in CSS and replace them with the `.o_line_clamp` CSS class. To clamp a certain amount of line, you can now apply the `.o_line_clamp` class to your element, and assign a value to the `--lines-clamp` CSS variable, which will be used to clamp that number of line. If you don't define this variable on your element, the default value will be used, which is `2`. Example with the new method using the class: OLD WAY: ```CSS overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; ``` NOW: ```XML <!-- If you don't define `--lines-clamp` it'll clamp `2` lines by default !--> <myElement class="o_line_clamp" style="--lines-clamp: 3;"/> ``` task-5905780