Wednesday, May 20, 2026
13 changes · master
Enhancements to existing features
Odoo now warns users when document numbering prefixes or suffixes include non-ASCII characters. This helps prevent confusing or hard-to-spot numbering issues before they affect business documents and records.
Original PR description
Description of the issue/feature this PR addresses: https://github.com/odoo/odoo/issues/76590 Current behavior before PR: <img width="746" height="256" alt="image" src="https://github.com/user-attachments/assets/03bc1832-faa4-4ac2-877d-5571911ef4f4" /> <img width="795" height="333" alt="image" src="https://github.com/user-attachments/assets/339aea50-7dce-4ea2-a2d8-a93eddb99215" /> Desired behavior after PR is merged: <img width="1304" height="609" alt="image" src="https://github.com/user-attachments/assets/82f24791-7009-4b76-9490-0338311a5079" /> --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Muted conversations will no longer show typing indicators, reducing unnecessary distractions for users who have chosen to silence a chat. The change keeps chat behavior aligned with mute preferences while preserving message delivery and other conversation features.
Original PR description
Before this PR, the "is typing" indicator could be showned on a muted conversation. This PR disable this feature for muted conversation by forcing the isTyping field to false when muted. Ideally, we should not even send the is typing notification, but that is not possible since we broadcast them to the entier channel. task-6154090
The customer barcode field is now shown through the Barcode app rather than only through Point of Sale. This makes barcode information available more consistently across apps and avoids conflicts when both Barcode and Point of Sale are installed.
Original PR description
This PR adds the barcode field on res.partner coming from base module to the misc group in barcodes. The field stay here when installing point_of_sale, and as Point of sale group is empty we remove it from the module. This allows us to display the barcode field in other module than point_of_sale without breaking when the two modules are installed. Task-5428837 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Odoo now avoids duplicate information in generated URLs when users navigate between list and single-record views for dynamic models. This makes links cleaner and more consistent, reducing the chance of confusing or overly long URLs without changing everyday workflows.
Original PR description
Currently, if a URL contains two standard actions (one multi-record and one mono-record), they are consolidated to avoid duplication. However, if the same scenario occurs with a dynamic action (model), the consolidation is skipped. This commit applies the same URL consolidation behavior used for standard actions to dynamic actions (models) when generating URLs.
This change simplifies how Odoo registers mail-related data requests across HR, live chat, portal, and website live chat. It makes the underlying setup clearer and easier to extend, reducing maintenance effort without directly changing day-to-day user workflows.
Original PR description
*: hr, im_livechat, portal, website_livechat Before this commit, we would need to register mail/data entries in an if statement based on the name and whether it was applied to logged in users or internal. The point of this PR is to improve the API to be able to have clear parameters and easy registry of the different mail/data request type. This is done with the help of a registry and a decorator to be added on the different request types. task-6085653 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The IoT app's test button can now flash the red and green LEDs on an IoT box. This makes it easier for staff to identify the right device in environments with multiple IoT boxes, reducing setup confusion.
Original PR description
This PR adds a feature to flash red and green leds on the iot box with odoo-led-manager service when using "test" button in iot app This helps to identify an iot box when having multiple in the setup (Ex: OXP) Forward-Port-Of: odoo/odoo#263359
Odoo configuration can now use wildcard-style folder patterns when listing add-on locations. This makes it easier for teams managing several Odoo repositories under one shared folder because they no longer need to list every add-on path manually.
Original PR description
Pass all addons_path entries through glob.glob(), which returns [path] for literal paths and expands patterns otherwise. This is useful when managing multiple Odoo repositories under a common root, avoiding the need to list each addons path explicitly. Forward-Port-Of: odoo/odoo#265086 Forward-Port-Of: odoo/odoo#259690
This update simplifies pay run creation by replacing a direct link to a new payslip form with a dropdown button. This change provides a more intuitive and standard navigation experience for users who frequently initiate new pay runs, aligning with expected workflows.
Original PR description
Inside a pay run you have a new button that opens the form view of a new payslip, but sometimes you expect to create a new pay run taks:6222553
This update simplifies the order signing process by hiding the 'Sign Now' button when an order is already in the signing workflow. This reduces confusion for users and streamlines the process, ensuring they only see the relevant options at each stage. It's a minor improvement focused on user experience.
Original PR description
task-5344686
This update allows users to easily reorder signers directly within the template sidebar using 'Move Up' and 'Move Down' options. This simplifies the process of managing signing orders and ensures the correct sequence of signers is displayed, improving workflow efficiency.
Original PR description
Adds Move Up / Move Down options to the signer's three-dot menu, letting users adjust the signing order directly from the template sidebar. task-6231529
This update streamlines the export of payroll reports by changing the file format from WPS to XLSX and simplifying the report headers. This improves the usability and compatibility of the payroll data for reporting and analysis, making it easier to work with.
Original PR description
In this commit, we renamed the headers of the exported WPS file and removed the unnecessary ones. We also changed the WPS file format to XLSX. task-6220113
This update streamlines the handling of VoIP mail and data requests by introducing a more organized registry and decorator system. Previously, registration was done through complex if statements, now the API is clearer and easier to manage, leading to improved efficiency and maintainability.
Original PR description
Before this commit, we would need to register mail/data entries in an if statement based on the name and whether it was applied to logged in users or internal. The point of this PR is to improve the API to be able to have clear parameters and easy registry of the different mail/data request type. This is done with the help of a registry and a decorator to be added on the different request types. task-6085653
This update enhances the timesheet grid by pausing the timer when a timesheet is selected for editing, providing a smoother workflow. Additionally, the timesheet listing now displays the most recent entries first, improving usability. This change focuses on a better user experience for managing time entries.
Original PR description
- Make the timer pause when a time sheet is selected to be edited - Adjust the project listing sorting method to show the most recent first --- task-6131398 Forward-Port-Of: odoo/enterprise#117513 Forward-Port-Of: odoo/enterprise#114795