Thursday, January 9, 2025
10 changes
1 change
Resolved issues and error corrections
Material resources now show the expected wrench icon instead of an empty photo placeholder when selected in Planning forms. The update also improves icon and text alignment in resource selection fields, making the interface clearer and more polished for users.
Original PR description
Steps to reproduce: - Open planning app and click on New. - A form is opened and searched for a material resource in the Resource field ex. Crane - An empty photo icon is displayed in the selection bar. Issue: - An empty photo icon is being displayed instead of a wrench. Cause: - Many2XAutocomplete which adds an image in the many2one selection field is not modified to display - the wrench icon in the many2one_avatar_resource_field. Solution: - A similar modification is done in many2many_avatar_resource_field through class which extends Many2XAutocomplete which can be imported and added into components of many2one_avatar_resource_field. fix the alignment between of icon and text in many2many_avatar_resource. task-3801551
9 changes
Resolved issues and error corrections
Discuss call notifications are now only sent while a call is active. This prevents stray peer-to-peer notifications after a call has ended, reducing confusing or unnecessary communication behavior for users.
Original PR description
Before this commit, a race condition could allow attempts to send peer notification to go through despite not having a call. This could happen if a `_busNotify()` call follows a promise that is resolved after the end of a call. This commit fixes this issue by ensuring that notifications can only be sent when a call is active.
Fixes a live chat chatbot issue where a visitor's selected answer could briefly fail to appear correctly after being posted. This improves reliability in chatbot conversations and reduces flicker or inconsistent message display for website visitors.
Original PR description
Follow-up of https://github.com/odoo/odoo/pull/192076 PR above fixes issues regarding question-answer step of chatbot: to detect which answer was picked, it was comparing item selected text content…
Follow-up of https://github.com/odoo/odoo/pull/192076 PR above fixes issues regarding question-answer step of chatbot: to detect which answer was picked, it was comparing item selected text content with each possible answers. This worked as long as each possible answer had mutually exclusive text content. If one proposition had X and another had no X, one option could be unreachable. To solve the issue, PR above tracks the `select_answer_id`. When the user posts a message, the selected answer is returned in RPC response as store data. The selected answer is put in the question message of chatbot. This means the `message_post` store data contains 2 messages. The implementation of message_post in JS is naive and assumes the data contains only 1 message. Therefore when inserting the store data, it was assuming the 1st inserted message in store was the newly posted message. However in this particular case, the 1st inserted message was the question message of chatbot, not the user answer message. As a result, the test `test_complete_chatbot_flow_ui` had the following non-deterministic issue because of this: ``` Failed to find 1 of ".o-mail-Message" inside a specific target with text "I'd like to buy the software" (as parent). Found 0 instead. ``` This commit fixes the issue by putting the message_post message (the answer of user) before the question message of chatbot. This is the chosen fix as this is minimal. The destruct of store.insert() in message_post is too naive and should be changed by something more robust in the future. Note that this problem was not present in practice: the visitor message was visible but with minimal flicker. This is because the bus notification was adjusting the UI from the erroneous message_post result. runbot-111747
This fixes an error that occurred when multiple stock lot records were created at once through external integrations. Businesses using automated inventory workflows can now create batches of lot records reliably without running into a missing argument failure.
Original PR description
Before this commit: creating stock lot records (multi) via the xml.rpc resulted in a bug: missing argument 'vals_list'. After this commit: It is possible to create multiple stock lot records without this bug --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Self-ordering now sends the assigned stand number to the server when an order is meant to be served at a table. This helps staff identify where to deliver orders and prevents missing location details in the point-of-sale flow.
Original PR description
Before this commit, if the order was set to be served at a table, the assigned stand number was not sent to the server because the draft order was sent to the server before opening the stand number page. opw-4457394 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes an automated website editor test that could fail depending on timing when switching languages. The change helps keep quality checks stable, reducing false failures during development and releases.
Original PR description
In this commit, we fix the tour snippet_translation_changing_lang. The problem is that we don't wait for the DOM to be re-rendered before clicking on the dropdown to open the editing dropdown. So, if we click before the DOM is re-rendered, it also re-renders the dropdown menu and it disappears. So depending on the execution speed of the tour, it may fail. This commit fixes this behavior. 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
Starting or resuming a timer in the timesheet grid now correctly shows which row has the active timer, including after refreshing the page. This helps users see their current tracked work at a glance and avoids confusion when recording time.
Original PR description
Before this commit, when the user starts a new timer on the grid view and a timesheet is created, the timer is not marked as running on the row contained the project. Same issue when a timer is running and the user refreshes the page. This commit adds the needed data to make sure the grid view finds which row has the timer running.
The sales external tax test now clears pricelist settings before running so expected prices stay consistent. This prevents false test failures when a pricelist would otherwise change product values during the portal tour.
Original PR description
Since #76586 the tour checks for exact values, if a pricelist happens to apply, then the product value will be altered and not match expectations. Reset pricelists to ensure consistent execution environment.
Documents can no longer be saved after renaming without a valid name. This prevents unnamed documents from displaying as “False” and helps users catch the issue immediately with a clear save warning.
Original PR description
When we rename any doc without a name, it shows 'False' because the field isn't set as 'required.' Making it mandatory will trigger a red alert on save, ensuring a valid name is entered. Task-4367684
Fixes an issue where the Trial Balance could not display additional balance-related columns after a performance change in version 18.0. This helps users see the expected financial figures without losing the speed improvements from the earlier update.
Original PR description
Since 18.0[^1], the ending balance is done by summing the values fetched instead of querying the database again. While this is a great performance gain, it also means that we can't get other values like the balance. Note that the Trial Balance has been refactored in 18.1[^2], so a simple fix is enough. opw-4435450 [^1]: e598fcb48b5e4f0126406a4008f175a88528ba85 [^2]: a7e1ec20e07efc39bca44d3ae613a54770175273