Friday, May 8, 2026
7 changes · 18.0
Enhancements to existing features
This update enhances the logging process during cloud storage migration, providing more detailed information about the migration's progress. Previously, logging was limited, making it difficult to track and troubleshoot issues. Now, users will receive clearer logs, streamlining the migration process and improving overall reliability.
Original PR description
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
Resolved issues and error corrections
This update corrects a test failure related to importing partner and bank account data for Italian reporting. The change restores the test data to a known state, ensuring the tests now pass correctly. This resolves a technical issue preventing accurate reporting functionality.
Original PR description
The related PR brings a data change in a test file that is used here. We bring back the state of that data in the test class, so that the tests don't fail anymore. Community PR: odoo/odoo#254505 Task [link](https://www.odoo.com/odoo/project.task/6046189) task-6046189
This update fixes an issue where embedded actions didn't correctly display translated names, particularly when languages were switched or the server action name was updated. By delegating the display name to the linked server action, we ensure embedded action names are always accurate and up-to-date, improving the user experience.
Original PR description
When an embedded action is created from a server action, its name is just stored as is. When using these actions e.g. in the Documents top bar, there is already a "hack" to copy the name of the server action to the embedded action in each active language. This has a few issues: - When a language is activated after the embedded action creation, the name of the server action is not copied to the embedded action, resulting in an untranslated name. - When the name of the server action is changed, the name of the embedded action is not updated, resulting in an outdated and possibly untranslated name. The workaround is to disable/enable the action now, but it's not very user-friendly and can be easily forgotten. To fix this, we can simply delegate the display name of the embedded action to the linked server action. This way, the name of the embedded action will always be up to date and correctly translated. Related: https://github.com/odoo/enterprise/pull/116369
This update removes a redundant step in creating embedded actions within Odoo. Now that embedded actions use the linked action's display name for translation, a separate translation copy is no longer required. This streamlines the process and ensures consistent translations.
Original PR description
Now that `ir.embedded.actions` delegates its display name to the linked action, the manual translation copy on embedded action creation is no longer needed. Related: https://github.com/odoo/odoo/pull/262981
This update fixes an issue where emails sent from the system were incorrectly attributing the sender to the wrong company contact. The change adds a final rule based on partner ID to ensure the correct contact is always identified as the sender, regardless of priority.
Original PR description
Steps to reproduce:
1. Install `sale` and `contact`
2. Make a company contact that starts with "A"
3. Give the same email as the current company
4. Create a sale order, and remove the salesperson from it.
5. Send an email using the "Send by email" button
Issue:
- The message author is resolved to the wrong company partner
Cause:
- The code gives priority to some partners, but when two partners still have the same priority,
it does not use a clear final rule to choose between them.
- In that case, the result depends on the existing order of partners, so the wrong one can be picked.
- https://github.com/odoo/odoo/blob/ea56382f804e494a86a72dab02a26134ef358c50/addons/mail/models/mail_thread.py#L2075-L2084
Solution:
- Add a final tie-break rule based on partner `id`.
- This makes the result stable and prevents a newer partner with the same email from being chosen
over the expected one when both have the same priority.
opw-5907006This update fixes a minor issue where the composer field in the Odoo portal wouldn't automatically focus after an emoji was added. The fix ensures the composer always receives focus, improving the user experience when composing messages with emojis. This resolves a technical glitch related to optional JavaScript properties.
Original PR description
Before this commit, after adding an emoji via the emoji picker in the portal chatter, the composer would not be focused. This is due to the `autofocus` prop of the composer being optional and not having a default value, leading to `NaN` when being incremented while `undefined`. This commit fixes the issue by giving it a default value of 0. task-6204911
This update fixes an issue where employee attendance hours displayed in the Gantt view didn't accurately reflect their flexible work schedules. The fix ensures that expected hours are calculated correctly by tracking attendance intervals, leading to more reliable attendance reporting.
Original PR description
Steps to reproduce: 1. Set an employee to have a flexible working schedule 2. Enter the Attendances app 3. When hovering over the employee in the gantt view, the expected hours do not match their working schedule When we calculate the expected hours for the Gantt view in attendances, we calculate this based on an incorrect number of attendance intervals given from `_attendance_intervals_batch()`. To ensure that we recieve accurate intervals, we now keep track of how many hours we've recorded across all intervals, and break out of the loop when we've reached the expected hours.