Friday, September 11, 2026
4 changes · saas-19.3
Enhancements to existing features
The Mexican electronic invoicing flow now records when an automatic cancellation cannot be completed. This makes it easier for support and operations teams to investigate cancellation issues instead of having failures pass silently.
Original PR description
In the current state, when an edi document is set to cancelled, the journal entry will attempt to cancel. However, if the cancellation throws a `UserError`, the flow simply continues. This PR adds a logger call to record the failure and help investigate the potential causes. Forward-Port-Of: odoo/enterprise#123511
The Belgian payroll configuration now includes a new value for the training time off threshold used in salary rules. This helps keep payroll calculations aligned with the latest required parameter for training-related time off.
Original PR description
add new value to the training_time_off_threshold salary rule param. task-6545545 Forward-Port-Of: odoo/enterprise#131080
Odoo Box queue actions are now kept for 24 hours instead of 3 hours. This gives teams more time to investigate and debug issues up to one day after they occur, without changing day-to-day user workflows.
Original PR description
We now keep obox actions for 24h instead of 3h to be able to debug until one day after. Forward-Port-Of: odoo/enterprise#130965
This change makes log entries show the actual system time instead of simulated test time when faketime is used. This helps teams read runbot logs more accurately and analyze how long test steps really took, while still keeping the simulated timestamp available when needed.
Original PR description
When using faketime the logs are not showing the real time but the faketime one which can be confusing when listed in the runbot interface. Before the usage of the JSONFormatter, the logs were using the PostgreSQL time, which is the real time. This restores the previous behaviour. Having the faked time oustide JsonFromater is also painful: long running faketimed tests end up with most of their logs stamped to nearly the same real date, preventing any analysis of execution time based on the logs. One drawback of this change is the inability to identify at first sight whether a log was faketimed or not, but at this point it is just a tradeoff, and the faked_created field on the record still allows getting this info if needed. Forward-Port-Of: odoo/odoo#287455 Forward-Port-Of: odoo/odoo#287159