Daily updates from Odoo
Wednesday, July 16, 2025
10 changes · master
Enhancements to existing features
The POS Urban Piper ticket screen layout was adjusted so the main action buttons appear correctly after the newly introduced reprint button. This keeps the ticket screen easier to use and prevents button placement issues for point-of-sale users.
Original PR description
In this commit: - We have introduced reprint button in ticket screen in related PR, to adapt the view and show main buttons afterthat reprint button we have changed the xpath here. Task: 4517972 Related PR: https://github.com/odoo/odoo/pull/198948
This update improves how Field Service tests simulate location data, making them more reliable and easier to maintain. It also makes a small wording display adjustment by adding spacing before the “View on Map” link.
Original PR description
[IMP] industry_fsm: use MockRequest to fake geoip In this commit: - MockRequest is used to fake geoip in industry_fsm tests instead of hard coding it with DotDict and manipulating the _request_stack. - space added before "View on Map". task-4745995 Forward-Port-Of: odoo/enterprise#88428 Forward-Port-Of: odoo/enterprise#84322
Resolved issues and error corrections
Live chat session avatars now open the correct operator card instead of showing the wrong person. This also prevents an error when the operator is a chatbot, improving reliability for teams reviewing chat sessions.
Original PR description
Before this commit, clicking on the avatar of the kanban view of live chat sessions (discuss.channel), would open a popup card of a different user than the operator. If the operator is a chatbot it produces a traceback. 1. Live Chat > Sessions 2. Click on the avatar of any operator -> wrong user 3. Click on the avatar of the odoo bot -> traceback This happens because the `many2one_avatar_user` widget expects a `res.users` value, but a `res.partner` value is passed (`livechat_operator_id`). This commit fixes the issue by changing the livechat_operator_id field from `res.partner` to `res.users`. task-4640810
This update corrects how the Belgian POS black box reads status responses from serial-connected devices. It helps ensure the POS receives the right device status, reducing failed or incorrect fiscal black box interactions.
Original PR description
As serial drivers use a different way of providing status, we need to check for the right value in the blackbox response. Community PR: odoo/odoo#218203 Forward-Port-Of: odoo/enterprise#89900
Draft assets without a computed depreciation board no longer cause an error when opening the depreciation schedule with draft entries. The system now uses the first available entry date when no prior asset date exists, keeping asset review workflows accessible.
Original PR description
Issue: https://github.com/odoo/odoo/issues/219112 Steps to reproduce:- - Minimum 1 asset in draft - Computation board not computed yet - Opening the depreciation schedule with draft entries. Cause:- - When asset is in draft and computation board is not computed yet no Journal Entries are created for that asset. - `asset_date` is minimum value among dates of related moves. - In this case there are no moves yet so `asset_date` is 'NoneType' - `asset_date = min([asset_date, move_vals['date']])` - In above line when we try to compare 'datetime.date' and 'NoneType' it gives rpc error. Fix: `min([asset_date, move_vals['date']]) if asset_date else move_vals['date']` Followup on commit: https://github.com/odoo/enterprise/commit/eb57a9bc4066ece08059384742d70705a646bbdc Forward-Port-Of: odoo/enterprise#90308
The IoT setup process now checks whether an existing IoT box record has actually changed before saving updates. This reduces unnecessary system activity and helps keep setup operations more efficient without changing user-facing behavior.
Original PR description
Currently when /iot/setup method is called if the iot box record exists we always update the record with the received data, even if the data is the same as the record's data. This PR only updates it if the data changes Forward-Port-Of: odoo/enterprise#88210 Forward-Port-Of: odoo/enterprise#88043
Users can now remove a field matching from a spreadsheet global filter and have that change saved as expected. This prevents old filter settings from unexpectedly remaining in place after editing, improving reliability when managing spreadsheet filters.
Original PR description
Steps to reproduce: 1. Open a spreadsheet with global filters. 2. Open the global filter editor. 3. Open a global filter. 4. Delete the field matching (and nothing else). 5. Save the global filter. => The field matching is not saved. This was due to the fact that the removal of the field matching makes an early return in the `updateFieldMatching` method, which had for last instruction to set the `draft` property to mark the filter as dirty. This commit fixes the issue by ensuring that the `draft` property is set even when the field matching is removed. Task: 4882261 Forward-Port-Of: odoo/enterprise#89621
The update ensures the admin user has an email address during quality control worksheet tour tests. This prevents test failures caused by missing sender email configuration, improving reliability of automated checks without changing business functionality.
Original PR description
Set the admin user's email explicitly to prevent "Please configure the sender's email address" error when running the tour with login='admin'. build_error-226779 Forward-Port-Of: odoo/enterprise#88283
Code cleanup and technical improvements
This update reorganizes how WhatsApp-related partner, user, and guest data is represented in the system. It supports cleaner maintenance and future improvements without changing day-to-day user workflows.
Original PR description
Enterprise counter-part.
Miscellaneous changes
This commit addresses the errors encountered by the SPF with blackbox - Transaction with kiosk put in journal file - Problem in the Journal file where the rounding was miscomputed - Precision of the amount on which the tax was applied on the receipt when only one tax applied. Forward-Port-Of: odoo/enterprise#86703 Forward-Port-Of: odoo/enterprise#82737
Original PR description
This commit addresses the errors encountered by the SPF with blackbox
- Transaction with kiosk put in journal file
- Problem in the Journal file where the rounding was miscomputed
- Precision of the amount on which the tax was applied on the receipt when only one tax applied.
Forward-Port-Of: odoo/enterprise#86703
Forward-Port-Of: odoo/enterprise#82737