Thursday, September 22, 2022
41 changes · master
Enhancements to existing features
This update improves Odoo spreadsheets with better find-and-replace behavior, clearer formatting reset, more reliable selection and paste handling, and Excel/Google Sheets-compatible formula checks. Users also gain text wrapping in cells and clearer errors for unsupported formulas, making spreadsheet work more predictable and easier to manage.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/dbe36052 [FIX] find_and_replace: select first match automatically https://github.com/odoo/o-spreadsheet/commit/28476c9d [FIX] ClearFormat: clear format actually clears the format https://github.com/odoo/o-spreadsheet/commit/b4dbb747 [FIX] grid: handle selectionInput modes on click events https://github.com/odoo/o-spreadsheet/commit/179ff66d [IMP] functions: make ISTEXT/ISNUMBER/... compatible with Excel/GSheet https://github.com/odoo/o-spreadsheet/commit/ce32cd66 [FIX] scorecard: display percentage between 0 and 0 https://github.com/odoo/o-spreadsheet/commit/44266c5b [IMP] style: add text cell wrapping option https://github.com/odoo/o-spreadsheet/commit/9b08e99a [REF] renderer: extract font size computation https://github.com/odoo/o-spreadsheet/commit/ebff300d [IMP] clipboard: paste on merge consistency https://github.com/odoo/o-spreadsheet/commit/246de550 [IMP] evaluation: add error "unknown function"
Payment lists can now be searched directly by the payment amount in company currency. This makes it easier for accounting users to quickly find specific payments without relying on other details like customer, vendor, or reference.
Original PR description
It should be possible to quickly search by `amount_company_currency_signed` in `account.payment` view. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Odoo can now support Facebook webhook communication by allowing one endpoint to handle both regular web requests and JSON events. Discuss also gains better Facebook channel presentation through customizable chat window headers, while anonymous visitor names are shared more broadly across mail-based channels.
Original PR description
Purpose ======= Be able to send/receive Facebook messages in Discuss. Specifications ============== Routing type ---------------- Actually, there are only 2 routing types, `http` and `json`. But, in…
Purpose ======= Be able to send/receive Facebook messages in Discuss. Specifications ============== Routing type ---------------- Actually, there are only 2 routing types, `http` and `json`. But, in some case, we might need to manage standard HTTP requests and JSON requests, on the same endpoint. That's the case with the Facebook webhook. They first make a simple HTTP request to check if the endpoint is a valid webhook endpoint and then, the events are sent in a JSON request. That's why we need a new routing type. Customize the header of the thread window --------------------------- We want to be able to customize the thread window, so we can have a blue header for the Facebook channel. `anonymous_name` field ------------------------ In livechat, we have an "anonymous name" on the mail channel. This field is useful because we do not have one partner per visitor. In social, we also need this field (as we do not have a partner per Facebook user) so we move it to mail. Task-2124457 See odoo/enterprise/pull/8481 See odoo/iap-apps/pull/166 See odoo/upgrade/pull/956
This update improves Odoo spreadsheets by supporting function names with underscores and translating more chart text, making spreadsheet content clearer for users in different languages. It also fixes selection behavior when deleting or switching sheets, reducing confusion and preventing unexpected cursor changes.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/b29eeea3 [IMP] function: allow function name with underscore https://github.com/odoo/o-spreadsheet/commit/33411f3e [IMP] chart: translate title and baselineDescr https://github.com/odoo/o-spreadsheet/commit/9c22f40a [FIX] selection: do not reset selection on sheet deletion https://github.com/odoo/o-spreadsheet/commit/d891ac1c [FIX] Selection: do not set current sheet selection to other sheets
Odoo now avoids sending create and edit permission markers for views where records cannot be edited anyway. This slightly reduces the data sent to the browser and keeps view definitions cleaner without changing what users can do.
Original PR description
Setting the attributes `can_create` and `can_write` in views which are not editable is useless as you cannot edit the record in these views. This allow to gain some KB when serving the view to the…
Setting the attributes `can_create` and `can_write` in views which are not editable is useless as you cannot edit the record in these views.
This allow to gain some KB when serving the view to the web client, as well as making the view cleaner.
e.g. the graph view in the CRM > My Pipeline menu
Before:
```xml
<graph string="Opportunities" sample="1">
<field name="stage_id" can_create="true" can_write="true"/>
<field name="user_id" on_change="1" can_create="true" can_write="true"/>
<field name="color" modifiers="{"invisible": true}"/>
</graph>
```
After:
```xml
<graph string="Opportunities" sample="1">
<field name="stage_id"/>
<field name="user_id" on_change="1"/>
<field name="color" modifiers="{"invisible": true}"/>
</graph>
```
This revision takes the opportunity to port the `editable` concept from the server to the web client MockServer,
in order to be able to test the removal of these attributes from the views in the QUnit tests.
The `_editableNode` JS function added here is the translation of the existing `def _editable_node` method in `addons/base/models/ir_ui_view.py`
https://github.com/odoo/odoo/blob/f5edde3624f4fe40f87cc7fed7dcfc4bbce1f19f/odoo/addons/base/models/ir_ui_view.py#L1282-L1301The spreadsheet component has been updated with small usability improvements and fixes. Users benefit from better handling of sheet selections, support for more function naming styles, and translated chart labels where applicable.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/b29eeea3 [IMP] function: allow function name with underscore https://github.com/odoo/o-spreadsheet/commit/33411f3e [IMP] chart: translate title and baselineDescr https://github.com/odoo/o-spreadsheet/commit/9c22f40a [FIX] selection: do not reset selection on sheet deletion https://github.com/odoo/o-spreadsheet/commit/d891ac1c [FIX] Selection: do not set current sheet selection to other sheets
The live chat chatbot script form has been updated so steps are saved and ordered more reliably while users configure them. This helps users build chatbot flows where later steps depend on earlier ones, making setup smoother and less error-prone.
Original PR description
This commit ports the custom implementation of the view form for the chatbot scripts to the new OWL framework. The goal is the same as the base customization, which is mainly to correctly assign a sequence to every step and save the form in-between every new steps. This is necessary to allow the end-user to easily configure its script, since steps can depend on each other. More details in https://github.com/odoo/odoo/pull/84000 Task-2981969
This update improves the Calendar experience, including attendee-focused calendar views, mobile behavior, recurring event handling, and interface cleanup. These changes should make scheduling and managing meetings more reliable and easier to use across devices.
Vendor bill processing now also considers the taxes configured on accounts when selecting taxes for invoice lines. This helps accounting teams get more accurate tax suggestions after the predictive bills functionality was merged into the accounting app.
Original PR description
The account_predictive_bills module is merged into account_accountant. With this change, we want to take account taxes into consideration when choosing the account move line tax.
The Helpdesk ticket screen has been adjusted so stage indicators and form content align correctly. This makes tickets easier to read and work with, reducing visual confusion for support teams.
Original PR description
The purpose of the commit is to improve the UI of the ticket stage bullets and ticket form view which was misaligned. task-2926348
Resolved issues and error corrections
This fixes issues in Odoo Time Off that could block some managers from creating users and could cause the leave statistics widget to crash when no department was set. The changes make user management and leave request views more reliable in common HR workflows.
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
Miscellaneous changes
Task-2985304 Enterprise: https://github.com/odoo/enterprise/pull/31552 Forward-Port-Of: odoo/odoo#100667
Original PR description
Task-2985304 Enterprise: https://github.com/odoo/enterprise/pull/31552 Forward-Port-Of: odoo/odoo#100667
This fixes a display issue where the “add new column” area in Kanban boards could overlap with other text when horizontal scrolling was present. Users adding columns in project task boards and similar Kanban views now see clearer, properly spaced text.
Original PR description
Before this commit: In project task texts are not proper view when added a new column . After this commit: In project task texts are proper view when added a new column . Task_id: 2871552
The timesheet settings page now hides a field that should not be shown and removes duplicated wording in the description. This makes the settings screen clearer and less confusing for users configuring timesheets.
Original PR description
1 : Field was visible which needed to be invisible
Now the field is not visible
2 : Earlier the line in the description was repeating
Now line is not repeated in description
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prThe project profitability panel now shows margin as a positive value when appropriate. This avoids misleading negative profitability figures and helps users read project financial status more accurately.
Original PR description
Before this commit, In Project > Set Status >Right Panel in Profitability the Margin calculation was shown negative After this commit, Margin calculation is shown Positive task-2979890 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 fix prevents irrelevant fields from appearing in specific configuration screens. Planning materials no longer show working time when flexible hours are enabled, and field service project creation no longer shows the sale order item field when it should be hidden.
Original PR description
1) Before this commit, In Planning > Configuration > Materials list view while enabling flexible hours field Working time field was displayed After this commit, In Planning > Configuration > Materials list view while enabling flexible hours field Working time field was NOT displayed 2) Before this commit, while creating fsm project we were able to see sale order item After this commit, while creating fsm project sale order item is hide task-2979890
Shared read-only field service projects can now open task links without triggering an error related to sales order access. The change checks whether the viewer is allowed to read the related sales order before searching it, preventing unnecessary failures for shared project users.
Original PR description
Before this commit, When we shared the project in read-only access that time access error was raised when we try to open the task by shared link due to invalid access on sale.order. So in this commit, check the read access for sale.order, and if the public user has the right to read the sale order then allow to search on order. task-2889455
This fixes an issue that could prevent IoT-related reports from rendering as expected. Businesses using connected IoT devices should see more reliable report output with no workflow changes required.
Original PR description
Use 'iot/device_controller' instead of 'ComponentAdapter' (from web.OwlCompatibility) To instantiate the 'iotDevice' device
This commit avoid to have a dict by reference that will be global. Now get_default_session return a new dict each time for the context key. From this way the session.context['lang'] is not shared between several users on the same worker. To reproduce the bug, restart the server with 2 workers, make request in lang A on these 2 workers. DEFAULT_SESSION['context']['lang'] now is set to this lang A. Now, make request to an url without lang in path and without cookies and withtout session,
Original PR description
This commit avoid to have a dict by reference that will be global. Now get_default_session return a new dict each time for the context key. From this way the session.context['lang'] is not shared between several users on the same worker. To reproduce the bug, restart the server with 2 workers, make request in lang A on these 2 workers. DEFAULT_SESSION['context']['lang'] now is set to this lang A. Now, make request to an url without lang in path and without cookies and withtout session, you should be redirected to lang B (preferred lang from the request header) but you will be redirect to lang A due to the dict session.context that is shared for the worker... When we initialize the new Session, we get the wrong lang A as value for context.lang, so we don't recompute the expected lang for the end user. Forward-Port-Of: odoo/odoo#100102
Commit [1] changed the way QWeb templates are loaded for public widgets, removing the xmlDependencies attribute. Most of the public widgets' templates were therefore defined in assets_wysiwyg. This is wrong however, as those assets are only loaded in specific situations. This commit removes the templates definitions from the assets_wysiwyg into specific records defined alongside the snippet templates. Steps to reproduce: - Drop the "Image Wall" snippet - Save - Visit as a public user
Original PR description
Commit [1] changed the way QWeb templates are loaded for public widgets, removing the xmlDependencies attribute. Most of the public widgets' templates were therefore defined in assets_wysiwyg. This is wrong however, as those assets are only loaded in specific situations. This commit removes the templates definitions from the assets_wysiwyg into specific records defined alongside the snippet templates. Steps to reproduce: - Drop the "Image Wall" snippet - Save - Visit as a public user (logged out) - Click on an image from the image wall - TB [1]: https://github.com/odoo/odoo/commit/f05adbc8b59c67cbec4847687a1ee07e620c2a7a task-2984724 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#100272
Forward-Port-Of: odoo/odoo#100471
Original PR description
Forward-Port-Of: odoo/odoo#100471
Task-2991668 Forward-Port-Of: odoo/odoo#100720
Original PR description
Task-2991668 Forward-Port-Of: odoo/odoo#100720
*: hr, im_livechat, snailmail, website_livechat This commit introduces the public livechat bundle, which contains the models that are specifically used in public livechat. Doing so reduces the amount of model and data in frontend and external lib, which makes the page load faster. Task-2990182 Task-2990191 Enterprise: https://github.com/odoo/enterprise/pull/31559 Forward-Port-Of: odoo/odoo#100683
Original PR description
*: hr, im_livechat, snailmail, website_livechat This commit introduces the public livechat bundle, which contains the models that are specifically used in public livechat. Doing so reduces the amount of model and data in frontend and external lib, which makes the page load faster. Task-2990182 Task-2990191 Enterprise: https://github.com/odoo/enterprise/pull/31559 Forward-Port-Of: odoo/odoo#100683
No need for the view. Replace with simple button widget. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#100657
Original PR description
No need for the view. Replace with simple button widget. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#100657
Before this PR, the `_mockIrWebsocket__updatePresence` route of the bus mock server could lead to errors when no im status ids were provided. This commit fixes this issue by ensuring im status ids were passed before calling `_mockIrWebsocket__getImStatus` method. Moreover, old longpolling routes were still present on the bus mock server. This commit removes these routes. Forward-Port-Of: odoo/odoo#100651
Original PR description
Before this PR, the `_mockIrWebsocket__updatePresence` route of the bus mock server could lead to errors when no im status ids were provided. This commit fixes this issue by ensuring im status ids were passed before calling `_mockIrWebsocket__getImStatus` method. Moreover, old longpolling routes were still present on the bus mock server. This commit removes these routes. Forward-Port-Of: odoo/odoo#100651
Suppose a product P with an available quantity equal to 1. Suppose a user writes on an existing SML for that product and sets the reserved quantity to 2. When writing on such a field, `StockMoveLine.write` tries to reserve the same quantity on the quants. If it fails (which would be the case here because there is only one P available), the reserved quantity of the SML is reset to 0 (and so does the reserved quantity of the quant). https://github.com/odoo/odoo/blob/b8423ba218e0736593c3329d
Original PR description
Suppose a product P with an available quantity equal to 1. Suppose a user writes on an existing SML for that product and sets the reserved quantity to 2. When writing on such a field,…
Suppose a product P with an available quantity equal to 1. Suppose a user writes on an existing SML for that product and sets the reserved quantity to 2. When writing on such a field, `StockMoveLine.write` tries to reserve the same quantity on the quants. If it fails (which would be the case here because there is only one P available), the reserved quantity of the SML is reset to 0 (and so does the reserved quantity of the quant). https://github.com/odoo/odoo/blob/b8423ba218e0736593c3329d7438ca09112a735f/addons/stock/models/stock_move_line.py#L301-L313 However, there is an issue: the incorrect reserved quantity is still in `vals`. As a result, later on in the method, this incorrect value is written on the SML: https://github.com/odoo/odoo/blob/b8423ba218e0736593c3329d7438ca09112a735f/addons/stock/models/stock_move_line.py#L362 This creates an inconsistency: a SML affirms that 2 x P are reserved while the reserved quantity of the quant is 0. Moreover, when marking the SML as done, it will lead to a "unreserve more than..." issue. OPW-2936689 Forward-Port-Of: odoo/odoo#100617 Forward-Port-Of: odoo/odoo#100136
Since this commit, https://github.com/odoo/odoo/commit/32ada4a415a14052d780f351edb82a0011561451, when adding a new rate from the tree view, if the `name` field is emptied (despite having a default value), the `_onchange_rate_warning()` method will generate a traceback because it will call `_get_latest_rate()` that relies on the `name` field to order the company rates. Steps to reproduce: - Go to the Accounting App. - Click on Configuration > Currencies. - Select any currency and click on
Original PR description
Since this commit, https://github.com/odoo/odoo/commit/32ada4a415a14052d780f351edb82a0011561451, when adding a new rate from the tree view, if the `name` field is emptied (despite having a default value), the `_onchange_rate_warning()` method will generate a traceback because it will call `_get_latest_rate()` that relies on the `name` field to order the company rates. Steps to reproduce: - Go to the Accounting App. - Click on Configuration > Currencies. - Select any currency and click on "Add a line" in the Rates tab. - Remove the default value from the "Date" field and leave it empty. - Now try to change "Unit per USD". A traceback should be triggered. New behavior: With this fix, an error message will now invite the user to set the `name` (a.k.a. 'Date') correctly. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#100611 Forward-Port-Of: odoo/odoo#100503
Since commit [1], we use base.main_company as default value for the address of the admin employee. This is not correct as base.main_company is referring to res.company model while address_id is expecting a res.partner id. This works in most default situations as id = 1 is the same for both res.company and res.partner, but not anymore in case we have merged the initial partner with another one. We should use base.main_partner instead of base.main_company. [1]:https://github.com/odoo/odoo
Original PR description
Since commit [1], we use base.main_company as default value for the address of the admin employee. This is not correct as base.main_company is referring to res.company model while address_id is expecting a res.partner id. This works in most default situations as id = 1 is the same for both res.company and res.partner, but not anymore in case we have merged the initial partner with another one. We should use base.main_partner instead of base.main_company. [1]:https://github.com/odoo/odoo/commit/c0ca736193df42814389151956eb07c28c77d18e Description of the issue/feature this PR addresses: opw-2988416 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#100785
[IMP] pos_loyalty: loyalty, gift card and ewallet programs * Allow multiple loyalty programs. * Improve gift card workflow: https://app.excalidraw.com/l/65VNwvy7c4X/1Xt93llULvo * Integration with the ewallet programs: https://app.excalidraw.com/l/65VNwvy7c4X/4B9AEOSbaku TASK-IDS: 2959620, 2959661 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#99559
Original PR description
[IMP] pos_loyalty: loyalty, gift card and ewallet programs * Allow multiple loyalty programs. * Improve gift card workflow: https://app.excalidraw.com/l/65VNwvy7c4X/1Xt93llULvo * Integration with the ewallet programs: https://app.excalidraw.com/l/65VNwvy7c4X/4B9AEOSbaku TASK-IDS: 2959620, 2959661 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#99559
This reverts commit https://github.com/odoo/odoo/commit/51939d09f84579f61f1ff77aacd754beba036dc2. This commit was added to no longer have to compensate the scrollbar width to display the fixed header. To do this, this commit had changed the 'fixed' CSS position of the affixed header to 'sticky'. But this introduced several issues with header effects (the main problem with the "sticky" position is that Chrome and Firefox don't handle it in exactly the same way.). For his reasons, we decid
Original PR description
This reverts commit https://github.com/odoo/odoo/commit/51939d09f84579f61f1ff77aacd754beba036dc2. This commit was added to no longer have to compensate the scrollbar width to display the fixed header. To do this, this commit had changed the 'fixed' CSS position of the affixed header to 'sticky'. But this introduced several issues with header effects (the main problem with the "sticky" position is that Chrome and Firefox don't handle it in exactly the same way.). For his reasons, we decided to revert the commit and get back to a situation where everything works correctly. task-2985702 Forward-Port-Of: odoo/odoo#100567
The `bus_service` uses the `dbuuid` key from session in order to know when to drop the last notification id from the local storage: when the db changes. The issue is that public pages don't fetch the session, this results in undefined being added into the local storage. The multi tab service speculates on the fact that the value stored will always be json parsable. This commit fixes the issue by taking into account the fact that session dbuuid can be undefined. Moreover, the multi tab serv
Original PR description
The `bus_service` uses the `dbuuid` key from session in order to know when to drop the last notification id from the local storage: when the db changes. The issue is that public pages don't fetch the session, this results in undefined being added into the local storage. The multi tab service speculates on the fact that the value stored will always be json parsable. This commit fixes the issue by taking into account the fact that session dbuuid can be undefined. Moreover, the multi tab service has been updated to return the raw value if it is not parsable. Forward-Port-Of: odoo/odoo#100652
The new field can be used in wowl2 views. The old field has been kept due to being used in views that still need to be migrated. Forward-Port-Of: odoo/enterprise#31549
Original PR description
The new field can be used in wowl2 views. The old field has been kept due to being used in views that still need to be migrated. Forward-Port-Of: odoo/enterprise#31549
### Steps to reproduce - install the module called 'Electronic invoicing for Colombia with Carvajal' (l10n_co_edi). This will also create a new Colombian company. - switch to the company called 'CO Company' - create a contact and set it's country, state, and zip. Let's call this contact P. - create another contact, we'll call this one C. Make this contact a delivery address of P - give C a different state and zip than P. - create a SO with C as the customer - invoice the SO - generate th
Original PR description
### Steps to reproduce - install the module called 'Electronic invoicing for Colombia with Carvajal' (l10n_co_edi). This will also create a new Colombian company. - switch to the company called 'CO Company' - create a contact and set it's country, state, and zip. Let's call this contact P. - create another contact, we'll call this one C. Make this contact a delivery address of P - give C a different state and zip than P. - create a SO with C as the customer - invoice the SO - generate the (Columbian) electronic invoice (this requires Carvajal credentials) The issue is that the generated e-invoice contains the wrong delivery address. P's address in used instead of C's. opw-2948115 Forward-Port-Of: odoo/enterprise#31486 Forward-Port-Of: odoo/enterprise#30819 Forward-Port-Of: odoo/enterprise#31533 Forward-Port-Of: odoo/enterprise#31508
Since v16, selecting a reconciliation model in the new reco widget would undo the previous selection. That was because of an uncomplete check at the creation of the reco model lines. Took the opportunity to fix a few display issues and some unacceptable forgotten indentation error definitely not from las (no shame). task-2988109 Forward-Port-Of: odoo/enterprise#31579
Original PR description
Since v16, selecting a reconciliation model in the new reco widget would undo the previous selection. That was because of an uncomplete check at the creation of the reco model lines. Took the opportunity to fix a few display issues and some unacceptable forgotten indentation error definitely not from las (no shame). task-2988109 Forward-Port-Of: odoo/enterprise#31579
On some macOS systems running some builds of lxml (need further investigation for specific versions and OS), lxml parser is not able to decode certain emojis. This could prevent someone to install the knowledge module on such systems. This fix removes every emojis stored in an xml file so that anyone can install Knowledge. This commit should be reverted when a better solution is found. Task-2989117 Forward-Port-Of: odoo/enterprise#31532
Original PR description
On some macOS systems running some builds of lxml (need further investigation for specific versions and OS), lxml parser is not able to decode certain emojis. This could prevent someone to install the knowledge module on such systems. This fix removes every emojis stored in an xml file so that anyone can install Knowledge. This commit should be reverted when a better solution is found. Task-2989117 Forward-Port-Of: odoo/enterprise#31532
The itsme team asked for some rewording/redesigining in some parts of the module. task-2969605 Forward-Port-Of: odoo/enterprise#31390
Original PR description
The itsme team asked for some rewording/redesigining in some parts of the module. task-2969605 Forward-Port-Of: odoo/enterprise#31390
*: documents, knowledge, voip This commit introduces the public livechat bundle, which contains the models that are specifically used in public livechat. Doing so reduces the amount of model and data in frontend and external lib, which makes the page load faster. Task-2990182 Task-2990191 Community: https://github.com/odoo/odoo/pull/100683 Forward-Port-Of: odoo/enterprise#31559
Original PR description
*: documents, knowledge, voip This commit introduces the public livechat bundle, which contains the models that are specifically used in public livechat. Doing so reduces the amount of model and data in frontend and external lib, which makes the page load faster. Task-2990182 Task-2990191 Community: https://github.com/odoo/odoo/pull/100683 Forward-Port-Of: odoo/enterprise#31559
Directly use the employee kanban model instead of redefining our own copy. Forward-Port-Of: odoo/enterprise#31516
Original PR description
Directly use the employee kanban model instead of redefining our own copy. Forward-Port-Of: odoo/enterprise#31516
Migrate json_field and move_line_list to owl Forward-Port-Of: odoo/enterprise#31551
Original PR description
Migrate json_field and move_line_list to owl Forward-Port-Of: odoo/enterprise#31551
The step supposed to wait for the refresh of the report wasn't working well anymore since Reportalypse. The tour failed randomly on runbot. Forward-Port-Of: odoo/enterprise#31555
Original PR description
The step supposed to wait for the refresh of the report wasn't working well anymore since Reportalypse. The tour failed randomly on runbot. Forward-Port-Of: odoo/enterprise#31555
Task-2985304 Community: https://github.com/odoo/odoo/pull/100667 Forward-Port-Of: odoo/enterprise#31552
Original PR description
Task-2985304 Community: https://github.com/odoo/odoo/pull/100667 Forward-Port-Of: odoo/enterprise#31552