Thursday, October 2, 2025
7 changes · 17.0
Enhancements to existing features
Brazilian service products now show the correct LC116 Code label instead of the Mercosul NCM Code label. This reduces confusion when configuring fiscal information because goods and services use different naming conventions for their tax classification codes.
Original PR description
Purpose:- - In Brazil, NCM is a code that has an acronym to specify the Mercosul Common Name for products, and for services, the right name is LC116 (Complementary Law 116), which specifies the federal code for a service. - But we have the same field `l10n_br_ncm_code_id` to configure both NCM for goods and LC116 for services and the same table can be used for both the cases. - So while configuring fiscal information for a service, user don't understand why it still shows the NCM label instead of LC116. Before this commit:- - Label `Mercosul NCM Code` was displayed for services confusing users. After this commit:- - Label `Mercosul NCM Code` is replaced with `LC116 Code` only for services. - Tooltip is also improved for better understanding. task-5096435
This update lets checkbox-based multi-select fields use the same custom search settings as other parts of the system. It improves consistency and supports business cases where records must be filtered or handled differently based on context, such as attachments.
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. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr TT56840 @Tecnativa @pedrobaeza
Resolved issues and error corrections
Users now see a notification when they scan a barcode shorter than three characters. This prevents confusion by making it clear that the scan was rejected because the barcode is invalid.
Original PR description
When scanning a barcode shorter than 3 characters, the system previously failed silently, leaving users without feedback and unclear whether the scan was processed. This fix adds a notification to inform the user that barcodes must be at least 3 characters long. Steps to reproduce (17.0+): Scan a barcode shorter than 3 characters. Expected result: A notification is displayed indicating that the scanned barcode is invalid. Actual result: The scan is ignored silently with no feedback to the user opw-5041723 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The helpdesk "Ask the community" button now sends customers to the correct community forum page instead of a missing page. This prevents a 404 error and helps customers reach self-service support as intended.
Original PR description
Scenario:
- create a helpdesk team
- enable community forum on it
- go to the team and click on "Ask the community"
Result: 404 error, this page does not exist
Cause: we are using helpdesk.team ID in route needing a forum.forum ID
Fix: uses /helpdesk/{team ID}/forums route instead of /forum/{team ID}
opw-5027193The Swiss payroll transmission screen now hides the verified source tax statement button when the institution response does not include a correction. This prevents users from opening a report that would not contain useful information, reducing confusion during payroll review.
Original PR description
This button will give a report only in the case where the institution response has a correction, so it should be hidden.
Inventory moves with nearly identical unit prices can now be merged correctly, avoiding unnecessary duplicate stock movements. This helps keep inventory operations cleaner when tiny rounding differences occur in pricing.
Original PR description
Fix comparing `price_unit` float values as is in `_merge_moves` Remove `price_unit` from `_prepare_merge_moves_distinct_fields` and compare it using `float_compare` as it should. Description of the issue/feature this PR addresses: Current behavior before PR: Could not merge moves with slight different price_unit value. Algorithm will not merge stock.moves with slightly different price_unit eq. `783.55 & 783.5500000000001` Desired behavior after PR is merged: stock.move.price_unit is compared correctly using float_compare --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fixes an issue in Odoo Studio where removing calendar settings such as the color field could cause an error. Empty values are now handled correctly, allowing users to clear these settings without disrupting their workflow.
Original PR description
On a calendar with studio, try to remove the "color" attribute, or any other that should contain the name of a field. Before this commit there was a crash because the value sent to the server in this case is `undefined` (`null` in JSON or `None` in python), which was stringified and yielding an actual string that was not a field name After this commit, NULL values are not stringified, instead they should represent the emptiness of the attribute. opw-4938351