Tuesday, July 29, 2025
5 changes · saas-18.4
Enhancements to existing features
Website image hover effects are now supported in Odoo’s new HTML builder, keeping the editing experience consistent with the updated website tools. This helps users continue applying visual image effects while benefiting from the newer builder interface.
Original PR description
Convert the previous image hover effect to the new html builder. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Gelato now depends on the basic sales module instead of the full Sales Management app. This lets e-commerce users enable Gelato without installing an extra paid app, helping free-plan users avoid an unintended plan upgrade.
Original PR description
By changing the dependence from 'sale_management' to 'sale' module, Gelato can be installed on e-commerce without installing Sale app. Users on free plan won't be moved to paid plan after enabling Gelato module as no second app will be installed.
Task searches by name no longer include task IDs, avoiding a slow database search pattern on large task lists. This improves responsiveness for users working with many project tasks, especially during peak usage.
Original PR description
### Issue Slowness when searching for tasks in a database containing ~430K `project.task` records. ### Analysis When searching for tasks by name, the `id` field is passed to the filter domain. This results in a suboptimal query plan, as the `id` field is cast as `text` in an `OR` leaf: ` [...] AND ((unaccent((name)::text) ~~* '%test%'::text) OR ((id)::text ~~* '%test%'::text)) [...]` Furthermore, since refactoring the web routes, the necessity of searching for an `id` in the search form has greatly diminished. ### Benchmarks Benchmarking the generated query using `\timing` in `psql`: | Number of records | Before | After | | -- | -- | -- | | 430K | 2.3s | 3ms | During high-usage periods, the query took up to ~10.8 seconds. #### References opw-4845258 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#219959 Forward-Port-Of: odoo/odoo#219901
Tax period locks now also cover related closing entries and tax returns, preventing them from being reset while the period is locked. This helps preserve compliance controls by requiring users to manually adjust lock dates before making changes to locked returns.
Original PR description
Before the closing move was not included in the tax lock date and could be reset while being locked. Now we also lock the closing move. Same for the return, we lock the return if the period is locked. Before, when we wanted to reset the return, it would automatically revert the lock date. Now user should do it manually otherwise he will not be able to reset the return. task-4818752 Forward-Port-Of: odoo/enterprise#86305
Businesses in Türkiye can now export the General Ledger in the required e-Ledger CSV format for any selected period. The file is automatically packaged as a ZIP archive to support submission requirements from the Türkiye Revenue Administration.
Original PR description
This PR implements the necessary functionality for Türkiye’s e-Ledger reporting, as mandated by Türkiye law (Law No: 15570). Taxpayers that switched to e-Invoice/e-Archive are also required to submit their General Ledger (GL) in the e-Ledger format. Summary of the change This update enhances the existing Türkiye General Ledger report in the `l10n_tr_reports` module with the following features: - Adds the ability for users to generate the General Ledger as a CSV file, formatted according to the Türkiye e-Ledger requirements. - Allows export for any selected period, including relevant and filtered fields. - The generated CSV file is automatically compressed into a ZIP archive to comply with the GIB (Türkiye Revenue Administration) guidelines for file delivery. Task-4270136 Forward-Port-Of: odoo/enterprise#91054 Forward-Port-Of: odoo/enterprise#86592