Daily updates from Odoo
Sunday, September 28, 2025
3 changes · saas-18.3
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#228193Point of Sale users who do not have permission to delete cash in/out records will no longer be shown an unavailable delete option, and any blocked action now gives clear feedback. The update also fixes receipt printing errors for cash movement receipts, improving day-to-day POS reliability.
Original PR description
Before this commit, a user with "account.group_account_invoice" group could try to delete a cash in/out in the pos but had no feedback. Actually, his request was refused but we never tell the user why. We now display the error but also do not give the possibility to the user to delete a cash in/out if he does not have the right group. There was also errors appearing when printing the CashMoveReceipt. We call the ReceiptHeader in the CashMoveReceipt but without giving it a real order which could cause problems cause in the ReceiptHeader we consider the order that is given as a real one and we can call methods and stuff from the model. We now create a dummy order to give to the ReceiptHeader. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr