Monday, November 17, 2025
17 changes · 19.0
Enhancements to existing features
This update makes sure that links from payroll and contract screens open the correct employee or contract forms. It improves navigation for users by sending them to the intended record view instead of an incorrect or outdated one.
Original PR description
The contract template form view is now written on the formview_action directly. This is a backport of https://github.com/odoo/enterprise/pull/97463 task-5082709 Forward-Port-Of: odoo/enterprise#99486
When users open a version record in HR, they are now sent to the most relevant screen: contract templates open in the contract template view, while employee-related versions open in the employee form with the correct version already selected. This makes navigation more accurate and reduces confusion when reviewing or editing HR version data.
Original PR description
If the version record is a contract template, redirect to the version contract template view. Otherwise, redirect to the employee form view with the version_id in the context. This is a backport of https://github.com/odoo/enterprise/pull/97463 task-5082709 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 Forward-Port-Of: odoo/odoo#235691
Resolved issues and error corrections
This change removes leftover database sequences created for Point of Sale sessions after those sessions are closed. It helps keep the system tidier and avoids unnecessary buildup of database objects over time.
Original PR description
to avoid having too many postgres sequences, this make sure the sequence used by the pos session is cleaned up after being closed. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#235875 Forward-Port-Of: odoo/odoo#235500
Documentation and clarification updates
This change adds Raj Gohel’s individual contributor license agreement to Odoo’s records. It is an administrative update that helps confirm the legal permissions needed for contributions, with no effect on product features or users.
Original PR description
I am signing the Odoo Individual Contributor License Agreement. This PR adds my CLA entry to the list of individual contributors. Signed, Raj Gohel rajgohel2018@gmail.com GitHub: https://github.com/Rajgohel0312
This change makes the purchase catalog suggestion test more reliable by moving it to a test setup that better handles timing delays. It prevents random failures in automated builds without changing the user-facing purchasing flow.
Original PR description
Description of the issue/feature this PR addresses: Fixes non deterministic runbot error in the purchase catalog suggestion JS tour: https://runbot.odoo.com/odoo/runbot.build.error/233744 Current behavior before PR: We test the adding product quantity behavior of the kanban product record with the suggestion feature ON **in a JS tour.** which has a non deterministic behavior on the runbot due to a debounce on an RPC. Desired behavior after PR is merged: Perform the same functionality test but in Hoot testing (which allows for parallel testing) and can better handle awaiting the debounce on the AddProduct RPC call. Use this PR as reference for the Hoot test odoo/enterprise#63041 (see the discussion on runAllTimersin the above mentionned PR if unclear --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update corrects how grouped list views calculate the width of the group header. As a result, grouped lists should now display columns more accurately and avoid layout issues when optional fields are shown.
Original PR description
This commit removes the colspan incrementation for optional fields in the group name. The incrementation was redundant, as the group configuration cog menu <th> is always present in the column for optional fields when the list is grouped. This ensures the colspan value now correctly reflects the actual number of visible columns. task-5261958
Product descriptions in the online shop now adapt better to the available space, making long text easier to read in showcase and card list layouts. Editing descriptions in showcase mode also works more smoothly because the overlay no longer blocks access to the text.
Original PR description
On showcase and card list design, the description can be very long making the paragraphs hard to read. The readability standard for comfortable reading is ~66 characters. The responsive font-size on these designs were not properly following the container width. On showcase, in edit mode the description couldn't be edited because the overlay was displayed over it. task-5150655 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The system now avoids using the mobile phone search feature until the user has typed at least three characters. This prevents an error from appearing as soon as someone starts typing and makes contact search feel smoother.
Original PR description
`phone_mobile_search` doesn't allow you to search for less than 3 characters. This commit excludes `phone_mobile_search` from the search domain when there are less than 3 characters. This avoids triggering an UserError on the first characters typed. Forward-Port-Of: odoo/enterprise#99548
When a shape is applied to a background or image, it is now clearly highlighted in the shape selector. This makes it easier for users to see the current setting and improves the overall usability of the editor, including better keyboard support and panel behavior.
Original PR description
Before this commit, when a shape was applied to a background or an image, that shape was not highlighted in the shape selector. After this commit, active shapes are highlighted with a border in the shape selector. task-5187272 Forward-Port-Of: odoo/odoo#233035
This change improves automated tests by making unfinished drag-and-drop actions safely cancel themselves at the end of a test. It prevents delayed errors from appearing after tests have already finished, which makes test runs more stable and easier to trust.
Original PR description
Before this commit, when initiating an unfinished drag sequence (i.e. calling `drag` without `drop` or `cancel`), the drag sequence was ended by destroying the component, which could throw asynchronous errors after the test finished. One possible fix would be to wait for these errors upon ending a test, but this process is handled by Owl and through a possible chain of promises, which would have to be accounted for by an arbitrary amount of 'animationFrame' or 'advanceTime' calls. Instead, the `contains...drag` and `contains...dragAndDrop` now handle a single drag sequence at a time, with a systematic cleanup after each test in case a drag sequence has been left pending. In such cases, the sequence is canceled. Enterprise: https://github.com/odoo/enterprise/pull/99369 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#235826 Forward-Port-Of: odoo/odoo#235359
This update ensures changes to Belgian Dimona payroll fields are properly tracked in the version history. It resolves a failing automated test and helps keep change logs complete and reliable for payroll-related updates.
Original PR description
The test_hr_version_fields_tracking was failing because the Belgian Dimona fields in hr.version model were missing tracking=True. task-5122440 Forward-Port-Of: odoo/enterprise#95735
This change restores the correct default document type when creating debit notes. It prevents the system from accidentally replacing that default with an invoice document type, which helps avoid confusion and ensures debit notes start with the right settings.
Original PR description
Restores code from v16 to define a default document type for debit notes on records with debit_origin_id. Previously, when using the wizard to generate a debit note, the default document type (related to debit notes) was being overwritten by the first document type associated with invoices. Although this behavior will be removed in v17, this fix is necessary to prevent overwriting the default value for now. Note: It's still possible to use the document type for invoices. Therefore, the change only affects the computation of the default value. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#181106
This update makes sure drag-and-drop actions used in automated tests are fully completed before the test ends. It helps prevent unfinished test steps from being canceled too early, improving the reliability of web and Gantt-related test results.
Original PR description
Since drag sequences are automatically canceled at the end of tests, 'cancel' or 'drop' calls should be properly awaited before the end of a test. This commit ensures that these actions are properly finished before a test ends. Community: https://github.com/odoo/odoo/pull/235359 Forward-Port-Of: odoo/enterprise#99559 Forward-Port-Of: odoo/enterprise#99369
This fix removes an unwanted border that appeared on the background blur toggle in the call video settings. It makes the video call interface look cleaner and more consistent when users click the option.
Original PR description
**Current behavior before PR:** The background blur toggle button in the call video settings dropdown shows an unintended border when clicked. **Desired behavior after PR is merged:** The background blur toggle button in the call video settings dropdown no longer shows border when clicked. Before: <img width="463" height="203" alt="image" src="https://github.com/user-attachments/assets/ffc42a8d-3d07-480d-84ba-5959e7bf723d" /> After: <img width="398" height="205" alt="image" src="https://github.com/user-attachments/assets/01cc4883-b6e0-4e23-b400-45c4373ef77e" /> --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
When an appointment cannot be saved because there are not enough available seats, the error message now clearly includes the appointment type name. This makes the message easier to understand and helps users quickly identify which appointment is affected.
Original PR description
Currently, when creating a new appointment with a specified number of people but no resources, saving the record triggers a UserError that does not display the appointment type name. Issue: 2 seats are missing to be able to book the appointment.type(1,): Table (30) <img width="1813" height="776" alt="image" src="https://github.com/user-attachments/assets/f87f45de-3552-47bb-b34c-fcc06cea425f" /> Solution: 2 seats are missing to be able to book the Table: Table (30) <img width="1769" height="905" alt="image" src="https://github.com/user-attachments/assets/04188071-be67-4500-b720-039ee7a27c2e" />
This update corrects how certain icons and buttons appear in company-specific settings screens, so the interface is more consistent and easier to understand. It improves the presentation of inventory-related configuration pages without changing the underlying business behavior.
This change updates Vauxoo’s contributor agreement record to include Jonathan Osorio Alcala as an approved contributor. It is an administrative/legal update that helps keep contributor records current and compliant.
Original PR description
Incorporate Jonathan Osorio Alcala (jonathanosalc) as Vauxoo's contributor. I confirm I have signed the CLA and read the PR guidelines at http://www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#235181