Wednesday, June 17, 2026
8 changes · 18.0
Resolved issues and error corrections
This update enhances the stability of the French PDP (Point of Departure) registration process. The code was refactored to move a key function to the company record, addressing a previous issue where the registration model was frequently deleted. This ensures a reliable and consistent registration process.
Original PR description
The aim of this commit is to move _get_iap_url on res.company model instead of pdp.regitration. This move is made for 2 reasons: 1. PDP registration is a transient model which means that the object could be deleted in the time. 2. PDP registration implementation was using the model (api.model) and the record (self.edi_mode) which is a bad implementation. So by moving this function on company, we ensure that we always have a record to call the function and then the function is no longer an api.model. no task id --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update prevents errors when generating e-Waybills when the dispatch and delivery locations share the same pin code. Previously, the system couldn't automatically calculate the distance in these cases, leading to incomplete requests. This change ensures a distance is always provided, improving e-Waybill generation reliability.
Original PR description
Prevent sending incomplete e-Waybill requests to the GSP server when the dispatch and delivery pincodes are identical. In such cases, the distance cannot be automatically determined and must be provided explicitly. This commit adds a validation to ensure a distance is set before generating the e-Waybill, avoiding incomplete requests and subsequent server-side errors. task-6234343 Forward-Port-Of: odoo/odoo#270155 Forward-Port-Of: odoo/odoo#268497
This update addresses a bug fix within the Odoo spreadsheet component. Specifically, it resolves an issue with finding and replacing text selections after cell updates, ensuring data integrity within spreadsheets. This change improves the reliability of spreadsheet functionality.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/18d4601b09 [REL] 18.0.71 [Task: 0](https://www.odoo.com/odoo/2328/tasks/0) https://github.com/odoo/o-spreadsheet/commit/e4e0c90ddc [FIX] Find and replace : selection after an UPDATE_CELL [Task: 4818132](https://www.odoo.com/odoo/2328/tasks/4818132) Co-authored-by: Florian Damhaut (flda) <flda@odoo.com> Co-authored-by: Anthony Hendrickx (anhe) <anhe@odoo.com> Co-authored-by: Alexis Lacroix (laa) <laa@odoo.com> Co-authored-by: Lucas Lefèvre (lul) <lul@odoo.com> Co-authored-by: Adrien Minne (adrm) <adrm@odoo.com> Co-authored-by: Ronak Mukeshbhai Bharadiya (rmbh) <rmbh@odoo.com> Co-authored-by: Dhrutik Patel (dhrp) <dhrp@odoo.com> Co-authored-by: Rémi Rahir (rar) <rar@odoo.com> Co-authored-by: Pierre Rousseau (pro) <pro@odoo.com> Co-authored-by: Vincent Schippefilt (vsc) <vsc@odoo.com> Co-authored-by: Marceline Thomas (matho) <matho@odoo.com>
A recent update to our Weblate translation system unexpectedly reverted some code changes. This pull request corrects this issue by restoring the original code. This ensures that future translation updates don't unintentionally disrupt existing functionality.
Original PR description
The regular Weblate translation update reverted some code changes. This should normally not happen. We're reverting it back to the previous state. This partially reverts commit 6cce5fdde972634cdceb4ff573c0f9b67297cd1f.
This update corrects a visual bug where the 'jump to present' button appeared incorrectly when the chat window was hidden behind a long form. The fix ensures the button is only visible when the thread itself is visible, preventing a confusing flicker and ensuring the button functions as intended.
Original PR description
### Description `Thread.updateShowJumpPresent()` (`addons/mail/static/src/core/common/thread.js`) sets `showJumpPresent` from the present-sentinel visibility only, without checking that the thread…
### Description
`Thread.updateShowJumpPresent()` (`addons/mail/static/src/core/common/thread.js`) sets `showJumpPresent` from the present-sentinel visibility only, without checking that the thread itself is on screen:
```js
this.state.showJumpPresent =
this.props.thread.loadNewer || this.presentThresholdState.isVisible === false;
```
In a form chatter, when the user is at the **top of a long form**, the whole chatter is below the fold. The present sentinel is therefore not visible, so the `position-fixed` jump-to-present button shows up even though the thread is off-screen — and clicking it does nothing useful (the scrollbar flickers, no jump).
### Fix
Gate `showJumpPresent` on the thread's own visibility (`this.visibleState`), exactly as on **saas-18.3+/19.0/master**. The 18.0 port of the jump-to-present rework (460d066817, #246299) brought the threshold/position changes but dropped this guard, so 18.0 (and saas-18.2) are still affected.
### Steps to reproduce (standard, runbot)
1. Open a record with a chatter and a long form (e.g. a CRM lead / Sales order).
2. Scroll to the **top** of the form (chatter below the fold).
3. The round jump-to-present button appears at the bottom; clicking it does nothing.
With this patch the button is hidden while the thread is off-screen, matching saas-18.3+.
<img width="5152" height="1926" alt="84359" src="https://github.com/user-attachments/assets/a16dbb74-c5c4-440a-8a94-ec7c5693904e" />This update resolves a problem where the automated tour for restaurant order placement would sometimes fail due to asynchronous communication with the kitchen. By adding a brief delay, the tour now ensures all order requests are fully processed before proceeding, preventing duplicate requests and improving the reliability of the test.
Original PR description
The tour could fail because `sendOrderInPreparationUpdateLastChange` is asynchronous when sending the order to the kitchen. The test was continuing to the next steps before the request was fully resolved, which could lead to sending the order again while the previous call was still in progress. This commit updates the tour to explicitly wait for the async call to complete before continuing, by adding a delay step after clicking the order button. This prevents race conditions during the test. --- Runbot Error: https://runbot.odoo.com/odoo/runbot.build.error/181846 Forward-Port-Of: odoo/enterprise#110909
This update corrects a bug in the Outlook calendar synchronization process. Previously, events could include the same attendee multiple times due to a missing check for existing attendees. This fix ensures accurate attendee lists are synchronized, preventing potential confusion and improving the reliability of event scheduling.
Original PR description
In the Outlook calendar sync, it's possible to have the same attendee twice. That's because the normalized email wasn't used to check for preexisting attendee. To reproduce, sync event with the organizer, also an attendee, using high case in the email such as: ORGANIZER: Mike@organizer.com ATTENDEE: Mike@organizer.com ATTENDEE: John@attendee.com opw-6186606 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
This pull request completes the final translation updates for Odoo 18.0, ensuring all user-facing strings are accurately translated across multiple languages. This improves the overall user experience and supports our global customer base. The changes are focused on polishing and finalizing the translation process.
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