Daily updates from Odoo
Friday, August 9, 2019
19 changes
Enhancements to existing features
This update makes Odoo's attachment handling easier to extend, especially for businesses using custom storage solutions. It reduces the need for custom modules to override core behavior, making future storage integrations and maintenance simpler.
Original PR description
Description of the issue/feature this PR addresses: Fixes https://github.com/odoo/odoo/issues/33456 Current behavior before PR: At the moment it is not easy to add a new storage type without overwriting several methods. The same applies to the method for migrating attachments. Desired behavior after PR is merged: This patch has the goal to improve this. An example that uses these changes is this addition of the storage type Large Object. Large Objec: https://github.com/muk-it/muk_base/blob/12.0/muk_attachment_lobject/models/ir_attachment.py Since the methods: `_get_datas_inital_vals`, `_update_datas_vals`, `_get_datas_clean_vals`, `_clean_datas_after_write` are used it would even work if several storage extensions were installed in the system, because now every module only has to implement its own cleanup method. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Point of Sale now creates one combined accounting entry when a session is closed instead of separate entries for every order. This improves closing performance for busy shops with many orders and makes payment reconciliation clearer by grouping receivables by payment method.
Original PR description
[work-in-progress] Improve the performance of the PoS when closing a session + improve the usability of the PoS by showing clearer information -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update makes the search panel apply additional information consistently across its related operations. It helps ensure users see more reliable filtering behavior in views that use the search panel.
Original PR description
Description of the issue/feature this PR addresses: The new SearchPanel uses 2 methods, but only one of them gets additional arguments when called. This PR adjusts the methods, so that both get additional arguments. Current behavior before PR: Only one method gets additional arguments Desired behavior after PR is merged: Both methods get additional arguments -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The delivery settings now hide the option to generate return labels when the selected carrier does not support it. This prevents users from enabling an unavailable carrier feature and reduces configuration mistakes.
Original PR description
Now we hide the generate return label if this option is not available for the current carrier. Before this fix, we could set the field to true even if the option was not available for this particular carrier. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Odoo’s mail gateway now handles bounced and valid incoming emails more consistently, helping keep mailing lists cleaner and contact delivery status more accurate. The change also removes outdated private email discussion routing and simplifies the underlying mail processing for more reliable future maintenance.
Original PR description
PURPOSE Add some improvements in mail gateway: remove private discussion, improve bounce management, allow resetting bounce counters, improve automatic set or reset of blacklists and ease mass…
PURPOSE Add some improvements in mail gateway: remove private discussion, improve bounce management, allow resetting bounce counters, improve automatic set or reset of blacklists and ease mass mailing inheritance. MAIN SPECIFICATIONS Remove private discussion support in mail gateway. It is not really supported since several versions. This merge removes remaining code in gateway. Perform all incoming email parsing in message_parse and its sub methods. That way future processing can use parsed values instead of re-doing parsing of required information. Add ``_message_parse_extract_bounce`` parsing sub method to parse bounce information and use it in mass mailing. Add ``_routing_handle_bounce``: handle bounced emails by notably updating the bounce counter on blacklist records. Add ``_routing_reset_bounce``: handle valid incoming emails by notably resetting bounce information on that specific email. Have ``_message_receive_bounce`` and ``_message_reset_bounce`` being void in mail.thread and updating reset counter in blacklist enabled records. Update blacklist / unblacklist in mass mailing, take into account traces and partner information. Add tests. See sub commits for more details and explanation. LINKS See task 1893155
Mobile users selecting related records now see a kanban-style card view instead of a list, making choices easier to scan and tap. Odoo also adds configuration so teams can tailor these selection screens and hide unnecessary controls during selection.
Original PR description
- Add support of "kanban_view_ref" on many2x fields: For many2one fields, this specific kanban view will be opened when you click on this field. Note that in desktop, the behavior stay unchanged: 'Search More' will open the tree view. For many2many fields, this specific kanban view will be opened when you add a record in mobile. - Add support "selection_mode" in kanban views. This boolean is set to true when you want to use a kaban view to select a record instead of open a record. "selection_mode" is now passed in qweb_context to allow developers to use t-if='selection_mode' in kanban views to show or hide elements; buttons, dropdowns, anchor tags are not necessary when selection_mode is enabled. So those elements can be hidden based on this condition. Useful when kanban view is opened from m2o in mobile environment. Task ID : 1924779
Receipt printing in Point of Sale has been modernized so receipts are printed as images through IoT-connected printers. This enables broader printer compatibility, including network printers, better language support, and clearer setup guidance for certain Star printers.
Original PR description
This PR is linked to odoo/enterprise#4237. It refactors the way receipts are printed and its goal is to remove the `hw_escpos` module and replace it with an IoT Driver. We now print receipts as…
This PR is linked to odoo/enterprise#4237. It refactors the way receipts are printed and its goal is to remove the `hw_escpos` module and replace it with an IoT Driver. We now print receipts as images. In the browser, we generate the image with the help of `html2canvas`, then send it to the IoT Box. In the driver, we convert this image to ESC/POS commands and send those commands through CUPS. To print images, we also needed to change all the custom XML used to describe the structure of the receipts by HTML. A few additional improvements have been introduced: - Since the commands are sent through CUPS, we can now use any ESC/POS compatible printer detected by CUPS, including network printers - In Enterprise, when multiple printers are connected to the same IoT Box, users can now select which one they want to use, both for classic receipts and orders tickets. - Since receipts are now printed as images, they can contain any UTF-8 character. Adding support for other languages such as Arabic. - Supported Star printers use by default their own protocol and need a change in their configurations in order to print receipts. We now detect that their configuration is wrong and print a ticket with the instructions to fix this. **Note:** The `hw_escpos` module is still present because older versions of Odoo that are still supported should still work with the latest version of the IoTBox. This module will be removed when those versions are not supported anymore. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Employee badge handling is now clearer, with simplified generate and print actions when managing badge IDs. Attendance screens also receive wording and layout improvements, including clearer manual identification and visible work hours for managers.
Original PR description
Purpose of this task is ease the badge creation and few wording of attendance. task- 2040884 pad link- https://pad.odoo.com/p/r.96aa2f8037ea86650adfe5bd88648037
This update refreshes several website editing dialogs to make them clearer and easier to use, including SEO, theme, menu/link, and optimization screens. It also replaces older promotional footer badges with the official Odoo logo and improves small visual issues such as spacing and text readability.
Original PR description
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
The website publishing control is now easier to understand, with a clearer “Go to Website” label and color-coded globe icon showing whether content is published. This helps users quickly see publication status and open related website pages, including product pages, in a new tab.
Original PR description
[IMP] website, *: improve published smart button * = website_blog, website_crm_partner_assign, website_event_track, website_forum, website_hr, website_hr_recruitment, website_livechat, website_partner, website_sale, website_slides The published button name is a bit ambiguous, now it will clearly state what it does with a new title : "Go to Website". The "Published", "Unpublished" state is shown with the globe icon changing color (green and red). Also the website page referencing the product now opens in a new tab. task-2002435
Website forums can now be configured as either Questions and Answers or Discussions. This gives businesses more control over community interactions: Q&A keeps responses limited and focused, while Discussions allow open-ended conversation.
Original PR description
qsd It is now possible to specify the forum mode : Questions and Answers or Discussions. In Q&A mode, a user can only reply once while there is no limit in Discussions mode. task-2008910 closes odoo/odoo#34097 Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com> 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
Event sessions can now show and manage more than one speaker, making schedules better reflect panels, co-presentations, and collaborative talks. This improves the event website and back-office forms so organizers can present speaker information more accurately to attendees.
Original PR description
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
The delivery setup now hides the generate return label option for carriers that do not support it. This prevents users from selecting an unavailable service and helps avoid incorrect carrier configurations.
Original PR description
Now we hide the generate return label if this option is not available for the current carrier. Before this fix, we could set the field to true even if the option was not available for this particular carrier. Task-Id: 1956970
Receipt printing is being modernized so receipts are generated as images and sent through the IoT Box, improving printer compatibility and language support. Businesses can use more ESC/POS printers, including network printers, choose between multiple connected printers, and receive clearer guidance when certain Star printers need configuration changes.
Original PR description
This PR is linked to odoo/odoo#33095. It refactors the way receipts are printed and its goal is to remove the `hw_escpos` module and replace it with an IoT Driver. We now print receipts as images. In…
This PR is linked to odoo/odoo#33095. It refactors the way receipts are printed and its goal is to remove the `hw_escpos` module and replace it with an IoT Driver. We now print receipts as images. In the browser, we generate the image with the help of `html2canvas`, then send it to the IoT Box. In the driver, we convert this image to ESC/POS commands and send those commands through CUPS. To print images, we also needed to change all the custom XML used to describe the structure of the receipts by HTML. A few additional improvements have been introduced: - Since the commands are sent through CUPS, we can now use any ESC/POS compatible printer detected by CUPS, including network printers - In Enterprise, when multiple printers are connected to the same IoT Box, users can now select which one they want to use, both for classic receipts and orders tickets. - Since receipts are now printed as images, they can contain any UTF-8 character. Adding support for other languages such as Arabic. - Supported Star printers use by default their own protocol and need a change in their configurations in order to print receipts. We now detect that their configuration is wrong and print a ticket with the instructions to fix this. **Note:** The `hw_escpos` module is still present because older versions of Odoo that are still supported should still work with the latest version of the IoTBox. This module will be removed when those versions are not supported anymore. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Point-of-sale sessions now create one combined accounting entry when closing instead of separate entries for every order. This reduces the volume of journal entries, speeds up closing for sessions with many orders, and makes payment reconciliation simpler.
Original PR description
Main goal of this task is to create single accounting entry for the pos.session instead of individual accounting entry for each order in the session. This significantly minimizes the number of created journal entries by point_of_sale which also results to faster closing of session when there is large numbers (order of thousands) of orders in the session.
Mobile users will now select related records through clearer kanban-style cards instead of list popups or native dialogs. This makes record picking easier on phones and allows screens to hide unnecessary actions while users are only selecting an item.
Original PR description
- Replace mobile native dialogs for many2X by kanban views. This kanban will be used on mobile in SelectCreateDialog. So many2one widget will open kanban view instead of listview when records needs…
- Replace mobile native dialogs for many2X by kanban views. This kanban will be used on mobile in SelectCreateDialog. So many2one widget will open kanban view instead of listview when records needs to be selected. - Add support of "kanban_view_ref" on many2x fields: For many2one fields, this specific kanban view will be opened when you click on this field. Note that in desktop, the behavior stay unchanged: 'Search More' will open the tree view. For many2many fields, this specific kanban view will be opened when you add a record in mobile. - Add support "selection_mode" in kanban views. This boolean is set to true when you want to use a kaban view to select a record instead of open a record. "selection_mode" is now passed in qweb_context to allow developers to use t-if='selection_mode' in kanban views to show or hide elements; buttons, dropdowns, anchor tags are not necessary when selection_mode is enabled. So those elements can be hidden based on this condition. Useful when kanban view is opened from m2o in mobile environment. Task ID : 1924779
The Web Studio Edit Menu dialog received minor adjustments to stay aligned with recent platform changes. This helps keep menu editing consistent and reliable for users working in Studio.
Original PR description
Minor changes in "Edit Menu" dialog. task-2026299 (related to https://github.com/odoo/odoo/pull/34422)
The website-related smart button now clearly says "Go to Website" instead of using a more ambiguous published label. Users can still see whether an item is published through the globe icon color, and linked website pages open in a new tab for a smoother workflow.
Original PR description
* = website_helpdesk, website_twitter_wall The published button name is a bit ambiguous, now it will clearly state what it does with a new title : "Go to Website". The "Published", "Unpublished" state is shown with the globe icon changing color (green and red). Also the website page referencing the product now opens in a new tab. Related to: https://github.com/odoo/odoo/pull/34261 task-2002435
Some warning messages shown after field changes can now appear as lightweight toast notifications instead of always interrupting users with a pop-up. This helps reduce disruption while preserving modal warnings for cases that still need stronger attention.
Original PR description
Warnings for the onchange now takes a type to know if it needs to be displayed with a modal (like before). Else it is displayed with a toast notification. Related to: https://github.com/odoo/odoo/pull/35342