Daily updates from Odoo
Wednesday, August 19, 2026
11 changes · master
Resolved issues and error corrections
Website-generated pages and blog posts now reuse the same image file instead of creating duplicate media entries. Cropped or customized image versions are also kept out of the general media picker, making it easier for users to find the right images.
Original PR description
Images referenced by several pages (or several blog posts) could get copied into extra ir.attachment records instead of being reused, because `_get_wg_attachment` iterated over the raw filenames list without deduplicating it first, and marked a filename "used" as soon as it was assigned once. The same visually-identical image would then end up cluttering the website media picker under several ids. Also stop customized/cropped image variants from showing up as regular library images in the media picker, since they're only meant to back a specific placement.
Payroll users can now manually adjust computed payslip lines without triggering an error when recalculating. This keeps draft payslip editing reliable and prevents disruption during payroll preparation.
Original PR description
Steps to reproduce:
- Open a draft payslip.
- Go to the Salary Computation tab.
- Manually change the amount of a computed line and compute.
- A traceback is raised (UnboundLocalError).
Reason:
When a line is manually modified, the standard computation is skipped and `explanation_info` is never defined.
Solution:
Initialize `explanation_info = {}` for manually modified lines.
Task-6462526The vehicle model engine section now keeps related power fields together, so the form no longer visually shifts when users change the selected power unit. An unused horsepower tax field was also removed, reducing clutter in fleet-related views.
Original PR description
The order of fields in "engine" section of car model is changed when selecting an other Power Unit. Cause: "power" and "horsepower" fields are conditionnaly invisible depending on the selected unit but at different positions. Solution: moving them next to each other. Removing "horsepower_tax" field as not used for any computation Task: 6428275
The accounting app now better detects fiscal years that overlap existing ones, including cases where a new, longer fiscal year fully contains an existing shorter period. This helps prevent inconsistent accounting period setup and reduces the risk of reporting or closing-period errors.
Original PR description
Before this commit: - The current constraint for overlap check that we have allows if we define a new, larger fiscal year that completely swallows an existing smaller one (e.g., creating Aug 2025 - Nov 2026 when Sept 2025 - Oct 2026 already exists). After this commit: - The constrain domain was changed to consider the above missed case.
The Sign template editor no longer performs an unnecessary background lookup when opening or preparing templates. This removes wasted processing without changing the visible editing experience, helping keep the editor leaner and more reliable.
Original PR description
The editor fetched a sign.item.role record to set currentRole, which has no effect and no use, so every value computed from it is overwritten right after. task-6449467
The Planning schedule side panel now shows the Open Shifts and Resources filters again. This lets dispatchers quickly find unassigned work and filter schedules by technician, restoring an important day-to-day scheduling control.
Original PR description
Steps to reproduce: 1. Install the planning_field_service module. 2. Navigate to the Planning app -> Schedule (Main Calendar View). 3. Check the right-hand calendar side panel. Issue: The Open Shifts and Resources checkboxes/filters are completely missing from the side panel, preventing dispatchers from filtering the schedule by specific technicians or viewing unassigned shifts. Cause: the resource_ids field was completely removed from the planning_view_calendar XML. Because the field was no longer present in the view architecture, the OWL calendar renderer stopped generating the dynamic resource filter in the side panel. task-6452329
The Phone app now shows the full Telnyx location when users search for phone numbers to buy, making it easier to identify where numbers are based. It also removes a misleading settings menu that opened a page without any Phone-specific settings.
Original PR description
When searching for a number to buy, the Location column showed only a
fragment of where the number comes from —> usually the bare state ("ON")
while Telnyx's own search shows the whole thing ("GRIMSBY, ON, CA").
This commit fixes that and shows the location like its shown on Telnyx +
a small ux change which is removing the configuration/settings menu
because Phone app doesn't have settings actually.
Task-6456328Users can now create a new warehouse directly while setting up stock-by-vehicle mappings. This removes an unnecessary setup blocker and makes configuring vehicle-based warehouse assignments faster.
Original PR description
Before this commit, users could not create a new warehouse directly from the 'stock by vehicle' mapping view because the `warehouse_id` field had the `no_create` option enabled.
With this commit, we remove `options="{'no_create': True}"` from the `warehouse_id` field in both the list and form views. This enables on-the-fly warehouse creation directly from the vehicle mapping settings.
task-6381795
Forward-Port-Of: odoo/enterprise#124240Payroll warning messages now open safely on employee records, even when no related version data is found. Warnings configured for both the payroll dashboard and employee records can now appear in both places, helping users see the right alerts where they need them.
Original PR description
Two issues could occur when using payroll warnings on employee/version records: * Opening an employee form could raise an `AttributeError` for model warnings when the warning evaluation returned an empty `base` recordset. The code attempted to access `version_ids` before checking this case. * A warning configured to be displayed both on the dashboard and on the model was excluded from one of the views. Check the warning result before accessing employee versions, and filter dashboard warnings based on `display_on_dashboard` instead of `display_on_model`. This allows model warnings to be evaluated safely and makes it possible to display the same warning both on the dashboard and on the corresponding model. task-6472369
The Discuss app badge now shows the correct red counter in Enterprise setups. A test-only dependency was moved out of the main mail enterprise module so it can install automatically as intended, restoring the expected user interface behavior.
Original PR description
Before this commit, the discuss badge counters were green because `mail_enterprise` module could not be auto-installed with `mail` and `web_enterprise` installed. This comes from recent addition of `test_tools` from a test in `test_update_notification` requiring this module. We want `mail_enterprise` to auto-install with only `mail` and `web_enterprise` modules, so the `test_tools` should only affect a test module. This commit fixes the issue by moving the test in `test_mail_enterprise`, so that `mail_enterprise` can auto-install itself as expected. Task-6475496 Before <img width="397" height="421" alt="Screenshot 2026-08-18 at 12 20 09" src="https://github.com/user-attachments/assets/9bd7e001-ecc8-44bb-8d77-342835a08dd0" /> After <img width="398" height="422" alt="Screenshot 2026-08-18 at 12 21 50" src="https://github.com/user-attachments/assets/b21611ca-9055-4922-ad58-9813f3fb6964" />
The bank journal screen now hides the “send now” reminder and connection request when the journal is no longer using online synchronization as its bank statement source. This prevents users from seeing misleading prompts that do not apply to the selected bank setup.
Original PR description
In this commit:https://github.com/odoo/enterprise/commit/86659741990de2ba9c8bf738207edf0e8a0ba8c4 the invisible condition on action send reminder was wrongly removed Now, the "send now" button and the connection request was shown as soon as we have an account online account link to the journal. But when changing the bank statement source, the information would still be there. Changing the invisible condition to hide it when the bank statement source is different from only_sync no task id