Daily updates from Odoo
Thursday, February 12, 2026
8 changes · master
Resolved issues and error corrections
This update resolves an error that prevented users from correctly selecting rental product dates. Specifically, when the start and end dates were the same, a technical error occurred. The fix ensures a user-friendly error message is displayed, preventing the issue and allowing rentals to be processed correctly.
Original PR description
Currently, an error occurs when selecting a date on a rental product. **Steps to Reproduce:** - Install the `website_sale_stock_renting` module. - Go to `Products` and create a product with the…
Currently, an error occurs when selecting a date on a rental product. **Steps to Reproduce:** - Install the `website_sale_stock_renting` module. - Go to `Products` and create a product with the following `configuration`: - Enable `Track Inventory` and set `Quantity On Hand` greater than zero. - Disable `Sell when Out-of-Stock` under the `eCommerce tab`. - Under the `Sales tab`, set `Periodicity to Days`, and set the same time for `Pickup and Return`. - Go to `Website > Shop`. - Open the product, select the same date for both `Start Date and End Date`, and `click anywhere`. `ValueError: min() iterable argument is empty` **Cause:** - This error occurs because when the start and end dates are the same, the method returns a set of dates from here [1]. Since there is only a single date, the loop is not executed and it returns an empty list of availabilities [2], which then raises the error [3]. - The error happens due to the removal of this condition [4] in this [recent commit]. - The warning message is now handled here [5]. **Fix:** - This commit ensures that when a user selects a start date that is greater than or equal to the end date, a UserError is raised and the proper warning message is displayed. [1]: https://github.com/odoo/enterprise/blob/f26da0d5285ff47bf7a4297141830db67f7103d1/sale_stock_renting/models/sale_order_line.py#L616 [2]: https://github.com/odoo/enterprise/blob/f26da0d5285ff47bf7a4297141830db67f7103d1/website_sale_stock_renting/models/product_product.py#L77 [3]: https://github.com/odoo/enterprise/blob/f26da0d5285ff47bf7a4297141830db67f7103d1/website_sale_stock_renting/models/website.py#L18-L22 [4]: https://github.com/odoo/enterprise/blob/66f144df6f2056212797547dfef5ed58232698cd/website_sale_renting/models/product_template.py#L175-L176 [5]: https://github.com/odoo/enterprise/blob/f26da0d5285ff47bf7a4297141830db67f7103d1/website_sale_renting/static/src/interactions/daterange_picker.js#L213 [recent commit]: https://github.com/odoo/enterprise/commit/4afdc272e5a7fc4284bbd9f97283b8ec0aa28c34 sentry-7243018656 Forward-Port-Of: odoo/enterprise#106602
This update fixes an issue where the new folder creation process incorrectly opened a file upload view instead of the intended folder form. The change ensures that users are always presented with the correct form to create a new folder, improving usability and workflow efficiency. This resolves a previous bug related to priority and context settings.
Original PR description
**Before this PR:** When creating a new folder from the field, it opens `documents_upload_url_view` instead of new folder form view `document_view_form_new_folder` **Technical reason:** This happens because `documents_upload_url_view` is given a higher priority. Also, adding context to the field to keep the default type set to folder. **After this PR:** `document_view_form_new_folder` will open to create a new folder. Task-5384414
This update ensures that signed PDF documents retain their original bookmarks and metadata after signing. This improves document navigation and consistency, guaranteeing signed documents are informative and reliable.
Original PR description
Before - When a user downloaded a signed document, the original PDF bookmarks and metadata (e.g., title, author, subject) were lost. - This affected structured navigation and document integrity. After - The PDF signing process now retains the original bookmarks and metadata, preserving document structure. Impact - Ensures signed documents are now navigable, informative and consistent with the original version. - Improves overall document integrity. Task-4915124
This update fixes an issue where only one quality check was created when using the barcode scanning feature with lot tracking. The change ensures that quality checks are generated for each distinct lot received during a 'Put-In-Pack' operation, improving inventory accuracy and quality control processes. This resolves a discrepancy in how the system tracked lot-based quality checks.
Original PR description
**Steps to reproduce:** * Install the `stock_barcode`, `quality_control` modules. * Go to *Inventory > Configuration > Settings* and enable **Packages**. * Create a product with **By Lot** tracking…
**Steps to reproduce:** * Install the `stock_barcode`, `quality_control` modules. * Go to *Inventory > Configuration > Settings* and enable **Packages**. * Create a product with **By Lot** tracking enabled and set a barcode reference. * Create a quality control point for this product with following configuration: * Operation: *Receipts* * Control per: *Quantity* * Control Frequency: *All* * Product: the previously created lot-tracked product. * Create a receipt for this product with a quantity of 6 and `mark as todo`. * Open the *Barcode* app and process the receipt. * Scan the product barcode. * Scan some quantity of the product with lot *LOT01* and put those units into a package(Put-In-Pack). * Scan the remaining quantity with lot *LOT02* and put those units into a different package(Put-In-Pack). * Click on **Quality Checks**. **Observed behavior:** * Only one quality check is created, even though the receipt contains two different lots that should each generate a quality check. **Cause:** * In `_inverse_qty_done`, move lines are marked as *picked* when `qty_done` is equal to quantity(Demand). * During the `write` operation, quality checks are created only for move lines that are not picked, which prevents creating a quality check for each lot. * Relevant code: https://github.com/odoo/enterprise/blob/464dc0c65548f3f440b293b534616743ddd5e130/quality_control/models/stock_move_line.py#L39 https://github.com/odoo/enterprise/blob/464dc0c65548f3f440b293b534616743ddd5e130/stock_barcode/models/stock_move_line.py#L67-L71 **Fix:** * Ensure that quality check points are generated correctly when validating products through the Barcode app using the Put in Pack option. --- opw-5405221 Forward-Port-Of: odoo/enterprise#105930 Forward-Port-Of: odoo/enterprise#102714
This update corrects a problem where the ICP report generation failed due to a missing link between return types. The fix now searches for VAT reports instead, ensuring accurate tax return checks and successful report generation. This resolves a previous error impacting compliance reporting.
Original PR description
Since no return type has a link to ICP report, the tax return check will fail each time. This commit changes this by looking for VAT report returns. opw-5491728 Forward-Port-Of: odoo/enterprise#106955
This update resolves an issue where duplicate GS1 serial/lot numbers could cause incorrect stock lot queries. The fix ensures that lot names are correctly processed, preventing errors when creating multiple lots with the same barcode pattern. This improvement ensures data integrity within the stock management system.
Original PR description
## Issue When using the *Default GS1 Nomenclature*, it is possible to create multiple lot/serial numbers with a same name if the name matches a barcode rule pattern. ## Fix The fix related to this…
## Issue When using the *Default GS1 Nomenclature*, it is possible to create multiple lot/serial numbers with a same name if the name matches a barcode rule pattern. ## Fix The fix related to this commit is introduced by [this PR](https://github.com/odoo/odoo/pull/244427). ## Problematic flow The problematic flow starts in the `StockLot._check_unique_lot` method when calling `self._read_group`. At that point, the domain is still correct: it contains the product_id and the (correct) name for the lot we try to create. https://github.com/odoo/odoo/blob/b51c80a4368b99e55073856061113244b16b23f9/addons/stock/models/stock_lot.py#L104-L111 In the `BaseModel._read_group` method, the query is defined by the `self._search` method. At that point, the domain is the same as in the previous step, so it is still correct. https://github.com/odoo/odoo/blob/b51c80a4368b99e55073856061113244b16b23f9/odoo/orm/models.py#L1902-L1904 Now the flow differs depending on whether the `stock_barcode` app is installed or not. If it is, the `stock_barcode/StockLot._search` method is called: https://github.com/odoo/enterprise/blob/24fea3814b95144953fb809d10bf6a62906c06fd/stock_barcode/models/stock_lot.py#L11-L15 This is the method that calls the `BarcodeNomenclature._preprocess_gs1_search_args` which uses the `skip_preprocess_gs1` context flag: https://github.com/odoo/odoo/blob/b51c80a4368b99e55073856061113244b16b23f9/addons/barcodes_gs1_nomenclature/models/barcode_nomenclature.py#L149-L151 **This flow makes the query returned by `self._search(domain)` erroneous, as the start of the name of the lot is removed further down the execution of the `preprocess_gs1_search_args` method.** ### If stock_barcode is not installed The `self._search` method called in the BaseModel will not call `stock_barcode/StockLot._search`, but instead it calls `BaseModel._search`. This totally skips the problematic gs1 flow. opw-5477003 Forward-Port-Of: odoo/enterprise#104720
This update resolves a bug where incorrect order quantities were sometimes sent to the kitchen display when using the numpad in the POS. The fix ensures the system waits for quantity updates before submitting orders, preventing errors and improving order accuracy. This resolves a failing test and ensures reliable kitchen order transmission.
Original PR description
TASK: [#5897381](https://www.odoo.com/odoo/project/1737/tasks/5897381) --- Inside tour tests environment for POS Restaurant Preparation Display module, when using the numpad to change the quantity of a product in the POS and sending the order to the kitchen immediately after, there is a chance that the quantity is not updated in time. This could lead to sending an order with an incorrect quantity to the kitchen display. As a result, the test `test_payment_does_not_cancel_display_orders` was failing. We are waiting for the orderline to be updated with the correct quantity before submitting the order. X-original-commit: 5ebd1ca99dddbbc62aff90202491562114c0c0dc Forward-Port-Of: odoo/enterprise#106600
This update corrects a bug where the 'Asset Plus' column in depreciation reports wasn't displaying acquisition values for certain assets. The fix removes a confusing filter and adjusts the report query to correctly identify assets based on their acquisition or move dates, ensuring accurate reporting of asset values.
Original PR description
This commit removes the hierarchy filter from the depreciation schedule and fixes the asset plus column not showing acquisition value for a given period. Forward-Port-Of: odoo/enterprise#106409