Friday, March 1, 2024
11 changes
3 changes
Enhancements to existing features
This update enhances the speed and accuracy of product and partner searches within Point of Sale. The new search algorithm, based on the Smith-Waterman algorithm, reduces irrelevant results and prioritizes exact matches, leading to a better user experience. Additionally, search results are now displayed in the order of the search query, increasing relevance.
Original PR description
Before this commit, the fuzzyLookup function from the web was used, which had some issues when users searched for exact terms to find products or partners with a limited number of characters. It often showed irrelevant items, which was confusing for the users. With this commit, a new fuzzy lookup based on the Smith-Waterman algorithm for local sequence alignment is implemented. Also it improves the search accuracy by giving a bonus when the exact term is found in a text. Additionally, the product search results are now displayed based on the search order, instead of being sorted by the product name. This change makes the search results more relevant to the user's search query. opw-3766742 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update adds ‘lastmod’ attributes to forum post URLs in the website sitemap. This helps search engines like Google efficiently crawl and index our forum content, improving its visibility. While complex date tracking is difficult across the website, this targeted approach focuses on the forum, providing a reliable way to signal content freshness.
Original PR description
When a crawler (eg Googlebot) come to visit your website, it grants you a limited amount of time and ressources, it's called "Crawler budget". If you have millions of URLs, it won't go through each…
When a crawler (eg Googlebot) come to visit your website, it grants you a limited amount of time and ressources, it's called "Crawler budget". If you have millions of URLs, it won't go through each one of them in a single go.
The best you can help those crawler, the better. The sitemap `lastmod` attribute, despite not being fully respected and trusted by crawlers, is one of the way you can still try to help them.
For website.pages, it's already done. But for controllers, it's not an easy thing to do as we have no way to automatically figure what are the relevant records/fields to look at to know the last update date. For instance, on the event pages, some pages content are mostly stored inside an `ir.ui.view`, but the title, hours etc are part of the event itself.
We can't just say "we take the last write_date of the record", it's wrong in 2 ways:
- The first one I just explained where we wouldn't be able to easily get all the elements part of the page rendering and would miss a possible element write_date, leaving an outdated date in `lastmod`.
- Then, there is another issue (which is more problematic in stable): the `write_date` is often updated for non website related purposes. For instance, on /partners/<partner>, we wouldn't be able to use the write date on odoo.com as the partners shown there (having a grade) are update every weeks in average, because of many fields, for instance: commission_plan_id, partner_weight, grade_id, ...
Still, there is a quick win possible in stable about forum posts which are not impacted by the 2 issues explained above:
- There is a dedicated `last_activity_date` field which is updated only when relevant information are modified. We can ensure to show a date which is not updated too frequently for no reason.
- All the forum.post information displayed on the page are stored inside the forum.post itself.
This commit is thus adding the `lastmod` on forum.post URLs in the sitemap in hope of not making Google waste time on (very) old posts.
Note: the `lastmod` has to be trustworthy and correct, if you set wrong
or outdated info inside it, Google won't trust you/it anymore.
Forward-Port-Of: odoo/odoo#155197This update adds a placeholder to the industry selection field on the website creation process. Previously, users were unsure of what information to enter, leading to potential confusion. This simple addition provides a helpful hint, streamlining the website setup for our customers.
Original PR description
-User might not know what they going to type in, this commit add a placeholder in the input of industry selection to give a hint for user when in website creation Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#155862
4 changes
Enhancements to existing features
Recurring shift planning now skips dates when employees or the company are unavailable, such as holidays, leave days, weekends, conflicts, or contract end dates. This helps avoid scheduling people when they should not be working and makes repeated shift generation more reliable.
Original PR description
…rrency This commit introduces unavailabilities when planning recurrent shifts in the planning app. Unavailabilities include company closing days, public holidays, employee leaves, shifts in conflicts, fixed contract endings, etc. Prior to this change, when recurrent shifts were planned and generated, no unavailability information was taken into account. For example, if we planned a shift to repeat every month on the 15th, and it landed on a weekend (a company closing day), it would be normally generated. After this commit, it would not be, as no resource is supposed to be working at that time. task-2918840
4 changes
Enhancements to existing features
This update improves the performance of deleting planning shifts in the system. When deleting shifts, especially recurring ones, the system was performing slow database scans. We've added database indexes to speed up these deletions, which is particularly beneficial for companies with large timesheet and work entry records.
Original PR description
## Description Deleting planning slots can be slow on some databases that make heavy usage of the Timesheet/WorkEntries from shifts feature and/or they have large tables for their `account.analytic.line` and/or `hr.work. entry`. It can be especially felt when deleting all recurrences of a shifts. This is due to the missing indexes on the FKey to the `planning.slot` model on large models. Without an index on the FKey, deleting a `planning.slot` will trigger Seq.Scans on the tables that references the `planning.slot` model to set the field to NULL or trigger the SQL `ON DELETE` constrains. ## Fix Add the missing indexes. Partial on nulls because it's a sparse relationship. ## Reference task-3747131
Salary offers can now be refused directly from the salary configurator, with feedback sent to HR. HR managers can record a structured refusal reason in the backend, making follow-up easier and enabling future reporting on why offers are declined.
Original PR description
An offer is often refused. Currently, they need to be tracked somewhere else, and managed manually. It should be made easier, so that the user can give feedback about the offer to the hr manager. The HR manager can then refuse the offer on the backend and select a refusal reason. Having defined refuse reasons will allow to make dashboards. task-3619658
The appraisal smart button is now easier to understand and better positioned when an appraisal is in progress. It is also visible through the full management hierarchy, helping managers quickly access relevant current appraisals while demo data is cleaned up for a clearer experience.
Original PR description
Improve the appraisal request visibility by adjusting the smart-button text to "Current Appraisal" and adjust its position when an appraisal is ongoing. Also remove appraisal for Mitchel Admin from demo data. Also ensure the button appears recursively for all the managers in the hierarchical structure. Task-3499125
The spreadsheet engine used in Odoo has been updated to a newer alpha version, bringing improvements to spreadsheet-related features. This affects areas such as document spreadsheets, charts, and global filters, helping keep reporting and analysis tools current and more reliable.
Original PR description
…-alpha.6
This update removes restrictions that previously prevented users from modifying taxes that were already used in transactions. Instead of having to duplicate a tax to make changes, users can now edit taxes directly. The system maintains a detailed audit trail of all modifications, and the change tracking has been improved to focus on the position of tax components rather than their IDs, reducing unnecessary notifications.
Original PR description
Problem --------- Due to commit 8d77045b46a1b4a9d7fffd1111e53749d51d81e2, restrictions were added to taxes that were used in transactions. However, this behavior worsens user experience; users that…
Problem --------- Due to commit 8d77045b46a1b4a9d7fffd1111e53749d51d81e2, restrictions were added to taxes that were used in transactions. However, this behavior worsens user experience; users that would like to modify a tax would have to duplicate it, update the duplicated version and modify the tax usage where necessary. For such reason, this process is being reverted (we keep the tracking of the modification). The tracking of repartition lines now also includes the sequence of the lines since it is not restricted anymore. Furthermore, `_message_log_repartition_lines` has been updated to log messages when new repartition lines are added or repartition lines are removed. It also has been update to track changes of lines by comparing their position in the tax (rel. sequence) and not their IDs. Doing so allows to remove unnecessary logging when, for example, users remove a repartition line and immediately add a new one similar to the one deleted. It also allows to not log reordering event of two similar lines. original-commit: 8d77045b46a1b4a9d7fffd1111e53749d51d81e2 task-3450002 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update improves the website creation experience by adding a helpful placeholder text to the industry selection field. Users will now see a hint about what to enter when creating a new website, reducing confusion and making the setup process more intuitive.
Original PR description
-User might not know what they going to type in, this commit add a placeholder in the input of industry selection to give a hint for user when in website creation Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update removes event booths from the website sitemap to improve search engine efficiency. Search engines will still discover booth pages naturally through website crawling, so explicitly listing each booth in the sitemap is unnecessary. This reduces unnecessary crawler requests and improves overall site performance.
Original PR description
If booth exists for this event, bot will discover it via crawling. Don't need to ask to crawler to check for each event if a booth exists. Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr