Daily updates from Odoo
Friday, June 26, 2026
7 changes · master
Enhancements to existing features
Helpdesk now prevents duplicate tag names in the English locale, treating names like "Bug" and "bug" as the same. This helps keep tags consistent, avoids confusion for users, and automatically cleans up existing duplicates by keeping only one version.
Original PR description
Added a unique index to ensure that tag names in the English locale (en_US) are case-insensitively unique.
This change prevents duplicate tag names such as:
---------------------------------------------------------------------
- Bug, bug
- Saas, saas, SaaS
When duplicates exist, only the one with the lowest ID is retained, and others are removed.
A user-friendly error is raised if a new tag with a conflicting name is created.
task: 4679010This change adds new payroll configuration options in the settings area, making it easier for HR teams to adjust payroll behavior without needing technical help. It helps streamline setup and gives businesses more control over payroll-related preferences.
Original PR description
Task: 6111217
The Korean Balance Sheet and Profit & Loss reports have been rebuilt to match the new chart of accounts. This helps ensure financial statements stay accurate and consistent with the latest accounting structure.
Original PR description
Rebuild the Korean Balance Sheet and Profit & Loss on top of the new chart of accounts. Community PR: https://github.com/odoo/odoo/pull/268170 Upgrade PR: https://github.com/odoo/upgrade/pull/10397 task-6246407
The manufacturing shop floor and barcode screens now use the same updated wording as the main manufacturing flow, replacing “Close Production” with “Produce” where appropriate. This keeps the user experience consistent and makes the action clearer for operators, especially when completing work orders or handling backorders.
Original PR description
~~Now that we distinguish 'Close Production' and 'Produce Partially' (qv odoo/odoo#260322), we need to adapt the logic to the barcode module as well. This is mostly just a matter of attaching the `skip_backorder` and `close_production` context parameters passed to the action, with the rest being cosmetic changes and adjustments to tests that expect the consumption warning wizard or a different button.~~ ~~Now that the original spec was scrapped, we just rename 'Close Production' to 'Produce' and implement a separate backorder wizard for workorders.~~ Scratch that. We go back to using the same wizard, just a different form view. Task ID: [5901969](https://www.odoo.com/odoo/my-tasks/5901969)
The Belgian payroll rules were updated to reflect the new 2024 economic unemployment daily compensation amount. This keeps payroll calculations aligned with the latest official values and helps ensure correct employee compensation handling.
Original PR description
Update 2024 economic unemployment daily compensation salary rule parameter value to 2.0 task-6334026
The payroll rules for the Belgian mobility contribution are now calculated with dynamic parameters, which makes the calculation more accurate and easier to maintain. The DMFA PDF report was also aligned with the XML version by adding the missing occupation information, helping ensure consistency in submitted payroll documents.
Original PR description
This fix allows the mobility contribution 869 rule to be calculated using dynamic parameters Add the missing occupation informations in the dmfa pdf exaclty as dmfa xml Task Id: 6259967
The softphone contact list is now cleaner and easier to use, with better search results and no unnecessary grouping by first letter. Users can also search contacts by email correctly, and the keypad’s extended search view now matches the main address book experience, including highlighted matches and editable searches. This makes finding the right contact faster and less confusing.
Original PR description
[IMP] voip: remove grouping by initial in softphone contacts listing This commit keeps the alphabetical / phone sort, but no useless groups anymore. Idea: it was only to have a "pretty" listing but…
[IMP] voip: remove grouping by initial in softphone contacts listing
This commit keeps the alphabetical / phone sort, but no useless groups
anymore. Idea: it was only to have a "pretty" listing but it will
prevent more advanced sorting to make sense in the future (e.g. showing
most called contacts first). This also simply improves Owl performance
as a bonus.
[IMP] voip: use AddressBook for keypad "more" searches
Before this commit, the keypad component was implementing its own
contact searches, with unsorted results. Indeed, with the demo data,
search "m" would for example have "Mitchell Admin" first, because it
was loaded first by discuss for the presence status, then the rest of
the contacts having "m" in their name.
The "more" keypad search view now uses the AddressBook component,
sharing the UI and its features.
The keypad "more" view had 2 extra differences though:
- Search match highlighting
- T9 searches
Those 2 features are now added in the AddressBook component.
Bonus: while in the "more" keypad view, you can now edit the search.
[IMP] voip: (really) allow contact search by email
Before this commit, when a contact was searched in the softphone,
contacts were loaded in the store based on their name, phone... and
email. But then the softphone filtered the store contacts by name and
phone... but not email. This lead to this weird behavior:
- Have a contact zzz with email yyy@example.com
- Have 50 contacts alphabetically before zzz
- Search "y" => You don't see zzz
- Remove the "y" search
=> You see 13 contacts + zzz (because it was loaded before)... if you
scroll, contacts will appears between the 13 contacts and zzz.
Now, you will at least see zzz during the "y" search making the last
step less confusing, and allowing to actually take profit of the search
by email that is already done loading-wise.
Note that this is also a first step towards fixing problems introduced
by [1] a long time ago, when the softphone used the Store to gather the
loaded contacts, while before the tab components themselves were in
charge of loading and displaying the loaded contacts.
[1]: https://github.com/odoo/enterprise/commit/bbdb033031720365c448c6f3de40906ee0c4243e
task-5871346