Thursday, October 2, 2025
17 changes · master
Enhancements to existing features
This change updates several customer-facing document and email templates across appointment scheduling, electronic invoicing, stock delivery guides, and signatures. It likely improves consistency or corrects wording/layout in these documents, with limited business impact beyond clearer communications and compliant-looking outputs.
This update reorganizes how chat channel membership information is stored and accessed in Discuss-related features. It supports cleaner internal data handling for messaging integrations like AI and WhatsApp, helping future improvements be easier to maintain without changing the user experience.
Original PR description
Part of task-4675831 PR community: https://github.com/odoo/odoo/pull/229208
This update replaces an outdated template instruction across many Odoo Enterprise apps with the current supported equivalent. The change helps keep reports, emails, and portal pages maintainable and compatible without altering day-to-day business workflows.
Resolved issues and error corrections
The Slovak payroll accounting test setup now gives the test user the required payroll manager permissions. This prevents access-rights failures during automated payroll checks, helping keep payroll functionality reliable.
Original PR description
steps to reproduce: install l10n_sk_hr_payroll_account run test_payslip_1 test added payroll manager groups to the test user to avoid missing access rights error build_error-230673 Forward-Port-Of: odoo/enterprise#95305
Features or functions removed from Odoo
Public Knowledge articles no longer include Twitter-specific preview metadata. This simplifies the page metadata and avoids maintaining social tags that are no longer needed, with minimal impact on regular website visitors.
Code cleanup and technical improvements
Several internal model labels were updated from plural to singular wording across multiple Odoo apps. This improves naming consistency in the system and helps keep generated labels, exports, and configuration screens clearer without changing business workflows.
The Swedish SIE4 export now uses the character encoding required by the official SIE standard. This helps exported accounting files handle Swedish characters correctly and reduces the risk of compatibility issues when sharing them with other systems.
Original PR description
The SIE4 specification (page 8, section 5.8) requires the file character set to be IBM PC 8-bit extended ASCII (Codepage 437). Previously, 'ISO-8859-1' was used, which does not comply with the standard and may cause issues with Swedish characters. This commit updates the SIE4 export to use codepage 437, ensuring full compliance with the specification. Specification can be found here: https://sie.se/wp-content/uploads/2020/05/SIE_filformat_ver_4B_080930.pdf Forward-Port-Of: odoo/enterprise#95876
This fix disables a revert mechanism in Swiss payroll that could cause incorrect or unwanted payroll reversals. It helps keep payroll processing more predictable and reduces the risk of payroll records being changed unexpectedly.
Original PR description
Forward-Port-Of: odoo/enterprise#95867
This fix ensures test errors are correctly detected instead of being silently ignored. It improves confidence in quality checks for the affected helpdesk live chat area, without changing customer-facing behavior.
Original PR description
This commit follows a community fix that restores proper error handling within and outside of unit tests. As such, it fixes tests reporting errors that were previously not picked up. Community PR: https://github.com/odoo/odoo/pull/228836 Forward-Port-Of: odoo/enterprise#95797
This fixes an issue in Indian payroll where the total allowance check against wages could behave incorrectly. It helps ensure payroll validations are applied reliably, reducing the chance of incorrect employee compensation setup being accepted or rejected.
Original PR description
Forward-Port-Of: odoo/enterprise#96003
When confirming a Belgian payroll working schedule change, users are now taken directly to the employee form with the newly created version selected. This avoids the confusing old redirect to a list of versions and helps HR users continue their work in the right place.
Original PR description
…dule change The working schedule change wizard was redirecting to a list of version when validating. This was the old behavior with the contract. Instead, redirect to the employee form view with the new version selected. task-5126204 Forward-Port-Of: odoo/enterprise#95877
This fixes an automated Accountant test flow that could finish before the final action was complete. The change improves reliability of validation for the account merge wizard without changing day-to-day user features.
Original PR description
The last check of the tour is always true. So it sometimes closes too early. Wait really for the last operation for the last check runbot-error-108440 Forward-Port-Of: odoo/enterprise#95991
The Field Service onboarding guide now starts correctly even when the project already contains task templates. This prevents setup guidance from getting blocked for teams with preconfigured workflows.
Original PR description
This commit's purpose is to allow the fsm onboarding tour to work even if there are existing task template within the fsm project. note : This commit has to be edited in the 19.0 forward port, since its IsActive selector was updated. It should be ["body:has(.o-kanban-button-new.o-dropdown-caret"] instead. task-5088820 Forward-Port-Of: odoo/enterprise#94904
This update corrects how subscription invoice sections are handled for combo products. It helps prevent existing section information from being overwritten and avoids adding unnecessary values, improving invoice accuracy.
Original PR description
This commit improve fix of PR https://github.com/odoo/enterprise/pull/90989 to avoid overriding right combo section values and avoid setting unnecessary values on the section. opw-5069278 Forward-Port-Of: odoo/enterprise#95831 Forward-Port-Of: odoo/enterprise#94776
Budgets that are shared across companies can now display monetary values correctly even when no specific company is assigned. This prevents currency-related display issues for organizations using company-independent budgets under a shared-currency assumption.
Original PR description
Budgets can work without a company, making the assumption that all the companies using the budget have the same currency. This is done by not setting a company on the budget. Since the currency is computed on the company, we need a fallback for the monetary widget to work. Forward-Port-Of: odoo/enterprise#95000
Spanish tax reporting now handles missing date information safely when creating or testing new records. This prevents unexpected failures in automated checks while keeping the normal date validation unchanged for regular report use.
Original PR description
The `_get_mod_period_and_year` method assumed that `options['date']` would always be present with `date_from` and `date_to`. However, during the automatic `TestEveryModel.test_computed_fields_without_dependencies`, this method is called on a `new()` record where no options are provided. This resulted in a `KeyError: 'date'`. We now gracefully handle missing or incomplete `options` by returning `(None, None)` instead of raising an exception. This ensures that tests and new records can be created without errors, while preserving the original validation logic when valid options are given. build_error-231511 Forward-Port-Of: odoo/enterprise#94154
Opening a spreadsheet list side panel no longer crashes when the list was sorted by a field that was later removed or renamed. Users can now access the panel and remove the invalid sorting after upgrades, avoiding disruption when working with older spreadsheets.
Original PR description
If a list is sorted on an invalid field and you try to open the list side panel, it crashes. It should open to allow the user to remove the sorting. A list with an invalid sorting field if the spreadsheet was created in a given version, then upgrades to a version where that field has been removed or renamed. Task: 4962837 Forward-Port-Of: odoo/enterprise#94972 Forward-Port-Of: odoo/enterprise#92393
Original PR description
https://github.com/odoo/odoo/pull/229299