Daily updates from Odoo
Saturday, September 27, 2025
5 changes · 19.0
Enhancements to existing features
The self-ordering flow now helps customers jump directly to any required product option they missed before adding an item or combo. This reduces confusion during ordering and can help customers complete purchases more smoothly.
Original PR description
In this commit: ---------- - We are introducing a feature where the user will be redirected to the missing required attribute on the click of the arrow button at last of the product page/combo page. task-4886023
This update adds broader automated checks for Mexican payroll CFDI signing scenarios, including bonuses, savings funds, and deductions. It helps reduce the risk of payroll e-documents being generated or signed incorrectly, improving compliance confidence for Mexican payroll operations.
Original PR description
This adds a bunch of scenarios for the CFDI signing. Task: 5066078
This change improves troubleshooting by preserving the full error details when automated web tour steps fail. It helps developers identify the real source of failures faster, reducing time spent diagnosing unclear browser errors.
Original PR description
Because it only embeds the error message, and because it ultimately gets `console.error`-ed, an error during a `run()` function is currently extremely unhelpful e.g.
Cannot read properties of undefined (reading 'ownerDocument')
might be all you get. And despite what one might assume, browsers (or at least chrome) don't seem to chain stacktraces when using `{cause}`, so even printing stacktraces on `console.error` does not yield useful information, the stacktrace point to `performAction` instead of a useful location.
So use the `Error#stack` if it's available. In chrome that includes both the error message and the full stack, so a formatted error message is unnecessary. Fall back on a formatted error message if the error has no stack for some reason.
Forward-Port-Of: odoo/odoo#227169The website editor now handles translatable content more precisely, avoiding unnecessary editable behavior on elements that should not be directly changed. This improves reliability when translating website pages and reduces the chance of accidental editing side effects.
Original PR description
[IMP] html_builder, *: improve the logic of the translation plugin *: website The goal of this commit is to improve the logic of the `TranslationPlugin` plugin. Indeed, we do not want this plugin to…
[IMP] html_builder, *: improve the logic of the translation plugin *: website The goal of this commit is to improve the logic of the `TranslationPlugin` plugin. Indeed, we do not want this plugin to handle the addition of the `o_editable` class to html elements. Instead we let this task to `SetupEditorPlugin` as usual. The problem is still that some html elements have translatable attributes and those elements will not have the `o_editable` class as they do not have the branding (oe data information). To handle those, a new `o_editable_attribute` system class is added on them. Thanks to those classes, we know which nodes are translatable (elements that are editable and elements with the `o_editable_attribute` class have an attribute that is translatable). The advantage of handling the translation that way is that we do not add the `o_editable` class on elements that are not savable. This is better also in order to not add the `contenteditable` attribute abusively. Related to task-4367641 Forward-Port-Of: odoo/odoo#223901
This change makes it easier for other Odoo modules to add extra information when calculating analytic distributions for accounting entries. It supports more tailored accounting workflows without changing the standard behavior for users.
Original PR description
**Description of the issue/feature this PR addresses:** Add an inherit point to let others modules specify others/new values when the analytic distribution is build on the analytic distribution model. **Functional example:** If you wan to determine your analytic distribution on the employee (so the `employee_id` field is added into `account.analytic.distribution.model`), the specific module can not edit the dict (who is extracted by this PR). So I propose to extract the `dict` creation into a dedicated method. **Current behavior before PR:** It's not possible to edit the `dict` **Desired behavior after PR is merged:** Update the `dict` (and let it as a `frozendict` to use it as a key). ✅ I don't find any duplicates PR --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#222661