Thursday, January 29, 2026
7 changes · 19.0
Enhancements to existing features
This update expands Odoo's language support to include Spanish, recognizing the significant Spanish-speaking population. It adds Spanish translations to the system, improving usability for a wider range of customers and users. This enhancement aligns with Odoo's commitment to global accessibility.
Original PR description
The official language is English, but Spanish is spoken by ~41 million. task-5247124 Forward-Port-Of: odoo/enterprise#105494 Forward-Port-Of: odoo/enterprise#105246
Resolved issues and error corrections
A recent issue in the Point of Sale system's appointment tour was triggered when tests were run close to midnight. The system incorrectly filtered out appointments scheduled for the next day, causing the tour to fail. This fix ensures the tour functions correctly regardless of the time of day the test is executed.
Original PR description
The `test_pos_restaurant_appointment_tour_basic` test was failing when run late in the day. The test creates an appointment 30 minutes in the future and expects a corresponding label to appear underneath the table in the POS floor plan. However, if the test is executed near midnight (e.g. 23:45 UTC), the appointment is scheduled for the following day. Since the Point of Sale frontend only displays appointments for the current day, it filters the booking out, causing the tour to timeout while waiting for the label. runbot-232601 Forward-Port-Of: odoo/enterprise#105738
This update changes how errors during Shopee order synchronization are handled. Instead of causing an exception and a log error, the system now logs a warning. This prevents unnecessary disruptions for users who have already received email notifications about these issues, streamlining the logging process.
Original PR description
Currently a logger exception is printed in the log when an error is generated during the synchronization of Shopee shop orders. Since this is not a blocking error and the user has already been notified about this error via email, it is idle for the user to log a warning instead of logging an exception here. sentry-7122935675
This update resolves an issue where the IoT Box was incorrectly downloading standard drivers, leading to potential conflicts and duplicated files. To allow custom driver development, a checkbox was added, but this caused problems with existing drivers. The fix now avoids downloading standard drivers from modules to ensure stability.
Original PR description
The stable IoT Box uses drivers from git repository: it doesn't download them from the database as it used to do. However, sh/on premise clients might want to develop custom drivers that the IoT Box would download. For that, they have to enable a checkbox on the IoT homepage, making the IoT Box download handlers as before. The issue is it will also download standard drivers that are already present on the IoT Box: on newer databases it would simply overwrite them, but on older ones, it would duplicate as names might have changed. Also, it would introduce issues back that were already fixed. To avoid this, we avoid adding drivers from standard modules to the downloaded archive, to prevent issues with the main ones. Forward-Port-Of: odoo/enterprise#105770 Forward-Port-Of: odoo/enterprise#105531
This update fixes an issue with how employer social insurance contributions are recorded in Odoo Enterprise for Saudi Arabia. The change ensures that these payments are accurately assigned to the correct accounting accounts, improving financial reporting and compliance. This resolves a previous error impacting payroll processing.
Original PR description
Fix the account configuration used by Saudi social insurance contribution salary rules for the company. This ensures employer contributions are posted to the correct accounting accounts. Task-5468575
This update clarifies the recruitment process by renaming a stage label in the 'Initial Qualification' stage to 'Qualification' within the Enterprise module. This change improves the clarity and consistency of the recruitment dashboard, making it easier for users to understand the stages of the hiring process. It's a minor adjustment to enhance the user experience.
Original PR description
This is a small follow-up PR to the original PR to simply rename a stage label. See https://github.com/odoo/enterprise/pull/105278 Task-ID: 5454691
This update resolves an issue where embedded actions within documents were disappearing from the folder's action list, preventing users from managing or deleting them. The fix ensures that embedded child actions remain visible and accessible, streamlining the document management process.
Original PR description
Server actions that were standalone (not a child) and embedded onto a documents folder cannot be executed anymore when they are linked to a parent action. Before saas-18.3, the embedded child action…
Server actions that were standalone (not a child) and embedded onto a documents folder cannot be executed anymore when they are linked to a parent action. Before saas-18.3, the embedded child action would still be in the documents' available_embedded_actions, and couldn't be removed, such that a fix was necessary. From saas-18.3 onwards, children embedded actions are no longer visible. As this precise case wasn't explicitly tested, we continue the FW-port with the (adapted) test. Furthermore, we add a garbage collection of the embedded actions for children actions, as they cannot be executed anymore. Initial FIX: ### ISSUE Certain embedded actions inside a folder may not appear in the folder’s server actions list (accessible via the gear icon), making them impossible to find or delete through the interface. This occurs because documents.document.get_documents_actions applies overly broad filtering that removes all child server actions, regardless of whether they are embedded in the folder. As a result, if two embedded actions are created in a folder and one is later set as a child of the other, the embedded child action disappears from the visible list but remains embedded in the folder, leaving no way to remove it from the UI. ### SOLUTION The method has been updated to exclude only non-embedded child actions. Embedded child actions are now preserved and correctly displayed in the folder’s actions list, allowing them to be managed and deleted as expected. opw-5213881 Forward-Port-Of: odoo/enterprise#105235 Forward-Port-Of: odoo/enterprise#100395