Monday, May 11, 2026
12 changes · saas-18.2
Resolved issues and error corrections
The package creation wizard now calculates shipping weight using only the delivery lines selected for packing, rather than the full delivery order. This prevents incorrect shipping weights when users pack part of an order, improving accuracy for warehouse and delivery operations.
Original PR description
Issue ----- When putting a subset of lines in a pack, the wizard computes the weight as if all of the picking's lines were selected. Steps to reproduce ----- - Enable packages - Create a packaging type for carrier "No carrier integration" (std delivery) - Create 2 products with different weights - Create a delivery - Add a demand for both products - Additional Info > Carrier: Standard delivery - Mark as Todo - Open the moves view - Select one of the 2 lines - Click Put in pack - Select the package type > The "Shipping Weight" is the picking's weight instead of the selected line's ----- Ticket: opw-6125285 Forward-Port-Of: odoo/odoo#260601
Sales users can now open project milestones created from milestone-based sales orders without encountering an access error. This keeps project follow-up smoother for sales teams while preserving the underlying access rules.
Original PR description
Steps to reproduce: - Install the sale_project module - Create a sale order based on milestones - Create the project from the order - Open the project, click the three dots, and open a milestone Issue: Users are unable to open milestones and get an access error. Cause: Users in `sales_team.group_sale_salesman` lack read access to the related `sale.order.line`, causing an AccessError when `sale_line_id` is accessed during the computation of `product_uom_qty`. Fix: Compute `product_uom_qty` using `sudo()` to bypass record rule restrictions. task-5477304 Forward-Port-Of: odoo/odoo#263170 Forward-Port-Of: odoo/odoo#245392
The Google address autocomplete field now correctly becomes non-editable when a form or field is set to read-only. This prevents users from accidentally changing address information in places where edits should not be allowed.
Original PR description
**Issue:** The `google_address_autocomplete` widget remained editable even when the view or field was set to `readonly`. **Solution:** Modified the `AddressAutoCompleteTemplate` to conditionally render the component. If `props.readonly` is true, the template now renders a `<span>` with the field value. Task~5182770
The portal message composer now stays focused after a user inserts an emoji. This removes a small usability interruption so users can continue typing their message without needing to click back into the text box.
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 Forward-Port-Of: odoo/odoo#263494
Email Marketing test messages now clean up their related internal messages and attachments after the test email is sent. This prevents files used only for testing from showing up unexpectedly in a contact's activity history.
Original PR description
**Steps to reproduce:** - Go to Email Marketing app - Create a mailing campaign - Set its recipients to Contact - Upload a file in Settings > Attach a file - Click on the test button to send a test mail to any mail - Go to the first contact record - Related attachment appears in the chatter **Issue:** Before 18.2, messages created for testing were ignored by the Chatter as they were empty (and not unlinked). But if an attachment was provided, it was linked to the test message and not deleted afterwards (which means it shows up in the record chatter). **Fix:** Ensure the related messages are unlinked at the same time as the test mail in `send_mail_test` by setting `is_notification` to False to trigger the `unlink` logic and remove the related attachments at the same time. backport of: https://github.com/odoo/odoo/commit/526b3d73886558315f2435714b2ed82fec313e78 opw-6168632 Forward-Port-Of: odoo/odoo#262152
The Norwegian localization now uses the official 11.11% tax rate for tax code 32 instead of the incorrect 11.0%. This helps businesses using Norwegian accounting produce more accurate tax calculations and reports.
Original PR description
The tax rate(`amount`) for code 32 was mistakenly set to '11.0'. To properly align with the official Norwegian tax rates, it needs to be updated to '11.11'. Related Enterprise PR: https://github.com/odoo/enterprise/pull/110792 task-6033027 Forward-Port-Of: odoo/odoo#263259 Forward-Port-Of: odoo/odoo#258390
This update corrects a flaw in how missing transactions are identified for online statements. Previously, the system only checked transactions from the last sync date, potentially missing transactions before that date. Now, the system prioritizes the provided starting date, ensuring a more complete and accurate retrieval of online statement data.
Original PR description
When you want to find missing transactions, you have to put a starting date. But we don't use this starting date to find the last statement line, we only use the last sync date, which is wrong, because if the last sync date is after the starting date, the online transaction identifier will have the wrong date. It means we will only fetch the transactions from last sync date to today. This commit makes sure we take the start date first if it exists, then the last sync date. task-6197277 Forward-Port-Of: odoo/enterprise#116624
This update corrects a UI issue where the `l10n_co_edi_ubl` field in the Units of Measure form lacked a label, causing user confusion. The fix ensures the field is clearly identified, improving form clarity and usability for users working with CO Company settings.
Original PR description
Currently, the field `l10n_co_edi_ubl` is displayed without a label in the UoM form, confusing users. **Steps to reproduce:** - Install the `l10n_co_edi` module and switch to the CO Company. -…
Currently, the field `l10n_co_edi_ubl` is displayed without a label in the UoM form, confusing users. **Steps to reproduce:** - Install the `l10n_co_edi` module and switch to the CO Company. - Navigate to Invoicing > Settings. - Enable `Units of Measure & Packagings`. - Open `Units & Packagings` and click `New`. **Observation:** The `l10n_co_edi_ubl` field appears between the `Quantity` label and its corresponding field, but its own label is not visible. <img width="1905" height="324" alt="6180769_before" src="https://github.com/user-attachments/assets/f35c345a-f449-46e4-ad15-6981109fca7a" /> **Root Cause:** The inherited view [1] inserts the field `l10n_co_edi_ubl` before `relative_factor` in the base view [2]. In the base view, `relative_factor` is wrapped inside a `<div>` with a shared label (`Quantity`). Since the new field is inserted inside this structure, it inherits the same layout without having its own label, resulting in the label being hidden. **Fix:** This commit updates the view to ensure that the field `l10n_co_edi_ubl` is properly displayed with its own label, avoiding UI confusion and improving form clarity. **After:** <img width="1907" height="376" alt="6180769_after" src="https://github.com/user-attachments/assets/f96470d3-8df2-4ca4-acf8-f6511a49d725" /> [1]: https://github.com/odoo/enterprise/blob/7b0d07bce92fb4b2cb588344fb0f6e3dd5d94f4a/l10n_co_edi/views/product_uom_views.xml#L4-L13 [2]: https://github.com/odoo/odoo/blob/bae4fa4e0dde2d2e2e4fcdbb968f630c080af818/addons/uom/views/uom_uom_views.xml#L15-L34 opw-6180769
This update adjusts the NSSF (National Social Security Fund) payroll deductions. Now, employees 60 years or older will no longer be subject to these deductions, aligning with Kenyan regulations. The change takes effect the following month after the employee's 60th birthday.
Original PR description
[IMP] l10n_ke_payroll: stop NSSF deductions after 60
When the user is creating a payslip and if the age of employee is >=60 the NSSF deductions must stop
(If the 60 years is finished in 10th of March -> it will stop in April (deduction stop starts from next month))
Test:
Unit test is written to check stopping NSSF deductions with dynamic birthday.
task - 6074658
Forward-Port-Of: odoo/enterprise#115236This update resolves an issue preventing the POS scale integration with the new 19.2 IoT Box. The IoT box is sending data differently, causing a technical error. This fix ensures the scale functionality continues to work correctly for all users.
Original PR description
Steps to reproduce - Use a localisation other than a european one (l10n_eu_iot_scale_cert must not be installed) - Setup the scale for the POS - Open the POS - Add a product to be weighted by scale to the order - Sell one of the weighted product Error: value.toFixed is not a function Cause: New versions of the IoT box send response status via data.status instead of data.status.status. [opw-6121011](https://www.odoo.com/odoo/project/49/tasks/6121011) Forward-Port-Of: odoo/enterprise#116579
This update resolves a test failure related to importing partner and bank account data for Italian reporting. The team restored a previous test data state, ensuring the tests now pass correctly. This prevents disruptions to the Italian 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 Forward-Port-Of: odoo/enterprise#112794
Documentation and clarification updates
This update records the corporate Contributor License Agreement for blancomartin.cl / BMyA. It ensures new contributions from this company are properly covered by Odoo's legal contribution requirements.
Original PR description
New contributors from BMyA --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#261658