Thursday, July 3, 2025
9 changes · 18.0
Resolved issues and error corrections
This fix prevents an error when opening the decrease quantity popup in Point of Sale when a related Belgian blackbox module is not installed. It also stops the popup from appearing incorrectly when staff increase an item quantity, making checkout adjustments smoother and less confusing.
Original PR description
Before this commit, an error occurred when `pos_blackbox_be` was not installed and the system attempted to open the decrease quantity popup, due to a missing argument. Also, the decrease quantity popup was incorrectly shown when increasing the quantity, as `cid` was mistakenly used for comparison. opw-4914775 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix ensures that when multiple manufacturing orders are created at once, each order uses its own expected work duration to calculate the planned finish date. This prevents incorrect completion dates in batch creation or custom workflows, improving scheduling reliability.
Original PR description
If you create mrp.production in batch, date_finished is wrong. Note: it probably works as is in standard flow because always used on a single record (ex: form view) but it might break custom code. opw-4629270 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#216550
This fixes how Odoo's web testing tools handle drag-and-drop data during simulated interactions. It ensures tests better reflect real browser behavior when items are added dynamically, reducing false failures or missed issues in web interface testing.
Original PR description
Before this commit, the 'types' property of datatransfers used in Hoot interactions was mocked to insert the initial types of the given 'items' and 'files'. However, this didn't account for the items added dynamically on the datatransfer object. The good thing is that it doesn't actually need to be mocked, since it already works with the given 'files' and 'items' types without having to override the 'types' descriptor. So the mock has been removed. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update reduces intermittent test failures in the HTML and web editor areas by waiting more reliably for editor selection and link preview behavior. It helps keep automated validation stable, lowering the chance of false failures delaying development or releases.
Payment reconciliation now ignores cancelled invoices and only considers invoices that are officially posted. This prevents errors when pending payments are completed after an invoice has been cancelled, keeping automated payment processing reliable.
Original PR description
Steps to reproduce: 1. Create an invoice. 2. Register a payment in the 'pending' state. 3. Cancel the invoice. 4. Confirm the payment (set payment state to 'done'). 5. Run the 'post-process transactions' cron job and check the logs. → Error occurs during reconciliation due to the cancelled invoice. Issue: cancelled invoices were being considered during the reconciliation process, leading to errors. Solution: This fix ensures that only posted invoices are considered during the reconciliation process. Forward-Port-Of: odoo/odoo#213365
Follower notification emails no longer show an extra divider between the header and message body. This makes invite and notification emails look cleaner and avoids confusing duplicated formatting for recipients.
Original PR description
When adding an Odoo user as a follower to a lead/task/..., there are two separators between the message header and its body. This commit removes the extraneous separator. Steps to reproduce: - Open a lead/task/... - Add Marc Demo as a Follower - Toggle the option to have them notified task-4889715
This fixes a display issue on eCommerce product pages where product attribute options shown as pills had unwanted spacing on iPhone and iPad. The change improves the visual alignment of product choices, making the shopping experience cleaner for mobile customers.
Original PR description
Before this commit, the pills attributes on a eCommerce product page on iOS has misaligned text That was caused by an iOS inconstancy with 'appearance: none;' A 'position: aboslute !important;' was added to force hiding the input like in saas-18.4 Expected:  Issue:  ## Steps to reproduce: - Add a product with attributes in eCommerce - Set the Attribute's Display Type to Pills - Go to the eCommerce product's page - Open the page on iPhone or iPad (using BrowserStack) - The selection for the attributes have a space before option's name opw-4854158 Forward-Port-Of: odoo/odoo#215520
Confirmed purchase orders now allow users to adjust product descriptions by hiding the product column when needed. This restores flexibility for correcting or clarifying order lines after confirmation without changing the selected product.
Original PR description
<b>Steps to Reproduce:</b> - Navigate to Purchase → Create a new Purchase Order. - Add a Vendor → Add a Product with description or enter one using the ☰ widget. - Save and Confirm the order, Try to…
<b>Steps to Reproduce:</b>
- Navigate to Purchase → Create a new Purchase Order.
- Add a Vendor → Add a Product with description or enter one using the ☰ widget.
- Save and Confirm the order, Try to edit the description.
<b>Issue:</b>
- The product description becomes non-editable after confirming the PO.
- Previously, the description was separated in view.
<b>Cause:</b>
- Since `product_id` is readonly, the `name` (description) field also does not allow to edit.
- e.g. In SO, the description is editable if the product_id is hidden and only name (description) field is visible.
<b>Since the product_id field is read-only in the states ('purchase', 'to approve', 'done', 'cancel'), the description field
also becomes read-only, as they are combined. By hiding the product_id, we can edit the description, as it is not.</b>
<b>Solution:</b>
- Added `optional="show"` to `product_id` in the XML view to allow toggling discription editability.
- When `product_id` is hidden, the `name` field becomes editable.
<b>Steps to Verify:</b>
- Open same confirmed PO and hide the `product_id` column.
- Make sure `name` (description) field is visible and now it is editable.
<b>opw-4892063</b>Partner Ledger XLSX exports now correctly include entries without an assigned partner when users search for "Unknown Partner". This ensures downloaded reports match the on-screen results and prevents missing accounting lines in exported files.
Original PR description
### Issue: When searching for "Unknown Partner" in the Partner Ledger to get the lines with no partner, nothing shows on the downloaded XLSX. ### Steps to reproduce: - Have a partner Ledger with -…
### Issue:
When searching for "Unknown Partner" in the Partner Ledger to get the lines with no partner, nothing shows on the downloaded XLSX.
### Steps to reproduce:
- Have a partner Ledger with
- Search for "unknown Partner" in the search bar, only the lines grouped under "Unknown Partner" are shown.
- Click on the button "XLSX"
- The downloaded document does not include "Unknown Partner"
### Cause:
When `filter_search_bar` has a value, the domain used to query the partners/lines will check if the names of the partner match the search text. The resulting SQL query excludes the lines where `partner_id` is `NULL`.
### Solution:
Add a new condition in the domain: `('partner_id', '=', False)` This way the lines with no partner are returned by the query
When searching another existing partner these lines are excluded by an [already existing filter](https://github.com/odoo/enterprise/blob/8eff9194618a1d181c57820829e53aa23c7759d5/account_reports/models/account_partner_ledger.py#L55-L58). It excludes the lines if the search test does not match "Unknown Partner".
opw-4772529
Forward-Port-Of: odoo/enterprise#88139