Tuesday, November 25, 2025
10 changes · master
Enhancements to existing features
The TDS Entry wizard now asks users to choose the TDS Section before entering the Base Amount. This makes the form flow more predictable and helps avoid confusion when the base amount is recalculated after selecting a section.
Original PR description
Before this commit: - In the TDS Entry wizard the Base Amount field appeared before the TDS Section field, causing users to enter a manual amount that later changed once the TDS Section is selected, since base amount is computed based on it. After this commit: - The TDS Section field is now placed before the Base Amount field to ensure a predictable input flow. task-5312252 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#236240
Test screencast generation now uses a lossless video format that preserves visual detail while producing much smaller files than the previous configuration. This helps teams compare automated test runs more reliably and reduces storage overhead for recorded test output.
Original PR description
- `-g 0` turns out to significantly increases file size without increasing quality (apparently it makes every frame an i-frame) - lossless video seems useful for comparing different runs, and while it *is* costly it's pretty reasonable for screencasting (5~6 times the size of a normal output, but a third the size of current outputs) - "lossless h264" (per ffmpeg) does not seem to actually be lossless - lossless av1 does work (and is slightly smaller than h265), but the libsvtav1 shipped by ubuntu does not support it, and libaom is *extremely* slow, so that might be something to revisit in a few years Testing on the main flow tour (desktop), - the current setting generates a 40MB file - removing `-g 0` generates a 2.6MB file, quality seems about the same - h264 pseudo-lossless yields a 9.4MB file - h265 lossless is 16.9MB - av1 (libsvtav1) is 2.5MB - av1 lossless (libaom) is 13.2MB Forward-Port-Of: odoo/odoo#236710
Sales orders can now be filtered by sales team more efficiently. This helps keep sales views and reports responsive when working with large volumes of orders.
Original PR description
`team_id` might be used in filters to conditionally see related `sale.order` for a specific (or set of) sales teams. If the field isn't indexed, it's a Sequential Scan on `sale_order`, which can be a large table. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#237116
This update refreshes internal support files used by Odoo's messaging and live chat areas. It helps keep the developer-facing definitions aligned with the product code, reducing maintenance friction without changing the user experience.
This update improves how accounting test files for electronic invoices are generated and compared. It makes the files more consistent and easier to maintain, reducing noise when future accounting changes are tested or backported.
Original PR description
When backporting to 18.0, we discovered a few improvement findings which are important to add in the original master version. - `_sort_xml_attributes` is reinventing the wheel. etree has a built in method- `canonicalize` which handles converting the XML to fit in to the `c14n` v2 standard, which already includes sorting of the attributes. We should use that instead of `_sort_xml_attributes`. - collect all namespaces from the whole document and put them on the root element, after the canonicalization process. This reverts the canonicalize standard of placing namespaces as deep inside the tree as possible which makes the generated UBL test ugly & crowded, as almost all element tag in UBL files are prefixed with namespaces. These collected namespaces are also sorted to ensure consistency. - remove xml_declaration on the test files related-enterprise-PR: https://github.com/odoo/enterprise/pull/100492 task-4891206
The Peppol registration wizard now shows its warning only after an endpoint has been entered, reducing unnecessary alerts for users. Placeholder text and an obsolete migration reference were also removed to make the setup flow clearer and less distracting.
Original PR description
In the Peppol Registration Wizard: - Warning banner should only show up when endpoint as been filled - Remove placeholder - Remove the "in" migration Ref PR for master: odoo/odoo#234088 Task [link](https://www.odoo.com/odoo/project/967/tasks/5170831?debug=assets) task-5170831 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#237118 Forward-Port-Of: odoo/odoo#234087
In this commit, we converted the payroll benefits into salary rules and adjusted the demo data. task-5122374.
Original PR description
In this commit, we converted the payroll benefits into salary rules and adjusted the demo data. task-5122374.
This update improves the Tyro point-of-sale system's compatibility with self-order kiosks. Specifically, it allows kiosks to access product information and prevents receipt printing, while displaying an error message for unsupported features like surcharges and tips. This ensures a smoother user experience on kiosk systems.
Original PR description
Community PR: https://github.com/odoo/odoo/pull/231190 This commit includes some small changes to make Tyro compatible with the kiosk: - Allow the `get_tyro_product_info` method to be called from the kiosk. - Don't try to print merchant receipts from the kiosk. - Show an error message if surcharges/tips are used in the kiosk, these are not yet supported. task-4882726
This update enhances the user experience of Odoo's payroll system by refining the visual presentation of pay run and employee payslip views. Specifically, minor formatting adjustments and label changes have been made to improve clarity and consistency.
Original PR description
- Replace '-' with '→' in Period on pay run payslip form - Change label 'payslip' to 'Payslip' in pay run kanban view - Remove kanban view from the Employee Payslips task-5163907
This pull request addresses improvements to the generation of UBL test files for Odoo's tax localization modules (GT and MX). Specifically, it streamlines XML processing and formatting for better test file structure and consistency, ensuring accurate validation of invoices.
Original PR description
When backporting to 18.0, we discovered a few improvement findings which are important to add in the original master version. - `_sort_xml_attributes` is reinventing the wheel. etree has a built in method- `canonicalize` which handles converting the XML to fit in to the `c14n` v2 standard, which already includes sorting of the attributes. We should use that instead of `_sort_xml_attributes`. - collect all namespaces from the whole document and put them on the root element, after the canonicalization process. This reverts the canonicalize standard of placing namespaces as deep inside the tree as possible which makes the generated UBL test ugly & crowded, as almost all element tag in UBL files are prefixed with namespaces. These collected namespaces are also sorted to ensure consistency. - remove xml_declaration on the test files related-community-PR: https://github.com/odoo/odoo/pull/237365 task-4891206