Friday, August 1, 2025
7 changes · saas-18.2
Resolved issues and error corrections
The Spanish Verifactu POS flow now uses the company’s configured simplified invoice threshold instead of a fixed €400 amount. This keeps invoice handling aligned with current localization settings and reduces the risk of applying outdated limits.
Original PR description
In 18.0+ there is a field that determines the amount up to which an invoice can be simplified (`l10n_es_simplified_invoice_limit`). After this commit we use that instead of the hardcoded limit of 400 € that was used in 17.0. task-None Forward-Port-Of: odoo/odoo#221347
Checkboxes in task descriptions now keep their checked or unchecked state when users navigate away with breadcrumbs. This prevents lost updates in Project task descriptions and makes checklist use more reliable.
Original PR description
Problem: In the Project app, when a task's description contains checkboxes and you check an item, then navigate back using breadcrumbs, the change is not saved. Cause: Breadcrumb navigation triggers a `blur` event to save the content. However, if the editable is not focused and you click on a checkbox, it doesn’t focus the editable. As a result, clicking away does not trigger `blur`, and the change is lost. Solution: Since `<li>` elements are not focusable, we programmatically focus the editable when toggling a checkbox. If it was already focused, we preserve the current selection. Steps to reproduce: - Add checkboxes to a task description - Save - Mark one checkbox as checked (editable remains unfocused) - Navigate back using breadcrumbs - Open the same task again -> The checkbox state is not saved opw-4922375 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#219891
Website form fields now keep their default values when users adjust the field position or visibility in the editor. This prevents accidental loss of prefilled form information and makes form editing more reliable.
Original PR description
Problem: When changing the default value of a field, then modifying its position and visibility, the field loses its default value. Cause: Setting a default value assigns the `value` attribute to the…
Problem:
When changing the default value of a field, then modifying its
position and visibility, the field loses its default value.
Cause:
Setting a default value assigns the `value` attribute to the field's
input element. However, after re-rendering with `_renderField`, the
HTML `value` attribute is lost. As a result, when
`_computeWidgetState` called with `selectAttribute` as method name, it
fails to retrieve the value because there is no HTML `value` attribute
on the input.
Using `t-att-value="field.value"` will lead to `value` attribute loss
during owl rendering, this is an owl bug but this fix is to work around
it until it is globally fixed.
Solution:
use `t-attf-value="#{field.value}"` instead of
`t-att-value="field.value"`
Steps to reproduce:
- Add a form
- Select any input field
- Set a default value
- Change the field's position
- Change the field's visibility
-> The default value is lost
opw-4902544
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#220047In website translation mode, clicking content that cannot be translated now shows only one notification instead of sometimes repeating it. This reduces confusion for users editing website translations and makes the experience feel more polished.
Original PR description
Since [1], when clicking a non-translatable element in translation mode, the notification was sometimes shown multiple times due to event bubbling. This commit stops the click event from propagating, ensuring the notification is only triggered once. [1]: https://github.com/odoo/odoo/commit/41e341177611cf69d1bd61e66a809510c22cc1b7 Forward-Port-Of: odoo/odoo#221241
A manufacturing accounting test was updated so it no longer depends on optional demo data. This helps keep automated checks stable across environments, reducing false failures during release validation.
Original PR description
Refactored the test to remove its dependency on demo data. See Runbot #230412 Forward-Port-Of: odoo/odoo#221338
The Indian GST reporting flow was adjusted so the GSTR1 report can be created during automated checks without permission errors. This helps keep tax reporting validation reliable and prevents avoidable build failures.
Original PR description
steps to reproduce: 1. Install l10n_in_reports module. 2. Run the test `TestReports.test_hsn_schema_change_gstr1_json`. this is required to avoid permission issues when creating the GSTR1 report in the test. build_error-223245 Forward-Port-Of: odoo/enterprise#90832 Forward-Port-Of: odoo/enterprise#89116
The French VAT return export now places reimbursement amounts from grid 26 in the correct XML field. This helps ensure VAT refund requests are included properly when businesses submit their French tax report electronically.
Original PR description
The French VAT report line for grid 26 ("Repayment of credit requested on form n°3519") uses code `box_26_external`, but the XML generator only mapped `box_26` to the `JB` tag.
As a result, the reimbursement amount was missing or incorrectly placed in the XML file.
This commit maps `box_26_external` to `JB` to ensure the correct tag is used when the user fills in grid 26.
opw-4931275
Forward-Port-Of: odoo/enterprise#90940