Tuesday, April 2, 2024
8 changes · 17.0
Enhancements to existing features
The National Social Security Fund (NSSF) contribution rates for Kenya have been updated to 7,000 KES and 36,000 KES, effective February 1, 2024. This change ensures payroll calculations comply with the latest regulatory requirements from Kenya's social security authority.
Original PR description
The rates of the nssf have been updated to 7000Ksh and 36000Ksh to reflect the changes the changes that start to be active from 1st February 2024. The computation of the nssf doesn't change. task-3827016
This update significantly speeds up the cash basis balance sheet report by optimizing how the system queries financial data. With large datasets, the report now loads in 4 seconds instead of up to 54 seconds, making financial reporting much faster and more responsive for users.
Original PR description
# Description When opening the balance sheet in the cash basis method, the queries, generated by `_compute_formula_batch_with_engine_domain`, for the report can be slow. The issue is that they filter by date, which can be slower the more data the `temp_account_move_line` table contains. # Fix To speed up these queries, I added a composite index on the date and a few other fields. Since the index is added to a temporary table, it will be removed when the table is dropped. # Benchmark (in 17.0) | Cash Basis | Before | After | |------------|-------:|------:| | 1K | 250ms | 200ms | | 80K | 22s | 4s | | 180K | 30s | 4s | | 280K | 54s | 4s | (In this case, the 4 seconds come mainly from the SELECT for payment_table). # Reference opw-3782652 Forward-Port-Of: odoo/enterprise#59376 Forward-Port-Of: odoo/enterprise#59005
This update improves the Point of Sale system to display clear, readable error messages when users encounter issues while creating or editing customer information. Previously, errors were not shown to users, making it difficult to understand what went wrong. Now, detailed error information from the backend is displayed, helping users quickly identify and resolve problems.
Original PR description
Currently, point of sale does not show a readable error for user in the edition of the partners, this change shows the error from the backend to give more information about the causes. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update improves the online store's product search functionality by adding customization hooks that allow developers to easily extend search capabilities to additional product fields beyond the standard name and product code. This makes it simpler for businesses to tailor product discovery to their specific needs without complex technical workarounds.
Original PR description
Description of the issue/feature this PR addresses: In case we want to search on other fields than name or default_code, or eventually on the descriptions, we need to reverse the domain that is built using AND and OR operators from osv.expression which is something we would prefer to avoid anytime. By adding hooks to add custom domains, it allows to search on whatever extra fields we would like to search on. Current behavior before PR: Impossible to search efficiently on specific fields Desired behavior after PR is merged: Easy to extend the domain to search efficiently on specific fields --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#147865
This update makes the editor's formatting specifications inheritable, allowing developers to extend and customize the editor with new formatting options more easily. This improvement enhances the flexibility of the web editor for custom implementations and extensions.
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: formatsSpecs object isn't heritable, which prevents developers from adding new options to the editor --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#158703
The HR Holidays dashboard has been improved to provide a better user experience. Warning messages about half-day leave requests are now positioned at the bottom of the screen to prevent them from overlapping with the ribbon, and unnecessary scroll bars have been removed from dialog windows to make the interface cleaner and easier to read.
Original PR description
The warning message when you have a half-day off confirmed while the duration of this leave's type is daily is moved towards the bottom of the sheet to avoid overlap between this message and the ribbon. And to improve the readibility of the dialog view, the scroll bar is removed when it's not needed. task: 3820211 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update adds dark mode support to Odoo's offline page, providing a more comfortable viewing experience when the application is unavailable. Users will no longer experience harsh bright screens when the offline page appears, improving overall user experience during downtime.
Original PR description
Tired of getting flashbang every time this screen pops up 💫 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update enhances the user experience on websites with slower internet connections by adding visual feedback (loading effect) when buttons are clicked during the initial page load. Instead of buttons appearing unresponsive, users now see a loading indicator and their click is processed once the page fully loads. This particularly benefits users in regions with poor connectivity while maintaining fast page load times for users with good connections.
Original PR description
Odoo implements its own lazy-loading mechanism for the biggest JS bundles that are loaded on the frontend. This mechanism allows the page to appear to the user very fast, at the downside of having…
Odoo implements its own lazy-loading mechanism for the biggest JS bundles that are loaded on the frontend. This mechanism allows the page to appear to the user very fast, at the downside of having some interactive elements (such as buttons) have no effect during the lazy loading. In general, this is not a problem since: - Standard links and buttons work, only those with custom effects (a modal, a custom JS behavior, etc) have no effect. - The full loading should not take long anyway. - After the pages have been visited, everything should be in cache. However, in some cases (countries with poor internet connections), the experience can be confusing. Without lazy loading, they would have a page that appears as a blank white page for a few seconds. With our custom lazy loading, they get the website very fast... but some buttons appear buggy (no effect) for a few seconds. The long term plan is to review our lazy loading: - Should it be less delayed than it currently is? (at the time, this was the minimum delay that made Google give us good page scoring but it may not be as impacting as before) - Should some of the lazy-loaded JS should actually not be? - Should the assets be split differently? - Could we be able to remove some code that weighs too much? - ...? Meanwhile, this commit improves the behavior this way: during lazy loading, any click on a button is now ignored but a loading effect is displayed. Once the JS is fully loaded, the click is then re-played on the previously clicked button, hopefully triggering its effect. In any case, this cannot be worse than what we have before... except for: - **The reasonable risk we take merging this in stable (we considered merging in a more recent version but it is needed for some specific projects and many websites would benefit from this improvement).** - Any custom code that added behavior on buttons to be available during lazy loading... will just wait for lazy loading with a loading effect too now. This should be a good compromise as, again, that lazy loading is cached and should not take too long anyway. Note that this replaces the previous o_wait_lazy_js class behavior (it has now no effect). Overall: - This should not impact (neither improve nor worsen) most websites that are currently experienced from good internet connections. - This should be a big improvement for most websites that are currently experienced from bad internet connections. Related to task-3770362 Forward-Port-Of: odoo/odoo#159572 Forward-Port-Of: odoo/odoo#158661