Thursday, August 12, 2021
29 changes · master
New functionality added to Odoo
Attendance now automatically tracks extra or missing hours when employees check out, based on company settings and expected work schedules. Employees and managers can also convert eligible overtime into time off requests or allocations, making attendance data more useful for workforce planning.
Original PR description
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
Enhancements to existing features
Newly created projects will now display example task cards and columns instead of an empty screen. This helps users understand how a project board can look and makes it easier to get started.
Original PR description
When creating a new project, users are presented with a blank screen without any data. This commit aims at showing them what a project might look like once data are created. Fake records are created in each kanban columns, if there are no columns, it will show fake columns. TaskID: 2239715 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
Resolved issues and error corrections
Project users and recruitment officers can now open the Activity Types configuration without running into an access error. This fixes a permissions issue caused by activity types referencing model information that these users could not read.
Original PR description
Many2one to ir.model on mail.activity.type leads to an access error when a project user or a recruitment officer open the Configuration > Activity Types menu. since #69120
Miscellaneous changes
Before this commit, It was setting first available account as default regardless of it is deprecated or not. With this commit, we are excluding deprecated account as default. Fixes #74280 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#74386
Original PR description
Before this commit, It was setting first available account as default regardless of it is deprecated or not. With this commit, we are excluding deprecated account as default. Fixes #74280 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#74386
This update improves the Timesheets interface with clearer list and kanban presentation, styling updates, and supporting sample images. It helps users review and understand timesheet information more easily, making day-to-day time tracking feel more transparent.
Original PR description
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
Recruitment applicant records are now based on the same contact data used elsewhere in Odoo, reducing duplicate information and making candidate details easier to reuse. This improves consistency across hiring, employee creation, and skills tracking while keeping recruitment workflows aligned with contact management.
Original PR description
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
Stock receipt processing is now faster when purchase orders include large quantities of products tracked by serial number. This reduces repeated background lookups during line creation, cutting validation time by about 35% in the benchmark and improving efficiency for high-volume warehouse operations.
Original PR description
No need to make the same query 10 k times during line generation. This saves about 35% of the execution time STEPS: * create a PO for product tracked by serial, set qty=10000 * confirm the PO PO validation benchmark: ``` BEFORE: 20223 7.007 11.960 20131 7.602 12.442 AFTER: 10159 4.786 8.168 10132 5.035 8.567 ``` --- task-2575448
Performance tests now measure JavaScript and CSS asset generation separately. This makes it easier for teams to identify which type of asset is slowing down bundle generation and focus optimization work more effectively.
Original PR description
The given time are currently quite high (arround 5 seconds for some bundles) but it is difficult to know what kind of assets are taking so much time. This commit will split js and css in order to track the generation time separatelly.
Messaging initialization was optimized to use fewer database queries, making chat and related communication features load more efficiently. New performance testing helps prevent future slowdowns in this area.
Original PR description
Reduce the number of queries in `init_messaging` (and related methods) and add a test to ensure it. Less queries, less code (not counting the new performance test itself). See individual commits for gradual improvements. task-2622462
When an HR salary offer link has already been copied, changes to the offer details now automatically refresh the copied link. This prevents users from sharing outdated links and reduces manual re-copying mistakes.
Original PR description
changing a field and directly click on the copy button will change the URL with the new value but the already copied URL will have the old value. so this commit improves the issue by calling the copy button whenever the user changes the field and the copy button has been clicked once so that the copied URL will be updated with the new value. TaskID-2577962
This update streamlines how helpdesk live chat commands are handled behind the scenes. It removes special setup logic so the system is easier to maintain without changing the experience for end users.
Original PR description
* = website_helpdesk_livechat Those are hard-coded methods just like any other, remove the magic call and the need to forward them to the client at init. task-2622462
The marketing automation email view has been adjusted to better fit automation-specific workflows. This should make it clearer and easier for business users to manage automated mailings within marketing campaigns.
This fixes the display of hints in the website editor command bar so they are aligned correctly and remain readable on different backgrounds. Users get a clearer editing experience with less visual confusion.
Original PR description
The command bar hints were not properly text-aligned, and the color was sometime not visible depending on the background. task-2607335 task-2607337 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Manufacturing document attachments are now deleted properly when users remove them from a bill of materials line. This prevents obsolete files from remaining in the system and keeps attachment records cleaner.
Original PR description
Steps to Reproduce Bug: - Add Attachment on Bom Line - Delete Attachment Bug: - Attachment is still present on `ir.attachment` With this commit, we are removing linked attachment on deleting `mrp.document` 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
The web editor now handles spaces more reliably when users type near the command bar or create links automatically. This prevents accidental double spaces and reduces editing interruptions, making content entry smoother.
Original PR description
Inserting a space would occasionally insert two spaces, and auto link making would sometimes conflict with the command bar. task-2584101 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes payment setup logic so saved payment methods are matched using the correct payment provider information. It also prevents duplicate payment lines from being created, reducing errors when configuring payment acquirers and SEPA direct debit.
Original PR description
Fix two issues: The search of suitable payment token was searching on the journal_id field of the payment acquirer that is no longer stored. Change it to now search on the acquirer_id directly, since we have this information. The _inverse_journal_id method on payment acquirers would create new payment line with the manual payment method when no provider are given to an acquirer, or no payment method is existing for a given provider. This would cause issues with the creation of multiple line with the same name on a same journal, which would trigger the constrains blocking that.
This update fixes display problems in the Social feed so posts, comments, and replies open and render correctly again. It also simplifies social media descriptions to plain text, making the data easier to maintain without changing the user-facing purpose.
This fixes an issue where some PDF documents could render incorrectly in the Sign app because their text encoding was not handled properly. Users can now view and process affected signing documents more reliably.
Original PR description
In https://github.com/odoo/enterprise/pull/20098, a fix was proposed for all modules. However, the fix did not target sign. This PR, therefore, fixes PDF rendering in sign.
Before this commit: No "image" metadata was available for products on the ecommerce main page (/shop). As such search engines SEO will be less effective. In the case of the client, using "Google Search Console" would give the message: `Missing field 'image'` as a "Top Warning" Note: This issue was introduced by: https://github.com/odoo/odoo/pull/30656 and was partially solved by: https://github.com/odoo/odoo/pull/37870/commits/c66892e65d2ae0ca31a686f65d4b517a9d7ffd0b OPW-2509546 -
Original PR description
Before this commit: No "image" metadata was available for products on the ecommerce main page (/shop). As such search engines SEO will be less effective. In the case of the client, using "Google Search Console" would give the message: `Missing field 'image'` as a "Top Warning" Note: This issue was introduced by: https://github.com/odoo/odoo/pull/30656 and was partially solved by: https://github.com/odoo/odoo/pull/37870/commits/c66892e65d2ae0ca31a686f65d4b517a9d7ffd0b OPW-2509546 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74895 Forward-Port-Of: odoo/odoo#74880
Before this commit, MOs were not filtered based on selected BoM. With this commit, We are filtering MOs to selected based on BoM. Fixes #70215 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#74674
Original PR description
Before this commit, MOs were not filtered based on selected BoM. With this commit, We are filtering MOs to selected based on BoM. Fixes #70215 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#74674
Fix two issues: The search of suitable payment tokens was searching on the journal_id field of the payment acquirer that is no longer stored. Change it to now search on the acquirer_id directly, since we have this information. The _inverse_journal_id method on payment acquirers would create new payment line with the manual payment method when no provider are given to an acquirer, or no payment method is existing for a given provider. This would cause issues with the creation of mult
Original PR description
Fix two issues: The search of suitable payment tokens was searching on the journal_id field of the payment acquirer that is no longer stored. Change it to now search on the acquirer_id directly, since we have this information. The _inverse_journal_id method on payment acquirers would create new payment line with the manual payment method when no provider are given to an acquirer, or no payment method is existing for a given provider. This would cause issues with the creation of multiple lines with the same name on a same journal, which would trigger the constrains blocking that. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74938
Steps to reproduce the bug: - Go to purchase app > create a request for quotation - click on confirm > Lock Problem: Date confirmation becomes invisible, and date order becomes visible Solution: As we have already confirmed the purchase order and the lock button only appears when the PO is confirmed, it makes sense to leave the confirmation date visible https://github.com/odoo/odoo/blob/13.0/addons/purchase/views/purchase_views.xml#L138-L139 opw-2612608 -- I confirm I
Original PR description
Steps to reproduce the bug: - Go to purchase app > create a request for quotation - click on confirm > Lock Problem: Date confirmation becomes invisible, and date order becomes visible Solution: As we have already confirmed the purchase order and the lock button only appears when the PO is confirmed, it makes sense to leave the confirmation date visible https://github.com/odoo/odoo/blob/13.0/addons/purchase/views/purchase_views.xml#L138-L139 opw-2612608 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74980 Forward-Port-Of: odoo/odoo#74958
The bold command used `assignInlineStyle`, which misidentified when a text node needed to be wrapped in an inline element in some situations, eg: `<p>aaa<span style="font-weight: normal;">[bbb<span>c]cccc</span>bb</span>dddddd</p>` task-2613476 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74997
Original PR description
The bold command used `assignInlineStyle`, which misidentified when a text node needed to be wrapped in an inline element in some situations, eg: `<p>aaa<span style="font-weight: normal;">[bbb<span>c]cccc</span>bb</span>dddddd</p>` task-2613476 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74997
The command bar hints were not properly text-aligned, and the color was sometime not visible depending on the background. task-2607335 task-2607337 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#75000
Original PR description
The command bar hints were not properly text-aligned, and the color was sometime not visible depending on the background. task-2607335 task-2607337 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#75000
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#74081
Original PR description
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#74081
…tions Issue: When changing a settings and saving, all the operation types (stock_picking.type) that had a code different than incoming had their Show Detailed Operations (show_operations) forced to be True, even when the change in settings was totally unrelated Steps to reproduce : 1) Go to Inventory (stock) / Configuration / Warehouse Management / Operations Types 2) Find or create an Operation Type with Type of Operation set to something else than Receipt (incoming) 3) Ensures tha
Original PR description
…tions Issue: When changing a settings and saving, all the operation types (stock_picking.type) that had a code different than incoming had their Show Detailed Operations (show_operations) forced to…
…tions Issue: When changing a settings and saving, all the operation types (stock_picking.type) that had a code different than incoming had their Show Detailed Operations (show_operations) forced to be True, even when the change in settings was totally unrelated Steps to reproduce : 1) Go to Inventory (stock) / Configuration / Warehouse Management / Operations Types 2) Find or create an Operation Type with Type of Operation set to something else than Receipt (incoming) 3) Ensures that the checkbox Show Detailed Operations (show_operations) is **unchecked** 4) Go to Settings and check or uncheck any setting, for example Permissions > Default Access Rights 5) Save 6) Go back to the Operation Type seen before 7) Show Detailed Operation is now **checked** Why is that a bug: The intended behaviour was to check that Show Detailed Operations box every time we change group_stock_multi_locations, group_stock_production_lot, or group_stock_tracking_lot from **unchecked to checked**, but the actual behaviour was to check that SDO box every time one of the **3 was checked when changing settings** opw-2604730 Forward-Port-Of: odoo/odoo#74905 Forward-Port-Of: odoo/odoo#74786
Ticket: 2578903 In the overview menu, the time of a calendar event was not formatted according to the user preferences. This PR fixes that. Forward-Port-Of: odoo/odoo#74611 Forward-Port-Of: odoo/odoo#73569
Original PR description
Ticket: 2578903 In the overview menu, the time of a calendar event was not formatted according to the user preferences. This PR fixes that. Forward-Port-Of: odoo/odoo#74611 Forward-Port-Of: odoo/odoo#73569
… when renewing Issue : When renewing a subscription that contains an archived service, the popup appearing to ask the user whether to keep the archived product or not didn't remove the archived product when the "Keep the product" checkbox is unchecked Steps to reproduce: 1) Install sale_subscription Module 2) Create a Product and check "Subscription Product" 3) Create a Subscription with at least 1 of that product 4) Save, go to the product and Archive it 5) Go back to the subsc
Original PR description
… when renewing Issue : When renewing a subscription that contains an archived service, the popup appearing to ask the user whether to keep the archived product or not didn't remove the archived…
… when renewing Issue : When renewing a subscription that contains an archived service, the popup appearing to ask the user whether to keep the archived product or not didn't remove the archived product when the "Keep the product" checkbox is unchecked Steps to reproduce: 1) Install sale_subscription Module 2) Create a Product and check "Subscription Product" 3) Create a Subscription with at least 1 of that product 4) Save, go to the product and Archive it 5) Go back to the subscription and renew it (Renewal quotation) 6) The popup appears, uncheck "Keep the product" 7) Click on the button "Renew & View Quotation" -> Bug, the line of the archived product hasn't been removed Why is that a bug: The business flows give us the option of not keeping the archived product (and replace it with another product), but when we didn't want to keep the product, it wasn't correctly removed. The problem lied in the fact that the product_id of the wizard linked to that view didn't have its field product_id (it was always 0) set correctly since it was missing from the view Side Note: This commit also fixes a bug when Units of Measures was enabled. When trying to save a line, it wasn't possible since UoM which is required was missing, but it was also readonly, so it didn't show in red when trying to save opw-2581605 Forward-Port-Of: odoo/enterprise#20159
Apparently _get_lines can not handle those options on its own. Forward-Port-Of: odoo/enterprise#20052
Original PR description
Apparently _get_lines can not handle those options on its own. Forward-Port-Of: odoo/enterprise#20052