Daily updates from Odoo
Thursday, April 24, 2025
18 changes · master
Enhancements to existing features
Manufacturing work center capacity can now be defined more flexibly by product, including a general capacity that applies to all products. Operation time and cost calculations have been updated accordingly, and the bill of materials overview is simplified to focus on core overview and forecast modes.
Original PR description
Change workcenter capacities: - no more default in the workcenter - but specific capacities per product optionally declined per unit. - no product means 'all products' Adapt the way capacities are used: - new fields cycle_number, time_total & cost - computed with depends_context Simplify BoM overview, keeping only 2 modes: overview & forecast
This update removes rarely used activity types from Belgian reporting and product lifecycle management so users see a more focused list of activity options. ECO approval reminders will now use standard to-do activities with clear summaries, reducing clutter without changing the underlying workflow.
This change removes leftover references to an old tax report activity category that had already been discontinued. It helps keep the accounting reports area cleaner and reduces the chance of confusing or unused options appearing in related activity views.
Original PR description
The 'tax_report' mail activity category has been removed by https://github.com/odoo/enterprise/commit/647699eeb4b8a1cc37ca074fa57844871c5086c1
Timesheet-related sales order line fields now show a “Non-billable” placeholder when no billable sales line is selected. This makes it easier for users to quickly recognize non-billable helpdesk work and reduces confusion when reviewing entries.
Original PR description
Added a Non-billable placeholder in the empty sales order line field, making it easier for users to identify non-billable entries. task-4123616
This update streamlines accounting setup by changing how fiscal positions, taxes, and account availability are managed. It reduces manual configuration, improves account selection for expenses, and aligns localization data with the newer accounting model.
Original PR description
TODO When PR is ready
Closed project tasks now appear with reduced opacity, making them visually distinct from active tasks. This helps teams scan project views more quickly and focus attention on work that is still open.
Original PR description
In this commit - - display closed tasks in a lower opacity than open tasks Task - 4378629
The audit trail is now enabled by default and offers better ways to search, filter, and group log messages. A restricted mode helps meet legal record-keeping requirements by preventing deletion of certain accounting-related records, with automatic activation for specific countries such as Germany.
Original PR description
Improve Audit Trail feature and make it default Adding filtering, searching and grouping by log messages Restricted mode follows GoBD restrictions, by preventing deletion of related records when a journal item is involved. For legal reasons, this setting is hidden and active by default in some specific cases (for german companies for example) task-4637051 Main modifications are in Community : - https://github.com/odoo/odoo/pull/203229 Upgrade PR : - https://github.com/odoo/upgrade/pull/7493
The Helpdesk and Studio areas were updated to stay aligned with recent changes to the Kanban “Add Column” experience. This mainly keeps automated checks current, helping ensure the redesigned workflow remains reliable for users.
Original PR description
This commit adapts test selectors following changes made in https://github.com/odoo/odoo/pull/204103. Part of task-4610829
The appraisal screens now use more consistent status colors and better text wrapping so information is easier to read. A low-value skills view was removed to simplify navigation and reduce clutter for users.
Original PR description
- update appraisal list state color to match kanban - remove kanban view for skill type as it does not add value - fix the wrap of name field on kanban to not hide behind the kanban ribbon Task: 4652810
This update improves the user experience around employee time off planning, especially in calendar-style planning views and payroll-related workflows. It helps HR and payroll teams better manage leave information and related warnings across supported country payroll setups.
Approval officers and administrators can now force approve requests they are allowed to oversee, helping unblock approval flows when needed. The update also prevents portal users from being selected as approvers and reduces unnecessary notifications by only sending them when a request status actually changes.
Original PR description
The security group approval officer or approval administrator allow the user to see every request. These managers should also be able to approve all requests. This commit: - Adds a "Force approval" action on the list and form view of the approval request that bypasses all approvers and set the request as approved. - Disable the possibility to choose a portal user as an approver - Only send approval/refusal notification (or mail) when the request status has changed and not every time an approver approves/refuses task-3002203
Contracts created from salary offers now stay archived until the offer is signed, helping avoid premature active contracts. If an offer is refused, the related contract is removed so HR records stay clean and accurate.
Original PR description
This PR improves the salary configuration process by refining contract handling. The contract will remain in an archived state until the offer signing process is completed. If the offer is refused during the process, the linked contract will be deleted. task-4581692
The Belgian salary package flow now includes mobility budget options directly in the standard Belgian HR salary module. This simplifies setup and gives Belgian employers and employees a more integrated way to manage mobility-related benefits in contracts and payslips.
Activities have been redesigned to be easier to understand and complete with fewer clicks. Related workflows and automated tests were updated across affected business apps to support the new experience and help keep day-to-day activity handling consistent.
Original PR description
This commit is a revamp of how activities work. It aims at making them easier to use and comprehend, as well as making many functions available in fewer clicks. To accomodate for these changes, a few tests/flows have to be changed. related earlier PRs (TDE): https://github.com/odoo/odoo/pull/206592 https://github.com/odoo/enterprise/pull/83687 https://github.com/odoo/upgrade/pull/7578 task-4592571
Social media communications for events with multiple time slots are now sent once for the overall event instead of once per slot. This prevents audiences from receiving repetitive posts while keeping event promotion clear and manageable.
Original PR description
For multi slots events, on the contrary of the current multi slots events mailing system, the social communications still need to be send once for the whole event, not for every slots. i.e. there is no need to send a social post before every exposition tour. Limit the social post communication once for the event even if multi slots. related: https://github.com/odoo/odoo/pull/205945 https://github.com/odoo/upgrade/pull/7565 Task-4307566
The IoT app now shows connected devices even when they do not have a supported driver. This gives teams better visibility when troubleshooting hardware that is connected but not working as expected.
Original PR description
Community PR: https://github.com/odoo/odoo/pull/207043 Before this commit, only devices with supported drivers were shown in the IoT app. After this commit, a new device type 'Unsupported' is added, and the IoT box now sends us these unsupported devices. This can be helpful to debug when a device is not working as expected (e.g. blackbox serial device) task-4744357
Odoo’s bank reconciliation process has been redesigned with a clearer kanban-based workflow, making it easier for accounting teams to match bank statement lines with invoices, bills, or journal entries. The update removes some advanced configuration options to reduce complexity and improve day-to-day usability.
Original PR description
This commit introduces a revamped kanban view to process the bank statement lines and reconcile them with existing invoices/bills, or help the users to create the correct journal entry. RATIONALE:…
This commit introduces a revamped kanban view to process the bank statement
lines and reconcile them with existing invoices/bills, or help the users to
create the correct journal entry.
RATIONALE:
The previous reconciliation widget was not really user friendly, and was bloated
with a lot of advance features for niche use cases.
IMPLEMENTATION DETAILS:
* account.reconcile.model
- rule_type: writeoff_suggestion and invoice_matching entirely removed. Those
features are now directly hardcoded, users can't modify the sequence or
tweak the invoice matching algorithm anymore. We belief this was way too
advance and that people modifying the existing rules (and default behaviour)
would more likely break something rather than help the processing of their
statement lines
- partner mapping: although it's not possible anymore to do it on the partner
categories, it's still possible to define a partner mapping by creating an
account.reconcile.model with match_label & match_label_param, and a single
counter part item with the partner_id set and no account_id
- deleted fields: rule_type, matching_order, match_note, match_note_param,
match_transaction_details, match_transaction_details_param,
match_text_location_label, match_text_location_note,
match_text_location_reference, match_same_currency,
match_partner_category_ids, match_partner, past_months_limit,
decimal_separator, show_decimal_separator, partner_mapping_line_ids
(+class), allow_payment_tolerance, payment_tolerance_type,
payment_tolerance_param, counterpart _type, journal_id, number_entries
- field auto_reconcile changed name & type (was boolean): it's replaced with
the selection field 'trigger'
- to_check boolean: would now be implemented with next_activity_type that you
can set on the account.reconcile.model
* account.bank.statement.line
- Revamp of the whole javascript with a clear subdivision into
multiple components. We used a Kanban view that we completely override for
our needs which are that each kanban record will display the information of
a bank statement line (belonging to a journal) that we can unfold to show
more information. When unfolding the bank statement line the user will have
access to different buttons allowing him to directly modify the move behind
the bank statement line (adding new line, delete some, editing them, ...)
- The old bank rec widget was using two python file bank.rec.widget and
bank.rec.widget.line that were temporary models to display a representation
of the move before being validated and once it was validated the move was
changed. Those two classes were removed.
We now change directly the move because we want an auto validation. It means
that everytime a new line is added a reconciliation process is done.
- To link the move line of the bank statement line with the move line chosen
in the reconcile search view and also to trigger the reconciliation
process, we used a manyToMany field compute non stored with an inverse.
Everytime the field is written on, the reconciliation plan will be
triggered. It allows to have a link between reconciled entries without the
need of a stored field since we benefit from the partial reconcile table.
- Delete: bank.rec.widget, bank.rec.widget.line, views linked to
bank_rec_widget that are not used anymore
Co-authored by: malb <malb@odoo.com>
Co-authored-by: flg <flg@odoo.com>
Co-authored by: qdp <qdp@odoo.com>
task-4603207Users uploading a PDF to prepare it for signing will now see a warning if they try to leave before saving it as a template or sending it for signature. This helps prevent accidental loss of document setup work and gives users the option to save or discard their changes.
Original PR description
Before this commit, if a user uploaded a PDF using the "Upload a PDF and sign" button, added fields to the document, and then left without saving or sending it for signing, all progress would be lost. In this commit, when a user tries to leave a document that hasn't been saved as a template or sent for signing, a warning dialog will appear. It informs the user that the document will no longer be available if not saved. The user can choose to save the document from the dialog if needed, or discard it if they don't want to keep the changes. task-4164228