Daily updates from Odoo
Sunday, September 28, 2025
6 changes
1 change
Resolved issues and error corrections
Removed an unnecessary navigation step in a point-of-sale sales order test that could trigger intermittent database errors. This helps keep automated validation reliable without changing business workflows or user-facing behavior.
Original PR description
Before this commit: ================= The `test_draft_pos_order_linked_sale_order` test fails intermittently with a `psycopg2.ProgrammingError: no results to fetch`. This failure occurs when the…
Before this commit:
=================
The `test_draft_pos_order_linked_sale_order` test fails intermittently with a
`psycopg2.ProgrammingError: no results to fetch`. This failure occurs when the
browser tour navigates back to the backend.
After this commit:
=====================
The problematic navigation step is removed from the `PosSettleOrder5` tour,
stabilizing the test and preventing the runbot error.
Cause:
========
The `Chrome.clickMenuOption("Backend", { expectUnloadPage: true })` step
forces an immediate database flush (`self.cr.flush()`) during the test's
authentication phase.
This forced flush happens when the records are in an intermediate state (after
loading the Sale Order but before payment/validation). This specific
intermediate state, combined with the subsequent recomputation of computed
fields (like `qty_delivered` through `sale_mrp` and `sale_margin`), exposes an
underlying bug in Odoo's ORM cursor management, leading to the
`psycopg2.ProgrammingError`.
Since the backend navigation is not necessary for the test's assertion logic,
removing this step prevents the premature flush and resolves the failure.
Runbot Error: 226521
Task: 4974084
Forward-Port-Of: odoo/odoo#2281932 changes
Resolved issues and error corrections
This fix prevents accounting processes from failing when bank transaction labels contain an opening parenthesis without a matching closing parenthesis. It helps ensure bank statement handling remains reliable even when imported bank descriptions are imperfect.
Original PR description
Issue: Prior to this commit, some bank labels contained an opening parenthesis without a corresponding closing parenthesis. This led to invalid regular expressions. Example: Transfer from Bank (642 Fix: Skip unmatched opening parentheses to prevent regex errors. oes-4866613
A redundant navigation step was removed from a point of sale test that was causing intermittent automated test failures. This improves the reliability of validation runs without changing customer-facing behavior.
Original PR description
Before this commit: ================= The `test_draft_pos_order_linked_sale_order` test fails intermittently with a `psycopg2.ProgrammingError: no results to fetch`. This failure occurs when the…
Before this commit:
=================
The `test_draft_pos_order_linked_sale_order` test fails intermittently with a
`psycopg2.ProgrammingError: no results to fetch`. This failure occurs when the
browser tour navigates back to the backend.
After this commit:
=====================
The problematic navigation step is removed from the `PosSettleOrder5` tour,
stabilizing the test and preventing the runbot error.
Cause:
========
The `Chrome.clickMenuOption("Backend", { expectUnloadPage: true })` step
forces an immediate database flush (`self.cr.flush()`) during the test's
authentication phase.
This forced flush happens when the records are in an intermediate state (after
loading the Sale Order but before payment/validation). This specific
intermediate state, combined with the subsequent recomputation of computed
fields (like `qty_delivered` through `sale_mrp` and `sale_margin`), exposes an
underlying bug in Odoo's ORM cursor management, leading to the
`psycopg2.ProgrammingError`.
Since the backend navigation is not necessary for the test's assertion logic,
removing this step prevents the premature flush and resolves the failure.
Runbot Error: 226521
Task: 4974084
Forward-Port-Of: odoo/odoo#2281931 change
Enhancements to existing features
A default overtime ruleset is now included so companies can create overtime records without extra setup. It adds standard handling for regular overtime and non-working days, helping attendance workflows work out of the box.
Original PR description
## PR Purpose Adding a default ruleset with 2 rules in order to create overtime (as it's impossible to create one without overtime ruleset). Those data are the same as the data added in the upgrade/migrations/hr_attendance/saas~18.5.2.0 post-migrate script. [Task#5082628](https://www.odoo.com/odoo/tasks/5082628) [Community#228164](https://github.com/odoo/odoo/pull/228164) Signed-off by thha
2 changes
Resolved issues and error corrections
Sales orders now hide the project shortcut when their only linked projects have been archived. This avoids showing users inactive project links and keeps the sales order view focused on current work.
Original PR description
Issue: ----- When a project is archived, the project stat button still appears on the sale order. Fix: --------- This commit excludes archived projects from the project count. As a result, the project stat button will be hidden when only archived projects are linked. Steps to reproduce: -------- - Install sale_project module - Create a product with service type, linked to a project and task - Create a sale order with the above product and confirm it - Archive the linked project - Return to the sale order and check the project stat button task-4780817 Forward-Port-Of: odoo/odoo#212730
This fix prevents an error when subscription sales orders do not yet have a last invoice date. The system now uses today’s date as a fallback, keeping stock movement checks working reliably.
Original PR description
The Issue: Prior to this commit, When the sale order last_invoice_date is False, a traceback is thrown The Fix: To resolve this, We get the last_invoice_date or todays date opw-4403557 Forward-Port-Of: odoo/enterprise#75717