Friday, September 5, 2025
6 changes · saas-18.2
Enhancements to existing features
This update improves Odoo's internal Hoot testing framework and related unit tests, making automated checks faster, cleaner, and easier to diagnose. The changes are limited to testing infrastructure, reducing risk to day-to-day product behavior while helping developers catch issues more reliably.
Original PR description
## Pull Request HOOT (PRHOOT) 36 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. Enterprise: https://github.com/odoo/enterprise/pull/93167 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#221367
Attendance approvers can now view the relevant field in an employee's My Profile work information without being able to edit it when employees are not allowed to update their own data. This helps keep approval information visible while respecting company data-editing controls.
Original PR description
Add read-only mode for the attendance approver in the My Profile Work Information tab when `allow employee to edit own data` is disabled. task-5008352 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#222430
Documents and items in the trash now sort by when they were created instead of when they were last changed. This keeps lists more predictable, since small edits like adding a tag or system upgrades will no longer unexpectedly move documents around.
Original PR description
As the write_date can be reset by very small changes like adding a tag, updating its name and also during some upgrade, we set the default ordering to create_date. We do similarly for the trash. Task-5025453 Forward-Port-Of: odoo/enterprise#92840
UrbanPiper connection errors now show the specific message returned by the service instead of a generic technical error. This helps teams quickly identify and resolve issues such as duplicate store references, reducing troubleshooting time.
Original PR description
Before this commit: --- - HTTP errors from UrbanPiper API only showed the generic Python exception. - It was difficult to identify the actual cause (e.g., duplicate store ref_id). After this commit: --- - HTTP error handling now extracts the `message` from the API JSON response. - The displayed/logged error clearly reflects the real cause of the failure. task-5026169 Forward-Port-Of: odoo/enterprise#92713
IoT Boxes now receive a clear unauthorized error when the database cannot identify them during driver downloads. This replaces an empty response, making connection or setup issues easier to diagnose and resolve.
Original PR description
When an iot box tries to download drivers from the database, but the db doesn't have a record corresponding to the IoT Box, the IoT Box receives an empty string, making it hard to debug why it couldn't download handlers. We now raise an unauthorized error to make it clearer. Forward-Port-Of: odoo/enterprise#93813
Improved translations for Spanish Latin American language for some terms in MX localization task-4938338 target: 17.0 -> master Forward-Port-Of: odoo/enterprise#92790 Forward-Port-Of: odoo/enterprise#91875
Original PR description
Improved translations for Spanish Latin American language for some terms in MX localization task-4938338 target: 17.0 -> master Forward-Port-Of: odoo/enterprise#92790 Forward-Port-Of: odoo/enterprise#91875