Tuesday, May 13, 2025
15 changes
2 changes
Resolved issues and error corrections
Fixed an issue that could crash the rental product page when opening products in a new database. This ensures business users can access rental products reliably while default pricing information is prepared.
Original PR description
… for On a virgin DB Go to renting => product Enter studio The kanban of product.template triggers an onchange to get default values Before this commit there was a crash due to a bug in the ORM: the compute of the display_price field did not compute the currency_id id correctly. task to solve the ORM bug: 4264573 solving PR: https://github.com/odoo/odoo/pull/165930 runbot-error-161799
Bank synchronization now uses the correct journal reference when calculating the global summary. This prevents incorrect amounts from appearing after selecting an account, giving users more reliable reconciliation information.
Original PR description
Before this commit, when doing a bank synchronization the active id was the id of the wizard for selecting an account. So the amount on the global summary were wrong no task id
3 changes
Resolved issues and error corrections
This update keeps spreadsheet-related features working smoothly after an underlying spreadsheet component change. It also makes chart options available where dashboards need them, improving consistency across spreadsheet and dashboard experiences.
This update improves the reliability of bank reconciliation screens by using stable record identifiers instead of list positions. This helps prevent incorrect button or line handling after platform changes removed the previous position-based reference.
Original PR description
This commit will fix multiple occurrence of using id instead of index because since 18.4, the index is not there anymore no task id
Manually edited appointment booking links that are missing required details no longer cause a system error. Instead, users are shown a standard page-not-found response, keeping the booking experience more stable and avoiding unnecessary error reports.
Original PR description
The system fails to trigger the appointment booking form due to missing required parameters (`date_time` and `duration`) Steps to Produce: 1. Created a DB with demo data and installed an appointment. 2. Open `Appointments`. 3. Click the Action button of the dental care appointment and generate and copy the share link. 4. Open copied link and click on an available time slot. 5. On the next view manually remove everything after the info in url. 6. Error occurs. Error: `TypeError : AppointmentController.appointment_type_id_form() missing 2 required positional arguments: 'date_time' and 'duration'` Solution: Updated the `appointment_type_id_form()` method by setting default values to `None`: - If `date_time` or `duration` is missing, the system won't crash with a `TypeError`. - Now it gives `404` page not found. Sentry - 4952598215
10 changes
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