Tuesday, July 8, 2025
9 changes · master
Enhancements to existing features
This update improves and fixes the Hoot testing tools used by Odoo's development teams. The changes are limited to the unit test ecosystem, reducing risk for business operations while helping developers maintain software quality more consistently.
Original PR description
## Pull Request HOOT (PRHOOT) 34 This pull requests brings various improvements and fixes to Hoot and the Odoo unit test ecosystem. See the different commit messages for more details. Note: these changes are made in stable to avoid having to support multiple versions of the HOOT API. As such, these changes are intended to be strictly limited to unit tests as to not put the rest of the code base at risk. Community: https://github.com/odoo/odoo/pull/216546 Forward-Port-Of: odoo/enterprise#89528 Forward-Port-Of: odoo/enterprise#88949
Demo and test payroll employee accounts across multiple country-specific payroll modules are now created without preset passwords. This avoids unnecessary password processing during setup while keeping access possible if someone manually sets a password later.
Original PR description
These users are created in order to create demo / test employees. They're not used for tours or other log-in requirements. As such they don't need a password, and all that does is burn CPU (as the password needs to be hashed on user creation). The cost is not huge in the grand scheme of things, but it's unnecessary. If someone wants to log out as a payroll demo employee for reasons, they can set a password by hand. Same for tests.
Belgian payroll now includes updated legal choices for employee certificates and marital status. Payslips show the official job position instead of a user-entered job title, helping payroll documents better match legal and HR records.
Original PR description
The certificate and marital status selections have been improved with new legal options. Also, the payslip now shows the job position name and not the job title set by the user. task-4908830
Website builder options can now better coordinate updates that take longer to complete, reducing the risk of inconsistent settings while editing pages. This supports smoother configuration for website appointment and studio form options without changing the user-facing workflow.
Original PR description
Whenever there is a need to update the state of a builder option asynchronously, we need all the options to await for the state of all other options to be updated. This commit makes allow any options that need to update the state of the builder options asynchronously to do so by using the useDomState hook. Forward-Port-Of: odoo/enterprise#86450
This update reworks how employee working schedules are defined and displayed, replacing a simple flexible-hours option with clearer schedule choices. It also improves full-time planning calculations and refreshes key calendar views, helping teams plan attendance, staffing, and forecasts more accurately.
Original PR description
- repalce the flex_hours boolean with selection field that have only (flex, fully fixed) - fix the full time required and add the full time palnned - rework the UI of the working hours page - rework the UI of 2 weeks calendar Task: 4313444
This update improves the automated checks around tax reports, helping ensure financial reporting continues to work as expected. It supports more reliable accounting workflows by catching issues earlier before they affect users.
Planning Gantt views now calculate working time and related details even when no planning records are present. This gives users a complete view of availability and progress information before any shifts or tasks have been scheduled.
Original PR description
In this commit we have achieved that if don't even have records work_intervals and other details are computed. It is done by integrating computing work intervals with progress bars. task-3945758
The Knowledge app’s internal performance tests were updated to reflect that property values are now tracked when a parent item changes. This keeps automated checks aligned with the current behavior and helps maintain reliability without changing day-to-day user workflows.
Original PR description
Purpose ======= Now, the properties values are tracked when the parent change. Adapt the queries count tests. Task-3644407
The IoT device search no longer includes an unnecessary grouping by IoT Box, making the view simpler to use. Device lists inside an IoT Box now show connection status and prioritize connected devices, helping users find relevant devices faster.
Original PR description
We previously added an unnecessary `group by` IoT Box in the IoT device search view. It is now removed.
We also sorted devices by connection desc and name in the iot device list view in the iot box form view,
and displayed the connected/disconnected status.
Tasks: 4922609, 4922638, 4922623
Forward-Port-Of: odoo/enterprise#89601