Wednesday, September 3, 2025
6 changes · 17.0
Resolved issues and error corrections
This fixes an internal test gap so standalone tests correctly verify that simulated time mode is active. It helps keep automated testing reliable and reduces the chance of timing-related issues slipping through development.
Original PR description
Standalone tests don't enter faketime mode. Forward-Port-Of: odoo/odoo#224077
This update fixes an issue where checkbox-style multi-selection fields did not pass along the surrounding field settings when searching for matching records. This helps ensure results are filtered correctly in cases such as document attachments, reducing incorrect or blocked selections.
Original PR description
**Description of the issue/feature this PR addresses:** When `name_search` is called, the `context` is not passed to the method. In some cases, this is necessary, for example, if the field is related to `ir.attachment` and you want to pass `skip_res_field_check` in the context (see https://github.com/OCA/social/pull/1672). **Current behavior before PR:** The `context` is not passed to `name_search`. **Desired behavior after PR is merged:** Ability to pass `context` to `name_search`. From #215420
This update makes Odoo's internal test setup faster by avoiding an unnecessary check unless the related test tag is actually requested. It also helps prevent test issues in environments where source files are not available.
Original PR description
`get_method_additional_tags` can be slow when there are a lot of test to load while the feature is only needed in rare cases. This commit removes the check if the corresponding tag is not in the config test-tags. This should also solve an issue when the sources are not available. Forward-Port-Of: odoo/odoo#225061
Archiving a user now correctly removes their activities even when those activities belong to a company that is not currently active in the administrator's company selection. This prevents outdated tasks from remaining visible and keeps activity records consistent across multi-company setups.
Original PR description
**Steps to reproduce:**
- Set up one user with a new company
- With this user :
- Create sale order
- Create activity on the new sale order
- Go back to the admin user
- Disable the new company in the top right menu
- Archive the user
- Activities of the user are still present
**Issue:**
In `activities_to_delete = self.env['mail.activity'].search([('user_id', 'in', self.ids)])`, the access rights of the records used in the activities are checked, which means that the sale order domains are applied. If the given domain doesn't match (for example `('company_id', 'in', company_ids)` when the company_id is manually disabled), the search can miss the activity to unlink.
**Fix:**
Added `.sudo()` to ensure all of the user's activities of any company
are considered, overwriting the current company context.
opw-4716031
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prThe window used to create a new website now clearly displays the title "Add Website." This helps users understand the action they are taking and improves clarity in the website setup flow.
Original PR description
The modal used to create a new website was missing a title. This commit fixes the issue by setting its header to "Add Website".
German DATEV exports now correctly identify the required main account when a point-of-sale session contains both sales and refunds with different tax rates. This prevents missing account information in affected accounting entries and helps ensure compliant export data.
Original PR description
In _get_datev_account, the l10n_de_datev_main_account_id is determined by identifying a singular debit or credit account used in the journal entry. If there’s no unique account, it falls back to…
In _get_datev_account, the l10n_de_datev_main_account_id is determined by identifying a singular debit or credit account used in the journal entry. If there’s no unique account, it falls back to searching for a unique non-tax line among debit or credit lines. In POS, however, there is the possibility of generating journal entries that break this flow: - In a single POS session, add product A with tax 19% and product B with tax 7%. - In the same session, refund product A. - Close the session to generate the entries. In the resulting entry, since both sale and refund are present, it is not possible to discriminate using debit and credit amounts alone, and as a result, the field l10n_de_datev_main_account_id is not populated. Since account 1411 is always the one to be used for l10n_de_datev_main_account_id in this specific case, this commit adds a final fallback filter to select the correct line and ensure the field is populated. Ticket [link](https://www.odoo.com/odoo/project/967/tasks/4915272) opw-4915272