Daily updates from Odoo
Friday, July 11, 2025
15 changes · master
Enhancements to existing features
Quality checks for registering consumed materials now show the lot or serial information only once. This reduces confusion for users by removing duplicate information without changing the underlying tracking data.
Original PR description
- For quality checks of type Register Consumed Materials , Component lot id is saved in: 'Component Lot/Serial' Additionally, we also set the same id on the field above: 'Lot/Serial' and it is the same exact field `lot_id` . There is no reason to duplicate that information. Task: 4894434
This update prevents records in several Odoo apps from using names reserved for system communication. It reduces the risk of confusing errors or broken integrations in invoicing, manufacturing, sales timesheets, and timesheet grids.
Original PR description
odoo/odoo#218355
The spreadsheet document tests now reflect the latest chart side panel behavior, including sticky tabs, preserved scroll position, and retained expanded or collapsed sections. This helps ensure the updated interface remains reliable for users working with charts in documents.
Original PR description
Update test cases to reflect recent UI changes in the chart side panel: - Tabs are now sticky while scrolling - Scroll position is preserved when switching tabs - Expanded/collapsed section state is retained Task: [4752564](https://www.odoo.com/odoo/2328/tasks/4752564)
Employee contract version lists now show the yearly cost next to the wage by default. This gives HR teams a clearer view of total compensation costs without opening each contract record.
Original PR description
In this PR, we added the yearly cost field to the version list to the right to the wage and will be visible by default. Related task: 4901173.
Resolved issues and error corrections
VoIP error messages now show line breaks and formatting as intended instead of displaying HTML tags as plain text. This makes error information easier for users to read and understand when using the softphone.
Original PR description
`<br>` tags in VoIP error messages are rendered as text. This is because the code uses t-esc instead of t-out, and t-esc never renders inner HTML. This commit just replace t-esc with the proper t-out directive. |Before|After| |-|-| ||| Forward-Port-Of: odoo/enterprise#88431 Forward-Port-Of: odoo/enterprise#88355
This fixes an issue where payment references ending with a backslash could break bank statement reconciliation matching. The change helps accounting users process such payments without unexpected errors.
Original PR description
If a payment ref end with '\\', this '\\' will be interpreted as an escape operator in the query, which leads to an error. This commit add the '\\' to the list of char to escape. no-task Forward-Port-Of: odoo/enterprise#89659
This fix stops Point of Sale IoT setup from automatically assigning a newly connected device as a weighing scale when it may be misidentified on first startup. It prevents businesses from ending up with the wrong device configured in their PoS settings after the IoT box restarts and correctly recognizes the device.
Original PR description
If on first boot after flashing the iot box a blackbox is connected the iot box doesn't have the blackbox driver so it's identified as Adam scale With the pos_iot auto configuration we would first send it as a scale to the database and it would be set as a scale to the selected pos config. After odoo restart on the iot box it gets detected as blackbox correctly and its name changes. Now after it's sent to the db the user ends up with a blackbox in the scale field in PoS config. This PR removes the automatic scale configuration so that doesn't happen Forward-Port-Of: odoo/enterprise#89888
The VoIP softphone interface now works better on smaller screens by adding scrolling where content was previously cut off and improving spacing and alignment. This helps users access call controls and transfer options more reliably on compact displays.
Original PR description
This commits fixes minor layout issues: - It adapts some views that had no scroll bar when the viewport was small. This prevented access to part of content. - It revises some spacing and alignment on…
This commits fixes minor layout issues: - It adapts some views that had no scroll bar when the viewport was small. This prevented access to part of content. - It revises some spacing and alignment on small screens. - It defines small transfer buttons in "outline" style to maintain consistency with the others tabs. task-4908502 | Before | After | |--------|--------| |  |  | |  |  | |  |  | |  |  | |  |  | |  |  | |  |  | Forward-Port-Of: odoo/enterprise#89679 Forward-Port-Of: odoo/enterprise#89005
Indian reports now use the official state name "Odisha" instead of the outdated "Orissa". This keeps report labels aligned with Government of India terminology and avoids confusion for users reviewing tax reporting information.
Original PR description
Issue: As per Government of India guidelines, the state name was officially changed from "Orissa" to "Odisha" in 2011. However, Odoo still uses the outdated name in report. Solution: Updated the records from "Orissa" to "Odisha". opw-4935633 Forward-Port-Of: odoo/enterprise#89947
Users can now share shortcut folders from the cog menu next to the breadcrumbs, matching the behavior available for regular folders. This removes a small usability gap in Documents and includes cleanup of unused code.
Original PR description
Before this commit, the share action in the cog menu (next to the breadcrumbs) wasn't available for shortcut folders. This commit fix this issue. This commit also removes some dead code. Task-4897840 Forward-Port-Of: odoo/enterprise#89161 Forward-Port-Of: odoo/enterprise#88512
This fix prevents HR jobs from being linked to contract templates belonging to a different company. It also updates Belgian salary package demo data so examples follow the same company-alignment rule, reducing setup errors in multi-company environments.
Original PR description
task-4885755
Features or functions removed from Odoo
Unused data and demo files were removed from several Odoo Enterprise modules after a new automated check identified files that were not loaded by the system. This reduces clutter and helps prevent outdated or incompatible files from causing confusion in future maintenance.
Original PR description
In the OCA we have added the following lint: - https://github.com/OCA/odoo-pre-commit-hooks/pull/127 For Odoo I have created the following new LINT: - https://github.com/odoo/odoo/pull/211259 It…
In the OCA we have added the following lint:
- https://github.com/OCA/odoo-pre-commit-hooks/pull/127
For Odoo I have created the following new LINT:
- https://github.com/odoo/odoo/pull/211259
It detects the data files not used
It means, csv or xml files in data/ or demo/ folders
but not referenced in the __manifest__.py
- `"data": [...]` or `"demo": [...]` sections
Then I have ran this new check:
find . -type f -name "__manifest__.py" -exec bash -c 'oca-checks-odoo-module --enable file-not-used "$(dirname "$0")"' {} \;
And it detects a few cases
We could add them to manifest file or delete them
but they were not used before maybe it is a better idea to delete them
since that they could be not needed or incompatibles
Related to enterprise PR:
- https://github.com/odoo/odoo/pull/211150
# UPDATED
Data files called from hooks:
https://github.com/odoo/enterprise/blob/a9a2a972d96665bdb4068427555ba40ddffc0325/product_unspsc/hooks.py#L28
https://github.com/odoo/enterprise/blob/a9a2a972d96665bdb4068427555ba40ddffc0325/pos_restaurant_preparation_display/models/pos_config.py#L18
https://github.com/odoo/enterprise/blob/a9a2a972d96665bdb4068427555ba40ddffc0325/stock_barcode/models/epc_encoder.py#L283
https://github.com/odoo/enterprise/blob/f0b2cb72529acaec3cff5edc6cdb8bb3c712bed9/l10n_uk_reports_cis/models/hmrc_transaction.py#L170Code cleanup and technical improvements
This update streamlines how action buttons are displayed across several Odoo screens by removing unnecessary layout wrappers. The change should make the interface structure cleaner and easier to maintain, with little to no visible change for end users.
Original PR description
This commit cleans up and simplifies the structure of the buttons provided by the views/actions and displayed in the ControlPanel (or modal's footer for the FormView). The point is to avoid unnecessary wrapper around them, reducing the DOM and also the rules necessary to handle the buttons' layout, gap... task-4277543
This change refactors how the system handles domain logic used to filter and organize records. It should not change day-to-day behavior, but it helps keep project and field service sales features easier to maintain and improve over time.
Original PR description
Refactor of the API for Domain.
This update cleans up unused code left behind after a user experience refactor in the time-off area. It helps keep the system easier to maintain without changing day-to-day functionality for users.
Original PR description
task-4893623