Friday, July 4, 2025
10 changes · 18.0
Enhancements to existing features
In the French accounting localization, delivery dates are no longer automatically copied from the invoice date. This ensures delivery dates are entered only when users explicitly provide them, improving accuracy for business records.
Original PR description
This commit prevents the delivery date from being set to invoice date by default in French localization. We need the delivery date to be only set by the users. task-4900043 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Grouped customer invoice payments now use a PAY/XXXXX memo instead of BATCH/XXX. This avoids confusion with the separate Batch Payment feature and makes payment references clearer for accounting users.
Original PR description
Purpose ------- This improves clarity in group payment memos: the previous BATCH/XXX prefix could be misleading as it resembled the Batch Payment feature, while the generated payment was unrelated to it. Changes ------- Replaced BATCH/XXX prefix with the more generic and consistent PAY/XXXXX format. Aligns with the syntax introduced in v18 for payments without entries. How to test ------- Go to Accounting > Customers > Invoices. Select multiple posted customer invoices. Click "Action" > "Register Payment". Tick the "Group Payments" checkbox. Validate the payment. The generated memo should now use the PAY/XXXXX format instead of BATCH/XXX. Confirm that batch payment features are not affected.
Resolved issues and error corrections
This fixes confusing display issues when users select property fields or group records by a property. Separators are no longer shown where they should be hidden, and grouped list views keep column names clear instead of adding the parent name.
Original PR description
Bug 1 ===== When inserting properties in a domain, or in the server action form view, the property separator should not be visible. Don't show separator in group by. Bug 2 ===== Name change in list view after grouping by a property 1. Add a property in the list view 2. Group by a property => The name of the parent is added in the column. Task-4896271
Miscellaneous changes
This commit fixes this [runbot error](https://runbot.odoo.com/odoo/runbot.build.error/75847) which is triggered by a toolbar method called at an incorrect time in some instances. Sometimes the method could be called after the form view was exited. Which means that the iframe used by the mailing editor could trigger the method even though it is no longer in the DOM. This leads to a call to getSelection on a document that could no longer be displayed/present in the DOM. To fix this issue, whe
Original PR description
This commit fixes this [runbot error](https://runbot.odoo.com/odoo/runbot.build.error/75847) which is triggered by a toolbar method called at an incorrect time in some instances. Sometimes the method could be called after the form view was exited. Which means that the iframe used by the mailing editor could trigger the method even though it is no longer in the DOM. This leads to a call to getSelection on a document that could no longer be displayed/present in the DOM. To fix this issue, when the selection returned by the document is null (this.document no longer on the DOM), the method returns directly. task-4829204 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#212056
Accounting menus for analytic accounting are now hidden when the feature is turned off in company settings. This avoids showing users options that are not available for their company configuration.
Original PR description
Purpose ------- This fixes a visibility issue in the Accounting menus: analytic menus were still displayed even when analytic accounting was not enabled in the company settings. Changes ------- - Applied correct group to hide the menus when analytic accounting is disabled. - Ensured consistency across all related menu entries. How to test ----------- 1. Go to Settings > Companies > Your Company. 2. Disable the "Analytic Accounting" checkbox (under Accounting features). 3. Go to the Accounting app. 4. The "Analytic Accounts" and related submenus should now be hidden.
The website editor now handles duplicate page view records safely instead of crashing when opening a page. This helps administrators and editors keep working even if a website view was accidentally duplicated with the same identifier.
Original PR description
When multiple `ir.ui.view` records exist with the same key (e.g., due to duplication), it can lead to a singleton error. **Steps to reproduce:** 1. Install the website module 2. Go to `Settings >…
When multiple `ir.ui.view` records exist with the same key (e.g., due to duplication), it can lead to a singleton error. **Steps to reproduce:** 1. Install the website module 2. Go to `Settings > Technical > User Interface > Views`. 3. Find and duplicate the **Home** view for **My Website** (same key). 4. Open the website home page in Editor mode. **Error:** `ValueError - Expected singleton: ir.ui.view(2776, 2774)` **Cause:** In `viewref()`, it uses `filter_duplicate()` to filter for the most suitable view, but it may return multiple views if more than one match the criteria. - [1] **Ref:** At [2], system uses `limit=1` in `_view_obj()` to ensure only one view is returned, even if duplicates exist for the same key. [1]: https://github.com/odoo/odoo/blob/edfa37271a0015a0d4acb17e6985a87e707e5f33/addons/website/models/website.py#L1228-L1230 [2]: https://github.com/odoo/odoo/blob/51fcbd211d2b1abf4b93becedbcbb9e03002cdd6/addons/web_editor/models/ir_ui_view.py#L326 **Fix:** This commit ensures that the result is a record set with at most one view and preventing singleton-related errors. sentry-6223988092 Forward-Port-Of: odoo/odoo#213113
This fixes a minor typo in the Malaysia e-invoicing extension that helps distinguish credit notes from refunds in the code. The existing behavior was already working, but the cleanup reduces confusion and helps prevent future maintenance mistakes.
Original PR description
Fixes a small typo in the code which makes the distinction between credit note and refunds. Note that the code still works with the typo; which explains why the tests were green. But it's a weird line so better clean it up. In 18.1+ it's being fixed during the forward port of the commit that introduced the typo --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents an error when opening Studio from the Documents list after creating a shortcut to a file. Users can now continue customizing Documents with Studio without being interrupted by a crash in this workflow.
Original PR description
Steps: - Install `documents` and `studio` - Open documents, go to list view - Select a random file and 'Create a shortcut' via the actions - Try to open studio - traceback opw-4900667
### Issue: Certain shopfloor tests make assert on the number of records present in the shopfloor: - test_shop_floor_my_wo_filter_with_pin_user - test_automatic_backorder_no_redirect These assert can not be reliable due to demo-data's adding unrelated records e.g. https://github.com/odoo/enterprise/blob/5bfadae317ee47ac34703d4cc222677ac677cc7d/purchase_mrp_workorder_quality/data/purchase_mrp_workorder_quality_demo.xml#L79-L84 runbot-build-error-226734 Forward-Port-Of: odoo/enterprise
Original PR description
### Issue: Certain shopfloor tests make assert on the number of records present in the shopfloor: - test_shop_floor_my_wo_filter_with_pin_user - test_automatic_backorder_no_redirect These assert can not be reliable due to demo-data's adding unrelated records e.g. https://github.com/odoo/enterprise/blob/5bfadae317ee47ac34703d4cc222677ac677cc7d/purchase_mrp_workorder_quality/data/purchase_mrp_workorder_quality_demo.xml#L79-L84 runbot-build-error-226734 Forward-Port-Of: odoo/enterprise#88005
This PR introduces new product-level codes for l10n_pe, in accordance with the latest updates from SUNAT: ### Withholding codes (detracciones): - Code `044`: Servicio de beneficio de minerales metálicos gravado con el IGV - Code `045`: Minerales de oro y sus concentrados gravados con el IGV These were added to the `l10n_pe_edi` module. ### Tariff fractions: 39 new values were added based on the SUNAT's updated list of tariff fractions for delivery guides. These were added to t
Original PR description
This PR introduces new product-level codes for l10n_pe, in accordance with the latest updates from SUNAT: ### Withholding codes (detracciones): - Code `044`: Servicio de beneficio de minerales metálicos gravado con el IGV - Code `045`: Minerales de oro y sus concentrados gravados con el IGV These were added to the `l10n_pe_edi` module. ### Tariff fractions: 39 new values were added based on the SUNAT's updated list of tariff fractions for delivery guides. These were added to the `l10n_pe_edi_stock` module. **Source:** https://cpe.sunat.gob.pe/sites/default/files/inline-files/AjustesValidacionesCPEv20250421.xlsx Forward-Port-Of: odoo/enterprise#87138