Tuesday, May 13, 2025
10 changes · 18.0
Resolved issues and error corrections
DIN5008 report addresses now keep the intended font size and no longer inherit the customizable secondary color by mistake. This keeps printed quotations and similar documents visually consistent and easier to read when company report colors are changed.
Original PR description
### Steps to reproduce: - Install "l10n_din5008" - In Settings > Layout, select DIN5008 as the report and change the two possible colors - Create a quotation, print it - The address is colored ###…
### Steps to reproduce: - Install "l10n_din5008" - In Settings > Layout, select DIN5008 as the report and change the two possible colors - Create a quotation, print it - The address is colored ### Cause This [commit](https://github.com/odoo/odoo/commit/92e4c3cb3bec0b3d5537a50fd441a22fa6509ed1) reduced the size of the address by replacing `div` with `span` which is applied `font-size: 0.8em;`. But also `color: $o-default-report-secondary-color;` ([see](https://github.com/odoo/odoo/blob/d3e43681fd2b989ae7272731662cc3ac6a6d913b/addons/l10n_din5008/static/src/scss/report_din5008.scss#L47-L50)). ### Solution Don't use `span` in the CSS to select the text. Instead we create a new class `colored_address` to apply the color and apply the same font size on the entire address block. This way the addresses will always have the same font size and the color should only be applied where we want it to. Before:  After:  Ticket [link](https://www.odoo.com/odoo/project/967/tasks/4725169) opw-4725169
The web control panel now keeps search bars and action buttons aligned at medium screen sizes instead of letting them drop below other controls. This provides a cleaner, more consistent layout for users working on tablets or smaller browser windows.
Original PR description
requires: https://github.com/odoo/enterprise/pull/84124 --- In the control panel, any middle element (whether it's the search bar or control_panel_actions) tends to drop below the rest of the content…
requires: https://github.com/odoo/enterprise/pull/84124 --- In the control panel, any middle element (whether it's the search bar or control_panel_actions) tends to drop below the rest of the content under the `lg` breakpoint due to missing spacing. Under `md`, these elements collapse into dropdowns or toggle buttons as expected. Prior to this commit, there was an issue with the spacing applied between `md` and `lg`. This was either caused by the `mt-md-0` class on the search bar or the specific breakpoint use of `gap-lg-3` To resolve the spacing issue between `md` and `lg`, we now apply the correct gap (by adding a `gap-2` alongside the `gap-lg-3`) on the control panel’s main div, and remove unwanted margin/padding classes. | | Before (between md and lg) | After (between md and lg) | |--------|--------|--------| | w/ searchbar |  |  | | w/ actions |  |  | task-4568501 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes a display issue where empty integer fields could show the word "false" while a new record was being created in a list view. Users now see a cleaner, expected empty value before saving, reducing confusion during data entry.
Original PR description
Steps to reproduce: - Open a list view in which integer field having default value as false like ID field which has enable_formatting option as False. - Create a record Issue: - False is shown inside in integer field before saving. Reason: - When enable_formatting is False the value is returned and no checks are done. Fix: - A basic check to make sure we are sending out a number not a boolean. task-4700791
The Point of Sale upgrade process now skips unnecessary work when a record has no UUID. This prevents upgrades from taking longer than needed without changing day-to-day POS behavior.
Original PR description
We don't need to create values when the uuid is NULL. Otherwise we get a long running upgrade for no reason. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes an error that could occur when inviting a new user from Settings in a fresh Odoo database. The invitation flow now checks whether optional email data is available before using it, so businesses can add users without interruption.
Original PR description
Steps to reproduce the issue: - Start a new database without installing any module - Log in - Go to Settings - Invite a new user => A traceback occurs due to the `email_normalized` field being accessed on `res.users`. This field is defined in the `mail` module, but `base_setup` does not depend on it. This commit adds a check to ensure that the `email_normalized` field exists before attempting to access it, preventing the traceback. opw-4784587
Product cards in the self-ordering flow now show the base product price before a customer chooses a variant. This avoids misleading prices when variants have extra charges and helps customers see accurate starting prices.
Original PR description
- Fix issue in `pos_self_order` module where the displayed product price was wrong when a product had variants (with creation "Instantly") and with an extra price. - The price displayed in the product card was the price of the first variant instead of the price of the product template (since we have not yet chosen a variant). opw: 4755565 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes a small typo so JPEG images use the correct file extension in the web interface. The change helps avoid confusion or minor compatibility issues when image files are referenced or handled.
Original PR description
Typo fix. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Documents app no longer applies an extra spacing workaround in its toolbar area. This keeps the layout aligned with the corrected shared interface behavior, reducing the chance of uneven spacing for users.
Original PR description
requires: https://github.com/odoo/odoo/pull/207461 --- This commit removes an obsolete padding on .o_control_panel_actions class in the `documents` module. The layout issue it was compensating for has now been properly addressed in the `web` module by applying the correct gap-* classes correctly on the control panel’s main div. task-4568501
Mexican electronic invoice views now correctly show the supplier RFC when that field is added to invoice lists or forms. This fixes a display issue caused by reading a placeholder instead of the actual invoice attachment data.
Original PR description
Before this patch, adding `l10n_mx_edi_cfdi_supplier_rfc` (or any other field filled by `_fill_from_cfdi_values`) to a tree/form view showed the field empty.
Root cause
----------
`_fill_from_cfdi_values()` decoded the CFDI using `attachment.raw` with `bin_size=True` still in the context, so the ORM returned the placeholder `b'59.00 bytes'`. As a result,
`_decode_cfdi_attachment()` got an empty payload and returned `{}`.
Fix
---
Reload the attachment without the `bin_size` flag
This fix stops users from creating an incomplete private key entry while configuring Argentine invoicing. It prevents an error during renewal request generation and helps companies complete their tax configuration more reliably.
Original PR description
The system failed to retrieve `company.l10n_ar_afip_ws_key_id.pem_key` because of quick create. Steps to Reproduce: 1. Switch to `(AR) Exento Company`. 2. Navigate to `Settings `> `Invoicing`. 3. Search for `Argentinean Localization`. 4. In `Primary Key`, clear the field, enter any value, and click Create. 5. Click `Generate Renewal Request`. Error: `TypeError: argument should be a bytes-like object or ASCII string, not 'bool'` Solution: Add `no_quick_create : True` for l10n_ar_afip_ws_key_id field. Sentry - 5999498377