Monday, September 14, 2026
3 changes · saas-18.3
Resolved issues and error corrections
Fixed an issue where invoicing multiple orders together could leave some timesheets unlinked if another order used a different billing period. This helps ensure invoices accurately include the right delivered timesheet work across mixed subscription and standard orders.
Original PR description
### Steps to reproduce: - Install `sale_subscription_timesheet` module - Create a subscription (Order A) with delivered-timesheet products and log timesheets within its current period (e.g., January)…
### Steps to reproduce: - Install `sale_subscription_timesheet` module - Create a subscription (Order A) with delivered-timesheet products and log timesheets within its current period (e.g., January) - Create a standard order (Order B) with delivered-timesheet products and log timesheets outside of Order A's period (e.g., March) - Select both orders and invoice them simultaneously in a single batch (uncheck 'Consolidated Billing') > Result: Order B's invoice is created but silently fails to link its March timesheets, because they fall outside Order A's January window. ### Cause of Issue: In `_link_timesheets_to_invoice`, the `start_date` and `end_date` parameters are overwritten inside the invoice line loop when `_get_range_dates` is called. Because these variables are never reset per iteration, the first order that yields a date range locks in that window for every subsequent invoice line in the batch. Timesheets outside this leaked window are silently ignored. Additionally, the `_get_range_dates` hook is invoked before verifying if the invoice line actually contains timesheet products, causing it to execute on empty recordsets (e.g. invoice line notes) ### Fix: Prevent the date range leak by preserving the original parameter state of the dates and safely ensure the extension hook is never invoked with an empty recordset. opw-6507110 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#284781
A test was added to ensure batch invoicing for multiple subscription timesheet orders keeps each order's own billing period. This helps prevent invoices from including time entries outside the correct date range, reducing billing errors.
Original PR description
A test case to guarantee that batch invoicing multiple orders respects their individual time frames. This test is made to assert the fix in this [PR](https://github.com/odoo/odoo/pull/284781) opw-6507110 Forward-Port-Of: odoo/enterprise#129404
This fixes a small unwanted line that could appear in the “Bold 10” decorative website shape on wide pages in Chromium on Windows. The adjustment improves page appearance consistency for users viewing or editing website snippets.
Original PR description
Scenario: - insert snippet that can have a shape (eg. Adventure) - choose shape "Bold 10" then save - view the page with at least 1400 pixel of width, with chromium browser on a windows platform Result: in the shape largest width, there is a line that has the color of the background (eg. red if primary color is white and secondary is red). Cause: this seems to come from the high rectangle having the width 50% - 660 which ends up possibly a partial pixel, and depending on the browser/OS rendering engine this may results in a one pixel line no covered by the SVG shape. Fix: add 1 pixels to the big rectangle so there is an overlapping pixels and this case doesn't happen. Drawback: if using a transparent color, there will now be a line (on browser where there was no issue) because of the overlapping pixel. But this is more acceptable and this is already broken (the small height rectangle already overlap for unknown reason). opw-5414533