Daily updates from Odoo
Monday, December 15, 2025
4 changes
2 changes
Enhancements to existing features
This update aligns the dialogs used in Odoo's web Gantt and Studio modules with recent community changes. This ensures consistency and a more modern user experience for these key business tools. The changes are primarily focused on improving the visual presentation and functionality of the dialogs.
Original PR description
This PR adapts dialogs by mirroring community changes. Requires: - https://github.com/odoo/odoo/pull/238855 task-5159944
This update introduces a new tag widget that allows users to assign custom colors to tags using hexadecimal codes. Previously, tags were limited to a fixed color palette. This change provides greater visual flexibility and control over tag appearance within Odoo.
Original PR description
Introduces a new widget `many2many_color_dot`, an extension of the existing `many2many_tags` widget, which displays a small colored dot before the tag label instead of coloring the entire tag background. The color is read from a VARCHAR field containing a hexadecimal color code. This widget keeps most of the options from `many2many_tags`, except: - `on_tag_click` is replaced by `can_open` (boolean) to control whether clicking a tag opens the corresponding form. - `color_field` option is updated to specify the field used for the dot color. The new widget allows visual indication of custom color instead of a fixed list of colors.
1 change
Enhancements to existing features
This update simplifies the underlying query used to generate sale commission reports. By adding an alias to a key component, the code is now easier to maintain and modify, ensuring future updates to the reporting process are smoother and less prone to errors. This ultimately improves the reliability of our sales commission reports.
Original PR description
Add an alias to the CTE used for sale order log selection. This is done to simplify modifications to the query.
1 change
Enhancements to existing features
This update optimizes how Odoo imports translations, reducing the size of the data processed and preventing potential memory issues. By focusing only on updated translations, the import process is now more efficient and stable, especially when dealing with large mail templates.
Original PR description
Before this commit, when importing the translations with the TranslationImporter object, the save method was building one big query per model, with each JSON object containing all the languages. On our server, where 36 languages are installed, this leads to big JSON objects, especially for some large mail templates. Recently, we even got MemoryErrors because of the soft memory limit being hit. The query was about 250MB long. In the function, we already have the current values, so it's easy to compare them to the new values, and only consider these in the query. Furthermore, there is no need to add the languages that aren't being updated. With this commit, we are building a slightly more complicated query, but it will receive much less data when the translations are updated frequently, as unchanged values will be ignored. Task-id: none