Tuesday, December 9, 2025
6 changes · master
Resolved issues and error corrections
This update ensures that the delivery address is now included in tax calculations and EDI requests for Brazilian NF-e invoices. Previously, this information was missing, which could lead to tax discrepancies. This change is crucial for compliance and accurate financial reporting.
Original PR description
Purpose: For invoice goods(NF-e), the delivery address can differ from the invoice address. It is necessary for both fiscal and logistical reasons to provide the delivery address in the tax calculation and EDI requests. Failure to do so may result in tax issues for the issuer. Expected Behavior: Users will be able to set a delivery address on the sales order and invoice and the delivery address will be sent in the requests for tax calculation and EDI. The returned EDI document will display the delivery address information. Current Behavior: The delivery address is not sent in the requests. task-5171186 Forward-Port-Of: odoo/enterprise#101267
This update fixes a bug where Belgian employees on long-term sick leave were incorrectly receiving pay for public holidays. The system now accurately reflects the Belgian accounting rules, ensuring that public holidays are not paid during sick leave exceeding 30 days. This ensures accurate payroll processing for Belgian employees.
Original PR description
Bug: In Belgium, after 30 calendar days of sick leave, all public holidays during the sick leaves are no longer paid. But here they were still being paid. Cause: The method that was checking what to do about public holidays was never seeing public holidays since they were already changed to their corresponding work entries at the work entry generation. Fix: Add the public holidays in the context and change the condition for checking if the current leave is actually from a public holiday or not. Task: 3864585 Forward-Port-Of: odoo/enterprise#100423 Forward-Port-Of: odoo/enterprise#95178
This update resolves an issue where the SHA512 hashing process in the Swedish SIE import module was not correctly implemented. The fix ensures accurate verification of digital signatures, improving the reliability of data import and preventing potential data integrity problems. This primarily impacts the handling of Swedish tax reporting.
Original PR description
Forward-Port-Of: odoo/enterprise#101511
This update significantly speeds up the Knowledge module on odoo.com by optimizing how user permissions are calculated and articles are searched. The changes reduce loading times, especially when viewing a large number of articles, leading to a faster and more responsive experience for users.
Original PR description
On odoo.com, we noticed that Knowledge can be slow when there are a lot of articles: For 4365 articles, it takes between 1.5 and 2.3 seconds to load the list view listing all the articles the user…
On odoo.com, we noticed that Knowledge can be slow when there are a lot of articles: For 4365 articles, it takes between 1.5 and 2.3 seconds to load the list view listing all the articles the user has access to. This PR will try to optimize the performance and the scalability of the Knowledge module by reworking the methods used to compute the permissions of a user on an article and the methods used to search the articles the user has access to or the articles the user can edit. Those methods are computationally expensive and are used extensively in Knowledge. They are the main hot spots of the module: The search method is for instance used in the `domain_force` of the ACL rules for some group of users (see: `user_has_access` and `user_has_write_access`). They are hence used each time the user opens an article. It is therefore important to optimize those functions to make Knowledge blazing fast and responsive. # Benchmark To assess the performance of the new query and indexes, we wrote custom scripts that will perform a server call with the same configuration as the main list view and form view of Knowledge. This should ensure that we optimize the response time of the views we frequently use. For 10k articles, we got the following results: ## List view Before: | User | Avg | Std | |-------|-----------|--------| | Admin | 58.21ms | 8.53 | | Demo | 1139.65ms | 179.37 | After: | User | Avg | Std | |-------|-----------|--------| | Admin | 85.95ms | 7.48 | | Demo | 174.17ms | 4.98 | ## Form view Before: | User | Avg | Std | |-------|-----------|--------| | Admin | 56.66ms | 8.03 | | Demo | 469.51ms | 15.48 | After: | User | Avg | Std | |-------|-----------|--------| | Admin | 35.81ms | 4.74 | | Demo | 64.45ms | 17.41 | task-3771333
Google recently updated its Firebase API, causing Odoo's push notifications to stop working. This update requires upgrading Odoo's Firebase dependencies and API calls to ensure continued functionality. This change restores the ability for users to receive push notifications from Odoo.
Original PR description
Recently, Google upgraded the Firebase API and now unsupports the API version we are using (i.e: the version 6.3.4). As a result, the Odoo push notifications no longer work. see: https://firebase.google.com/docs/cloud-messaging/migrate-v1 This commit will upgrade the dependencies and the API calls to ensure that people can send push notifications from Odoo. task-4247811
This update resolves a bug that prevented correct pay run calculations when employees had multiple contract versions. The fix ensures the correct contract end date is used, preventing type errors and ensuring accurate payroll processing. This improves the reliability of our payroll system.
Original PR description
### Steps to Reproduce: 1. Create a new employee 2. Give him another version 3. Enter contract start date for the first version ### Reason: - There was a bug while computing pay run issues. The `date_end` and `contract_date_end` fields were mixed up. - The `date_end` field got a default value but `contract_date_end` was None resulting in a type error. ### Solution: - Changed `date_end` to `contract_date_end` as it's our source of truth Task: 5391975