Friday, October 8, 2021
37 changes · master
Enhancements to existing features
Website guided tours now mark a text editing instruction as complete as soon as the user clicks the highlighted area. This lets users move through onboarding faster without needing to prepare or enter custom text immediately.
Original PR description
The idea of a text edit step is considered clearly communicated to the end user from the moment the trigger is clicked ( as opposed to the step waiting for actual input from the end user). This way an end user can finish the tour faster without actually having prepared custom text content yet. task-2580338
This update improves how Point of Sale prepares payment statement information during session processing. It makes the underlying payment handling easier to customize while keeping the business workflow unchanged.
Original PR description
Get payment when generating statement values. It allows to override more easily and simplify method signature. @caburj -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change adds a new Mail data field needed for an upcoming reply-to feature. It lays the groundwork during the version freeze so the user interface can be introduced later without requiring another data model change.
Original PR description
Add the field in the freeze for next version, the interface is not fully ready to merge yet but it will be added in https://github.com/odoo/odoo/pull/75849 Part of task-2362251
Odoo’s messaging components were updated to use a cleaner internal browser integration, improving consistency across chat, employee status, calendar activity, and live chat experiences. This is mainly an internal modernization that should make messaging features easier to maintain and more reliable without changing day-to-day workflows.
Sales order quantity decreases now flow through to related delivery and procurement documents, so teams no longer need manual corrections when customers reduce orders. For make-to-order products, unconfirmed purchase requests can also be reduced before they become confirmed purchase orders.
Original PR description
Allows quantity decrease on Sale Orders to be propagated to their related pickings. If the MTO route is used, the decrease can be propagated to a related RFQ if it wasn't confirmed yet. Task-2513592 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: #76752
Resolved issues and error corrections
Point of Sale closing now lets staff enter differences for bank payment methods and records those differences correctly in accounting. This helps businesses reconcile card and bank payments more accurately when closing a sales session.
Original PR description
Forward port of https://github.com/odoo/odoo/pull/77351 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Features or functions removed from Odoo
This update removes obsolete inventory code that was no longer being used. It helps keep the stock module simpler and easier to maintain without changing day-to-day user workflows.
Original PR description
- Remove unused method get_theoretical_quantity - Remove unused args of _get_domain_locations_new and simplify it
Miscellaneous changes
Open the settings and do some changes Click on a button that would make you leave The modal "Would you like to save your changes?" appears Click on save Current behavior: Nothing happens on click Expected behavior: The save button saves the changes -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77839
Original PR description
Open the settings and do some changes
Click on a button that would make you leave
The modal "Would you like to save your changes?" appears
Click on save
Current behavior:
Nothing happens on click
Expected behavior:
The save button saves the changes
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#77839The Field Service kanban view now shows start times and dates using each user's preferred regional format. This avoids confusion for teams that use 24-hour clocks or different date formats.
Original PR description
… card Description of the issue/feature this PR addresses: In the kanban view of industry_fsm, the start time is hardcoded in 12 hours format. The start time should be based on the user's time format Current behavior before PR: The start time is displayed in 12 hours format Desired behavior after PR is merged: The start time is displayed in 12 or 24 hours format according to the user's preferences. The date is displayed according to user's preferences task-2634340
Activities created from a document's chatter now appear right away without requiring users to refresh the page. This makes follow-up tasks more visible and reduces confusion when tracking document-related work.
Original PR description
PURPOSE: when creating an activity from the chatter for a document it is not showing activity without refreshing the page. SPECIFICATIONS: Activity should be shown directly after creating it without refreshing the page. LINKS: Task-2647359
This update increases the allowed runtime for a Studio rename test that could occasionally fail during periods of heavy system load. It helps reduce false test failures, improving development and release stability without changing user-facing behavior.
Original PR description
From time to time, under heavy load, the test_rename exceed the timeout. Manual forward-port of odoo/enterprise#21393 cherry-pick of 9a15f25dca
This commit fixes visual issues (pixel gap between shapes and bugs in colors) in some background shapes. task-2547435 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#76700
Original PR description
This commit fixes visual issues (pixel gap between shapes and bugs in colors) in some background shapes. task-2547435 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#76700
Issue: **Sometimes**, when changing the Maximum (`seats_max`) on one of the tickets of an event, it triggered a recompute for the other tickets Steps to reproduce : 1) Install Events 2) Settings > Event > Enable "Tickets" 3) Create an event template (or use Sell Online default one) with - Check "Ticketing" and set the line price to 0 4) Create an event : - with that template - and Autoconfirm checked 5) Add a line for the Tickets: - name: VIP - price: 10 6) Save th
Original PR description
Issue: **Sometimes**, when changing the Maximum (`seats_max`) on one of the tickets of an event, it triggered a recompute for the other tickets Steps to reproduce : 1) Install Events 2) Settings >…
Issue: **Sometimes**, when changing the Maximum (`seats_max`) on one of the tickets of an event, it triggered a recompute for the other tickets Steps to reproduce : 1) Install Events 2) Settings > Event > Enable "Tickets" 3) Create an event template (or use Sell Online default one) with - Check "Ticketing" and set the line price to 0 4) Create an event : - with that template - and Autoconfirm checked 5) Add a line for the Tickets: - name: VIP - price: 10 6) Save the event 7) Create two attendees for the event, one for each Event Ticket (`event_ticket_id`) and confirm them (on the form, not Confirm Attendee) 8) Change the Maximum (`seats_max`) of one ticket and save -> the Confirmed (`seats_reserved`) will be recomputed but the confirmed for the other ticket will increase as well Side-Note: I haven't been able to find a deterministic way to reproduce the bug but it seems that the bug appear the most when doing all the steps at once, and trying to not log out or refresh the page. Also it works best on a runbot or at least with runbot data. Without my modification, the new test passes on my local odoo server, but fails on a dump of a runbot on my computer, adding my modification makes it work on either case Why is that a bug: The recomputation seems to fail for some reason, we are setting all the event/ticket in self to 0, but only update the value of those by fetching a SQL query so there might be a desync there opw-2642555 Forward-Port-Of: odoo/odoo#77670 Forward-Port-Of: odoo/odoo#76492
Forward-Port-Of: odoo/odoo#78005
Original PR description
Forward-Port-Of: odoo/odoo#78005
(No need to forward port to master.) -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77892
Original PR description
(No need to forward port to master.) -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77892
Allows quantity decrease on Sale Orders to be propagated to their related pickings. If the MTO route is used, the decrease can be propagated to a related RFQ if it wasn't confirmed yet. Task-2513592 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#76752
Original PR description
Allows quantity decrease on Sale Orders to be propagated to their related pickings. If the MTO route is used, the decrease can be propagated to a related RFQ if it wasn't confirmed yet. Task-2513592 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#76752
PURPOSE In the new design merged along the wowl framework, the pager buttons are smaller and harder to hit. The purpose of this task is to increase the size of the pager buttons to ease navigation. SPEC remove the px-2 class from the pager buttons TASK 2610578 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74904
Original PR description
PURPOSE In the new design merged along the wowl framework, the pager buttons are smaller and harder to hit. The purpose of this task is to increase the size of the pager buttons to ease navigation. SPEC remove the px-2 class from the pager buttons TASK 2610578 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#74904
Before this commit, the server could return outdated information to the client about the state of their own rtc session. The server should not return information about the client's own rtc session as the source of truth is the client-side state. A case in which this was causing an issue was when a user toggled their mute state right before their client pinged the server and received outdated session information before their most recent state could be sent to the server. This commit
Original PR description
Before this commit, the server could return outdated information to the client about the state of their own rtc session. The server should not return information about the client's own rtc session as the source of truth is the client-side state. A case in which this was causing an issue was when a user toggled their mute state right before their client pinged the server and received outdated session information before their most recent state could be sent to the server. This commit fixes this issue. Forward-Port-Of: odoo/odoo#77967
Minor changes: - properly discard the rename when exiting an empty input - uniformize case: TopBar -> Topbar - update documentation - move avatarUrl from component to model Forward-Port-Of: odoo/odoo#77984
Original PR description
Minor changes: - properly discard the rename when exiting an empty input - uniformize case: TopBar -> Topbar - update documentation - move avatarUrl from component to model Forward-Port-Of: odoo/odoo#77984
Bug === Since fe8c5b9b01c01ddb7cc516dfd1ad97bf537db655 , if you have a team with set to `assignment_max` and you try to automatically assign the leads an error is raised. Technical: in `_allocate_leads` we skip a team if `assignment_max` is Falsy. So when we prepare the values for the notifications, the key might not be present in the dict an error is raised. Task-2658696 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odo
Original PR description
Bug === Since fe8c5b9b01c01ddb7cc516dfd1ad97bf537db655 , if you have a team with set to `assignment_max` and you try to automatically assign the leads an error is raised. Technical: in `_allocate_leads` we skip a team if `assignment_max` is Falsy. So when we prepare the values for the notifications, the key might not be present in the dict an error is raised. Task-2658696 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77847
PURPOSE Show list selection box after all list header buttons. SPEC List selection box should displayed after all list header buttons. TASK 2628038 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#75468
Original PR description
PURPOSE Show list selection box after all list header buttons. SPEC List selection box should displayed after all list header buttons. TASK 2628038 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#75468
Purpose of the commit is to remove traceback while accessing projects menu (open project module) after disable timesheet from project or uninstall hr_timesheet id:2629395 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#76413
Original PR description
Purpose of the commit is to remove traceback while accessing projects menu (open project module) after disable timesheet from project or uninstall hr_timesheet id:2629395 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#76413
Before this commit, there were some usages of RTCPeerConnection.connectionState which is not available on some browsers, including Firefox. This commit fixes this issue and make it so that we only use RTCPeerConnection.iceConnectionState instead. Forward-Port-Of: odoo/odoo#77890
Original PR description
Before this commit, there were some usages of RTCPeerConnection.connectionState which is not available on some browsers, including Firefox. This commit fixes this issue and make it so that we only use RTCPeerConnection.iceConnectionState instead. Forward-Port-Of: odoo/odoo#77890
Before this commit, the error 500 page would always shows the full traceback even if it is supposed to only show it in debug mode (or if editable). That behavior was probably broken by the debug refactoring [1], which introduced side effect with [2] (see template `http_error` which was moved with [3]). [1]: d7cd97a [2]: 24a20cd [3]: 423402f Forward-Port-Of: odoo/odoo#77906
Original PR description
Before this commit, the error 500 page would always shows the full traceback even if it is supposed to only show it in debug mode (or if editable). That behavior was probably broken by the debug refactoring [1], which introduced side effect with [2] (see template `http_error` which was moved with [3]). [1]: d7cd97a [2]: 24a20cd [3]: 423402f Forward-Port-Of: odoo/odoo#77906
Issue: When computing the landed cost for a transfer with quantity 0, the validation of the LC wasn't working since there was a quantity 0 Steps to reproduce : Create a PO for some items Confirm, validate the delivery Edit and unlock the delivery, set one quantity to 0, save Create a landed cost for that transfer Compute it Validate -> Traceback Why is that a bug: There should not be a traceback, this is caused by trying to validate a landed cost for a product where there is no qua
Original PR description
Issue: When computing the landed cost for a transfer with quantity 0, the validation of the LC wasn't working since there was a quantity 0 Steps to reproduce : Create a PO for some items Confirm, validate the delivery Edit and unlock the delivery, set one quantity to 0, save Create a landed cost for that transfer Compute it Validate -> Traceback Why is that a bug: There should not be a traceback, this is caused by trying to validate a landed cost for a product where there is no quantity, if there is no quantity, it should be part of the landed cost computation Background: Following the fix recently applied in 14.0 and replicating for 13.0. opw-2599799 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#78041
This commit removes `Add a column` from Grouped Kanban view of Journal Items. Creating new Records from `Add a column` should not be supported from Journal Items and also it is not working for Journal/Account as required fields are not set. (and also gives Traceback) 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
Original PR description
This commit removes `Add a column` from Grouped Kanban view of Journal Items. Creating new Records from `Add a column` should not be supported from Journal Items and also it is not working for Journal/Account as required fields are not set. (and also gives Traceback) 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#77934 Forward-Port-Of: odoo/odoo#77219
With [1], we allowed external assets to be lazy/defer loaded too (especially automatically if part of lazy/defer loaded asset). Those new parameters were not added to the cache invalidation system. [1]: https://github.com/odoo/odoo/commit/8dd71bdc42c8d4ab3373a2a0601c93d1687aabca Forward-Port-Of: odoo/odoo#78059
Original PR description
With [1], we allowed external assets to be lazy/defer loaded too (especially automatically if part of lazy/defer loaded asset). Those new parameters were not added to the cache invalidation system. [1]: https://github.com/odoo/odoo/commit/8dd71bdc42c8d4ab3373a2a0601c93d1687aabca Forward-Port-Of: odoo/odoo#78059
Steps to reproduce the bug: - Create a Product A with Costing Method = FIFO - Create a Product B with Costing Method = FIFO and cost of 10 - Create a BOM of product A > type = Kit - Add product B in bom line, with qty = 1 and UoM = dozen - Add product A in `sale.order` - Confirm order Problem: The cost is 10 rather than 120 (10 * 12 = 120) Solution: The kit cost must be the total cost of the components multiplied by their unit of measure opw-2631487 Co-authored-by: fmdl <flor
Original PR description
Steps to reproduce the bug: - Create a Product A with Costing Method = FIFO - Create a Product B with Costing Method = FIFO and cost of 10 - Create a BOM of product A > type = Kit - Add product B in bom line, with qty = 1 and UoM = dozen - Add product A in `sale.order` - Confirm order Problem: The cost is 10 rather than 120 (10 * 12 = 120) Solution: The kit cost must be the total cost of the components multiplied by their unit of measure opw-2631487 Co-authored-by: fmdl <florent.mirieu@gmail.com> -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#77887 Forward-Port-Of: odoo/odoo#77607
In large database with unique serial number. The index add performance during search of lot. @Whenrow -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#78024
Original PR description
In large database with unique serial number. The index add performance during search of lot. @Whenrow -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#78024
A dependency on python pyopenssl package was added in #61853 and flew under the radar. As this package is pure python, it should not cause any arm. Also, it seems that the gsfonts package is needed on Debian to print things like barcode badges. Forward-Port-Of: odoo/odoo#78010
Original PR description
A dependency on python pyopenssl package was added in #61853 and flew under the radar. As this package is pure python, it should not cause any arm. Also, it seems that the gsfonts package is needed on Debian to print things like barcode badges. Forward-Port-Of: odoo/odoo#78010
On new installations, some odoo SaaS platform code may start studio app creation process when the instance is first opened. This fails in 15.0 => after some code refactoring, the action web_studio.action_web_studio_app_creator only cause a JS error: UncaughtPromiseError > KeyNotFoundError Uncaught Promise > Cannot find action_web_studio_app_creator in this registry! This commit reintroduce the missing code to avoid this issue. note: this commit also remove actions action_we
Original PR description
On new installations, some odoo SaaS platform code may start studio app creation process when the instance is first opened. This fails in 15.0 => after some code refactoring, the action web_studio.action_web_studio_app_creator only cause a JS error: UncaughtPromiseError > KeyNotFoundError Uncaught Promise > Cannot find action_web_studio_app_creator in this registry! This commit reintroduce the missing code to avoid this issue. note: this commit also remove actions action_web_studio_action_editor and action_web_studio_report_editor that are also not working and should never be called from within Odoo. opw-2663459 Forward-Port-Of: odoo/enterprise#21562
The aim of this commit is to allow Odoo to calculate the previous year unallocated earnings in order to get a correct report. Before this commit, the result of the previous year wasn't taken into account which resulted in an unbalanced report. (Nulkontrol != 0) Now, Odoo calculates the current year earnings and all years earnings and deduce the previous year earnings. Also, previous to this commit, the passiv was displayed with negative numbers. It is now displayed with positive num
Original PR description
The aim of this commit is to allow Odoo to calculate the previous year unallocated earnings in order to get a correct report. Before this commit, the result of the previous year wasn't taken into account which resulted in an unbalanced report. (Nulkontrol != 0) Now, Odoo calculates the current year earnings and all years earnings and deduce the previous year earnings. Also, previous to this commit, the passiv was displayed with negative numbers. It is now displayed with positive numbers. Forward-Port-Of: odoo/enterprise#20160
Purpose of the commit is to remove traceback while accessing Detailed Answers Participation, Suggested Values, Questions or Surveys menu of surveys module uninstall hr_appraisal_survey id:2629395 Forward-Port-Of: odoo/enterprise#20807
Original PR description
Purpose of the commit is to remove traceback while accessing Detailed Answers Participation, Suggested Values, Questions or Surveys menu of surveys module uninstall hr_appraisal_survey id:2629395 Forward-Port-Of: odoo/enterprise#20807
When a token is invalid, the error codes 001, 002 or 003 are returned (section 3.5.2, https://www.sii.cl/factura_electronica/factura_mercado/estado_dte.pdf). l10n_cl_verify_dte_status was checking for this after _analyze_sii_result, but _analyze_sii_result itself does not anticipate the values, resulting in it raising an exception and returning None. This means the invalid token doesn't get cleared so retrying the verification will keep failing and only another operation like sending DT
Original PR description
When a token is invalid, the error codes 001, 002 or 003 are returned (section 3.5.2, https://www.sii.cl/factura_electronica/factura_mercado/estado_dte.pdf). l10n_cl_verify_dte_status was checking for this after _analyze_sii_result, but _analyze_sii_result itself does not anticipate the values, resulting in it raising an exception and returning None. This means the invalid token doesn't get cleared so retrying the verification will keep failing and only another operation like sending DTE's to the SII will clear it. This change checks for the token validity before _analyze_sii_result processes the response, preventing that issue. Ticket: 2524452 Forward-Port-Of: odoo/enterprise#21348
Fix a series a bug following the implemetation of a new type of Quality Check that can be traced at the Stock Move Line level (see https://github.com/odoo/enterprise/pull/20102) Task-ID: 2639107 Forward-Port-Of: odoo/enterprise#20695
Original PR description
Fix a series a bug following the implemetation of a new type of Quality Check that can be traced at the Stock Move Line level (see https://github.com/odoo/enterprise/pull/20102) Task-ID: 2639107 Forward-Port-Of: odoo/enterprise#20695
When two users try to add a pivot/list concurrently, the second in list will see his command rejected by the server. Unfortunately when replaying his own command, he will override the datasource created by the first user. This is due to the fact that the datasource addition is handled by a ui plugin and is not adapted on replay. Task 2658973 Forward-Port-Of: odoo/enterprise#21309
Original PR description
When two users try to add a pivot/list concurrently, the second in list will see his command rejected by the server. Unfortunately when replaying his own command, he will override the datasource created by the first user. This is due to the fact that the datasource addition is handled by a ui plugin and is not adapted on replay. Task 2658973 Forward-Port-Of: odoo/enterprise#21309
1. status button show ECOs from all previous BOMs 2. imporve approval message Forward-Port-Of: odoo/enterprise#20709
Original PR description
1. status button show ECOs from all previous BOMs 2. imporve approval message Forward-Port-Of: odoo/enterprise#20709