Tuesday, December 9, 2025
15 changes · master
New functionality added to Odoo
This update enhances the visual appeal of spreadsheets by allowing images and graphs to be displayed as thumbnails. This improves the user experience when browsing and selecting spreadsheet templates, making them easier to identify and use. It's a small but impactful improvement to the overall spreadsheet functionality.
Enhancements to existing features
This update clarifies the label for a key work entry type within the Hong Kong payroll module. The term 'Use 713' has been replaced with 'ADW Calculation' for better clarity and understanding. This change improves the user experience and ensures accurate payroll processing.
Original PR description
- changed the string for `l10n_hk_use_713` to be `ADW Calculation` instead of `Use 713` task-id: 5084137 Forward-Port-Of: odoo/enterprise#95253
Resolved issues and error corrections
This update resolves an issue that previously blocked users from creating new Amazon accounts for new companies. The fix ensures that the system correctly handles the absence of warehouses and stock locations when a new company is initially set up, allowing for seamless account creation.
Original PR description
Currently, an error occurs when user tries to create a new amazon account on a new company. Steps to replicate: - Install `sale_amazon`. - Create a new company and switch to it. - Go to Settings >…
Currently, an error occurs when user tries to create a new amazon account on a new company.
Steps to replicate:
- Install `sale_amazon`.
- Create a new company and switch to it.
- Go to Settings > Amazon account > Try to Create a new account.
Error:
```
File /home/odoo/odoo18/enterprise/sale_amazon/models/amazon_account.py, line 214, in create
'location_id': parent_location_data[0]['view_location_id'][0],
IndexError: list index out of range
```
Cause:
- Whenever a new company is created, it doesnt have any warehouses [1] and amazon stock locations [2].
- This causes the `parent_location_data` to be an empty list and causes error at line [3].
Solution:
- Assigning the `location_id` if the `parent_location_data` exists.
[1]: https://github.com/odoo/enterprise/blob/23f085bdba333807a25a2d41214b25f474c7edf8/sale_amazon/models/amazon_account.py#L206-L210
[2]: https://github.com/odoo/enterprise/blob/23f085bdba333807a25a2d41214b25f474c7edf8/sale_amazon/models/amazon_account.py#L201-L204
[3]: https://github.com/odoo/enterprise/blob/23f085bdba333807a25a2d41214b25f474c7edf8/sale_amazon/models/amazon_account.py#L214
sentry-7086464738
Forward-Port-Of: odoo/enterprise#101465Code cleanup and technical improvements
This update streamlines Odoo's database queries by removing inefficient dynamic SQL usage. This change focuses on optimizing performance and reducing potential database load, leading to faster application response times. It's a technical update designed to enhance the overall stability and speed of the Enterprise edition.
Original PR description
Removes most / all dynamic SQL queries which don't use the `SQL` wrapper or misuse it.
This update optimizes how data is displayed in Odoo’s account reports. By minimizing the complexity of column dictionaries, the system now renders reports more efficiently, leading to faster loading times and a smoother user experience. This change focuses on internal performance improvements without impacting how users view their financial reports.
Original PR description
task-5145573
This update simplifies the process for employees to request signatures by consolidating the 'Signature Request' button within the existing cog wheel menu. This eliminates duplication and provides a more consistent user experience for requesting signatures within the Odoo Enterprise system.
Original PR description
Before: Employees had a separate 'Signature Request' button and the default 'Request Signature' option in the cog wheel, causing duplication. After: Moved the "Signature Request" button to the cog wheel and remove the standard 'Request Signature' option for employees. Task - 4879265
This update enhances the user experience for managing employee payroll in Hong Kong by adding a clear placeholder and helpful tooltip for the Employer's File Number field. It also updates the error messages to be more informative and user-friendly, streamlining the setup process.
Original PR description
Add a placeholder and tooltip for Employer's File Number. Update the error message format. task-5050313
This update resolves a failing test related to the layout of a key report. The team has switched from using XML-based actions to Python dictionaries, requiring a change in how test comparisons are made. This ensures the report layout functions correctly.
Original PR description
In this commit, we change the comparision for `xml_id` in test_action_send_report test with the view_id instead because the we are removing the action xml and replacing it with the python dict action instead. So it's better to compare the view_xml_id instead task-5366725
This update corrects a minor issue in the Swiss payroll module (l10n_ch_hr_payroll_elm_transmission_5_3) by adding a required group to the teleworking field. This ensures accurate data transmission to tax authorities, complying with Swiss regulations and preventing potential reporting errors.
Original PR description
Forward-Port-Of: odoo/enterprise#101691
This update ensures that the 'Night' and 'Nights' labels used in the sale renting module are fully translatable. The team took a pragmatic approach to avoid a potential translation issue, initially delaying full translation to monitor for any inconsistencies with website language settings.
Original PR description
Not sure why the existing `SINGULAR_LABELS` is lazy translated whereas the not single units (i.e. `self._fields['unit']._description_selection(self.env))[self.unit]`) is not, so we assume that in this case it's fine to not lazy translate both "Night" and "Nights" and see if a bug pops up later on (maybe via mismatching website language?) opw-5392109 Forward-Port-Of: odoo/enterprise#101613
This update corrects a styling issue within the VoIP module by explicitly defining the input type for browser elements. Previously, browsers treated plain input fields as text, causing some styles to be missed. This ensures consistent and correct styling for VoIP input fields, improving the user experience.
Original PR description
Even though a browser treats a plain <input> as a text field by default, the CSS selector cannot "see" that default behavior. Input without `type="text"` will miss some style, for example: https://github.com/odoo/odoo/blob/4f5594a911c1960f620d902d507e563cdab167b9/addons/web/static/src/webclient/webclient.scss#L163-L177 we add input type in this commit to apply those style.
This update corrects the visual alignment of buttons within the account journal views for the Be Codabox localization module. This ensures a cleaner and more professional user experience for users managing financial data. The change improves the overall usability of the system.
Original PR description
This commit aims to fix the alignment of codabox buttons in the account journal views. task-5269488
This update corrects a bug preventing the automatic installation of localized payroll account modules (e.g., l10n_xx_hr_payroll_account) when a corresponding country company wasn't yet defined. The fix removes a dependency check that caused the modules to fail to install, ensuring they are correctly added to new Odoo instances.
Original PR description
Steps to reproduce: 1. Run odoo for a fresh database with -i hr_payroll_account,l10n_xx_hr_payroll (except for us). 2. The corresponding l10n_xx_hr_payroll_account won't be installed. Cause: The l10n_xx_hr_payroll_account had 'countries': ['xx'] in their manifest, but there is no company from that country yet. When installing modules, the framework first checks if there can be modules to auto-install as well, but since the demo data with the company of the country does not yet exist, there is no such company. Hence, the module is not installed. Fix: Remove all occurrences of 'countries': ['xx'] for modules that are auto-installed and that depend on other modules with countries already defined in their manifest. Task: 5384292
This update replaces the Knowledge dropdown menus with a standardized Odoo component, resulting in a more stable and consistent user experience. By leveraging this component, we've reduced development effort and simplified maintenance for these menus.
Original PR description
For the dropdown menus of Knowledge, we used the standard dropdown menus of Bootstrap. It turns out that there exists a Dropdown component in owl that we can use to create a dropdown menu. Using that component will offer the following advantages: - With the component, the content of the dropdown menu will be lazy loaded. It means that we no longer have to re-implement that mechanism in our component. We can therefore reduce the amount of custom code. - The structure of the dropdown menu is simplified. We will not necessarily have to update our component if the layout of the dropdown menu changes. The dropdown menu will always be consistent with the other dropdown menus of Odoo (given that everyone uses the Dropdown component). - The dropdown menu can easily be customized. - The display is less glitched. task-3072845
This update consolidates IoT scale logic within the dedicated `pos_iot` module for better organization. It also streamlines the scale functionality by transitioning from a service to a utility class, mirroring best practices for printers. This change enhances the overall consistency and maintainability of the point-of-sale system.
Original PR description
To maintain consistency, we moved IoT connected scales logic from `point_of_sale` to `pos_iot`. We also switched from a service to an utility class, same as printers. see odoo/odoo#238635