Monday, October 21, 2024
17 changes · 18.0
Resolved issues and error corrections
This fix adjusts the left spacing of the chatter area when it appears inside a chat window. It makes the layout look cleaner and more consistent, improving readability without changing functionality.
Original PR description
Before / After <img width="366" alt="Screenshot 2024-10-21 at 20 45 32" src="https://github.com/user-attachments/assets/ece48e77-cb42-4442-8ff1-fc79743ac718"> <img width="369" alt="Screenshot 2024-10-21 at 20 43 38" src="https://github.com/user-attachments/assets/542034a3-1e01-4222-ad18-edd77090f41d">
Quarter filter values in spreadsheets now stay as Q1 to Q4 regardless of the user's language. This prevents reports and accounting formulas from breaking when users work in languages such as French.
Original PR description
Currently, when using a language that translates the abbreviation of quarters (Q) to anything else, the formula `=filter.value(...)` would return the translated version, which then could not be used on other formulas like `=odoo.balance`, this can be observed by opening the Finance/accounting dashboard while in french and selecting a filter in quarter. After this fix, the formula filter.value will always return Q1 to Q4 for quarter names. Task: [4274741](https://www.odoo.com/odoo/project/2328/tasks/4274741) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Odoo no longer requires an extra developer-only package when running in production. This simplifies installation and avoids pulling in software that is only needed for development work.
Original PR description
The typing_extensions is for dev only and should not be required to run Odoo. Also see #184452
This update cleans up how mail sub-channels are prepared and stored, reducing the chance of inconsistent channel behavior. It also strengthens automated checks so future issues in sub-channel search are easier to catch and diagnose.
Original PR description
- `_to_store` should not be called manually - `Store` constructor already adds the record - code should not assume order of channels in store insert - tour is made more robust and easier to debug by adding extra asserts
This fix updates point-of-sale loyalty test flows so reward pop-ups can be closed after checking that the reward button is highlighted. It helps keep automated checks reliable and reduces the risk of loyalty reward issues going unnoticed.
Original PR description
In this commit, we add the possibility to close the modal after checked that the button reward is higlighted in modal. Also, we fix all tours were the modal has to be closed before continue the tour. Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fixes misaligned translation controls in quotation template descriptions and other multi-language fields. This makes translated content easier to edit and gives users a cleaner, more consistent form layout.
Original PR description
**Version**: 18.0 **Steps to Reproduce**: 1. Navigate to the Subscription module. 2. Open the quotation template form view. 3. Click on the description field in the lines. **Issue 1**: The position of the translation field in the description lines appears misaligned. **Solution 1**: Align the flex items along the baseline of the text to ensure proper alignment of the translation field. --- **Steps to Reproduce**: 1. Install the Sign, Project, and Web Editor modules. 2. Enable multi-language support. **Issue 2**: The translation button in multi-language support is misaligned due to improper absolute positioning within a `div` tag. **Cause**: The button is positioned using `absolute`, which disrupts alignment. **Solution 2**: Remove the `absolute` positioning to fix the alignment issue and ensure proper placement of the translation button.
This fix ensures Brazilian tax settings correctly mark taxes as included in prices where required. It helps keep invoices and accounting calculations aligned with local tax expectations after an underlying configuration change.
Original PR description
Price inclusion wasn't set on taxes in Brazil because the inverse on price_include was removed [1]. This adapts the csv to use price_include_override instead. [1] https://github.com/odoo/odoo/pull/178571 opw-4239515
The mobile message composer no longer shows extra empty space below the typing area on most phones. This keeps the messaging interface cleaner while preserving the intended spacing for iOS devices.
Original PR description
Purpose of this commit: Previously, there was unnecessary space below the compose area in the mobile view. This space was generally present on all phones but was intended only for iOS devices. This commit adjusts the layout accordingly task-4207316
This fix prevents an error when users add a serial number to maintenance equipment before a name is set. It keeps equipment creation and product information editing working smoothly when only the Maintenance app is installed.
Original PR description
**Steps to reproduce the bug:**
- Create a new database and install only the Maintenance app.
- Go to Equipment and create a new one.
- Navigate to the product information.
- Set a "Serial Number"
Problem:
A traceback is triggered when we try to compute the field display_name
using `self.name + self.serial_no`, but `self.name`` is not yet set
and is therefore False:
```
record.display_name = record.name + '/' + record.serial_no
~~~~~~~~~~~~^~~~~
TypeError: unsupported operand type(s) for +: 'bool' and 'str'
```
opw-[4261222](https://www.odoo.com/web#id=4261222&view_type=form&model=project.task)The pricelist report now works correctly when users click the plus button to adjust quantities. This fixes an error that could block users from changing quantities in the report after a platform change removed an older page dependency.
Original PR description
Versions -------- - 18.0 - master Steps ----- 1. Go to product view; 2. using the actions button, go to Pricelist Report; 3. click on the "+" button of the Quantities selector. Issue ----- ReferenceError: Can't find variable: $ Cause ----- jQuery's `$` selector has been disabled there at some point between 17.4 & 18.0. This wasn't caught by the pricelist report's unit tests, as jQuery is made available in that context. Solution -------- Replace the jQuery selector with `ev.target.previousSibling`, which points to the same `input` element. opw-4230836
The update removes unnecessary warning styling from invoice lines where products are not required, reducing confusion for users. Sales documents still show relevant warnings, but down payment lines are now excluded when the warning is not needed.
Original PR description
Purpose of this commit to remove warning class on product section and note widget when it's not a necessary. This commit move warning class code from account to sale as product field is not require on invoice lines and user can confirm invoice without product so there is no need to add warning class on invoice also add condition in sale to not display warning class on down payment lines.
This fix makes the test mock server return only the data that the real server would provide when no specific fields are requested. This helps prevent tests from passing for the wrong reasons and reduces the risk of client data being overwritten during messaging, live chat, ratings, and web test scenarios.
Original PR description
\* = im_livechat, rating, web Similar as python code, where _read_format returns only id when no field names are provided. Returning more fields than expected might create issues (race condition of server data overriding client data: eg. rtc session join should not return extra fields), or simply make the test pass due to the extra data when in reality those data are not present. Back-port from https://github.com/odoo/odoo/pull/183102
Custom newsletter popups saved for later use now show their preview when selected from the website editor's custom snippets. This helps users identify and reuse popup designs reliably instead of seeing an empty or missing preview.
Original PR description
Steps to Reproduce : 1. Go to Website --> Drop a newsletter popup snippet 2. Saved the snippet for later use 3. Drag and drop the Custom Category snippet -> In that you will find no preview of the Newsletter pop-up. Prior to this fix, to prevent pop-up snippets (like the newsletter) from becoming invisible, we saved the element before invoking cleanForSave. However, this approach specifically targeted the standard pop-up (not newsletter popup) snippet only. With this commit, we adapt the condition to target the newsletter and other pop-up snippets, ensuring proper visibility across all popup types during snippet previews. task-4251878
The Chilean electronic invoicing module now checks shared certificate settings correctly even before a company record is saved. This prevents incorrect validation behavior and helps keep company certificate setup reliable.
Original PR description
Resolve an issue where the compute method `_compute_is_there_shared_cert` was triggered before the record was saved, causing the domain to be incorrectly constructed with `company.id`. Replacing `company.id` with `company._origin.id` to ensure the correct domain is applied by accessing the original record instance.
This fix prevents users from creating an incomplete private key directly from settings, which could cause certificate request generation to fail. Businesses using Argentine electronic invoicing get a smoother setup process with fewer blocking errors.
Original PR description
Currently, an error occurs when generating a certificate request, and the private key is available but it has no content. Step to produce: - Install the ```l10n_ar_edi``` module. - Go to the current…
Currently, an error occurs when generating a certificate request, and the private key is available but it has no content. Step to produce: - Install the ```l10n_ar_edi``` module. - Go to the current company, and add CUIT(vat) and city if it is not available. - Go to Settings, and create a quick 'Private Key' which in the Argentinean Localization section. - And click on ```Generate Request``` ```TypeError: argument should be a bytes-like object or ASCII string, not 'bool'``` An error occurs because a user can directly create a private key without adding content in it which is required in 'certificate.key' model, so an error occurs when the system tries to decode the content of the private key at [1], but it is not available. Link [1]: https://github.com/odoo/enterprise/blob/64d3dfdcc4c5c39ef68d94fbfd972a4930283b66/l10n_ar_edi/models/certificate.py#L28 To resolve this issue, remove the quick 'create' option for a private key from settings form view. Sentry-5999498377
The translation button in Web Studio now appears correctly aligned when multiple languages are enabled. This improves the form editing experience by keeping controls visually consistent and easier to use.
Original PR description
Version: - 18.0 Steps to Reproduce: - Install the sign, project, and web_editor modules. - Enable multi-language support. Issue: - The translation button is misaligned. Cause: - The button is positioned using absolute within a div tag, which causes the alignment issue. Solution: - Remove the absolute positioning to fix the alignment.
Fixed an issue that could interrupt ISO 20022 payment processing when payments involved more than one currency. This prevents an error during payment file generation and helps accounting teams complete exports reliably.
Original PR description
Traceback: ``ValueError: Expected singleton: res.currency(1, 125)`` At [1], mistakenly written self instead of rec [1]- https://github.com/odoo/enterprise/blob/e9a2ae47fcdf98635dbdc7a55cb9ed1bfa1f0f5e/account_iso20022/models/account_payment.py#L41-L43 sentry-6000953570