Thursday, March 28, 2024
30 changes · saas-17.2
Enhancements to existing features
This update adds automated checks for Moroccan tax report exports, covering empty exports, exports with transactions, and both critical and non-critical error cases. These tests help ensure the export process remains reliable and reduce the risk of future regressions.
Original PR description
During this PR: https://github.com/odoo/enterprise/pull/51954 tests were not added directly. This PR will add test for the following: - Simple export with no moves - Simple export with moves - Non critical errors - Critical errors task-3794278
Resolved issues and error corrections
Documentation links across several Odoo Enterprise areas now point to the correct saas-17.2 documentation. This helps users and support teams reach guidance that matches the version they are using, reducing confusion from outdated or mismatched help pages.
Original PR description
See also: - https://github.com/odoo/odoo/pull/159618
Miscellaneous changes
The computed stored field l10n_mx_edi_payment_method_id of account_move in l10n_mx_edi can lead to MemoryErrors during module installation in some large databases. To fix that, this commit first creates the field's column in _auto_init, avoiding the recomputations that overfill the field_cache and lead to MemoryErrors. Then, since inside the field's compute method the field should be set to a specific payment_method defined in the module's data files, change the post_init_hook to set the paym
Original PR description
The computed stored field l10n_mx_edi_payment_method_id of account_move in l10n_mx_edi can lead to MemoryErrors during module installation in some large databases. To fix that, this commit first creates the field's column in _auto_init, avoiding the recomputations that overfill the field_cache and lead to MemoryErrors. Then, since inside the field's compute method the field should be set to a specific payment_method defined in the module's data files, change the post_init_hook to set the payment_method to the correct id in the database after data files loading. I missed it in PR odoo/enterprise#30929 because this field was changed to a computed field starting v15. opw-3018535 Forward-Port-Of: odoo/enterprise#59069 Forward-Port-Of: odoo/enterprise#34974
The property field type selection menu now displays its images correctly in dark mode. This prevents icons from appearing too dark, making the field editing experience clearer and more consistent for users.
Original PR description
In [1], dropdowns were updated and it impacted the properties field edition: - the field type images in dark mode were not properly colored anymore (too dark). This commit fixes the issue by adding a class on the field type selection popover. [1]: https://github.com/odoo/odoo/commit/7b7a2613901de20791d111a8efc8e98c226f39ad task-3834506
The properties field type selector now displays correctly after recent dropdown changes. Popovers no longer appear hidden behind other elements, and icons/images keep the intended size, making property editing clearer for users.
Original PR description
In [1], dropdowns were updated and it impacted the properties field edition: - z-index of the popover opened for the dropdown of a property field type was lower than the element it was opened for, resulting in part of the popover being hidden. - img style (dimensions) was not applied as the dropdown list is now a popover (sibling instead of child), resulting in bigger images. This commit fixes the issue by adding a class on the field type selection popover. [1]: https://github.com/odoo/odoo/commit/7b7a2613901de20791d111a8efc8e98c226f39ad task-3834506
Documentation links across Odoo have been retargeted to the saas-17.2 documentation, helping users land on guidance that matches their software version. This reduces confusion caused by version mismatches when users follow help or setup links from the product.
Original PR description
See also: - https://github.com/odoo/enterprise/pull/59607
Steps to Reproduce: - Set up a website for the helpdesk team. - Navigate to the website. - Observe redirection issues. Issue: - The configured website for the helpdesk team is not redirecting appropriately, leading to navigation issues. Cause: - get_client_action function is not getting the website which is linked with the helpdesk team, that's why it redirects to the default website. Solution: - Override open_website_url in helpdesk_website module and assign correct websi
Original PR description
Steps to Reproduce: - Set up a website for the helpdesk team. - Navigate to the website. - Observe redirection issues. Issue: - The configured website for the helpdesk team is not redirecting appropriately, leading to navigation issues. Cause: - get_client_action function is not getting the website which is linked with the helpdesk team, that's why it redirects to the default website. Solution: - Override open_website_url in helpdesk_website module and assign correct website_id in website_id parameter of get_client_action. task-3607646 Forward-Port-Of: odoo/enterprise#52630
When reserving a serial number on a rental order with pickings activated, Odoo will assign whatever serial number is chosen without checking if there's a quantity available. With this fix, it will check if the chosen serial are available before assigning them. Forward-Port-Of: odoo/enterprise#58968
Original PR description
When reserving a serial number on a rental order with pickings activated, Odoo will assign whatever serial number is chosen without checking if there's a quantity available. With this fix, it will check if the chosen serial are available before assigning them. Forward-Port-Of: odoo/enterprise#58968
This commit fixes the way we filter fields to show in the kanban editor sidebar, under the 'Add' tab. Since this view don't render what's included before the <templates> node from the xmlDoc. In other types of view, we can easily toggle the 'Show invisible' elements to display items that are considered being present in the view, but not in Kanban when they add items before the kanban card template. A test has been added too. task-3647045 Forward-Port-Of: odoo/enterprise#58911 Forward-P
Original PR description
This commit fixes the way we filter fields to show in the kanban editor sidebar, under the 'Add' tab. Since this view don't render what's included before the <templates> node from the xmlDoc. In other types of view, we can easily toggle the 'Show invisible' elements to display items that are considered being present in the view, but not in Kanban when they add items before the kanban card template. A test has been added too. task-3647045 Forward-Port-Of: odoo/enterprise#58911 Forward-Port-Of: odoo/enterprise#57322
This PR addresses an issue with the Journal Report where columns positioned after 'additional_col_1' or 'additional_col_2' were not being displayed. Furthermore, in databases migrated to version 17.0, a new record 'invoice_date' is inserted into the account_report_column table, but the corresponding 'Invoice Date' column is not visible in the journal report. ### Current situation: account_report_column ``` aksi_test=# select id, name, sequence , report_id, expression_label from account_rep
Original PR description
This PR addresses an issue with the Journal Report where columns positioned after 'additional_col_1' or 'additional_col_2' were not being displayed. Furthermore, in databases migrated to version…
This PR addresses an issue with the Journal Report where columns positioned after 'additional_col_1' or 'additional_col_2' were not being displayed. Furthermore, in databases migrated to version 17.0, a new record 'invoice_date' is inserted into the account_report_column table, but the corresponding 'Invoice Date' column is not visible in the journal report.
### Current situation:
account_report_column
```
aksi_test=# select id, name, sequence , report_id, expression_label from account_report_column where report_id = 17 order by id;
id | name | sequence | report_id | expression_label
----+---------------------------+----------+-----------+------------------
63 | {"en_US": "Account"} | | 17 | account
64 | {"en_US": "Label"} | | 17 | label
65 | {"en_US": "Debit"} | | 17 | debit
66 | {"en_US": "Credit"} | | 17 | credit
67 | {"en_US": ""} | | 17 | additional_col_1
68 | {"en_US": ""} | | 17 | additional_col_2
85 | {"en_US": "Invoice Date"} | | 17 | invoice_date
(7 rows)
```
### After Fix:
Journal Report

Forward-Port-Of: odoo/enterprise#58858Purpose ======= Speed up the time taken to compute the available slots for resources in the front-end. Specifications ============== While waiting for a slot computation improvement, reducing the time taken to compute the available slots for large number of people. Changing the table booking max schedule days from 60 to 14. related: https://github.com/odoo/enterprise/pull/59101 Task-3826475 Forward-Port-Of: odoo/enterprise#59361
Original PR description
Purpose ======= Speed up the time taken to compute the available slots for resources in the front-end. Specifications ============== While waiting for a slot computation improvement, reducing the time taken to compute the available slots for large number of people. Changing the table booking max schedule days from 60 to 14. related: https://github.com/odoo/enterprise/pull/59101 Task-3826475 Forward-Port-Of: odoo/enterprise#59361
Before this fix, errors occurred in certain sections of the sales subscription dashboard when attempting to load it without demo data. This PR resolves the problem by incorporating IFERROR into the formulas to leave them empty in case of errors. Task ID: 3754211 Forward-Port-Of: odoo/enterprise#59510
Original PR description
Before this fix, errors occurred in certain sections of the sales subscription dashboard when attempting to load it without demo data. This PR resolves the problem by incorporating IFERROR into the formulas to leave them empty in case of errors. Task ID: 3754211 Forward-Port-Of: odoo/enterprise#59510
Before this commit sol field wasn't editable when user don't have any sales access and it was editable for timesheet page and project form view. This commit make SOL field in task form editable to be consistant with project form and timesheet page of tast form. task-3764793 Forward-Port-Of: odoo/odoo#159055 Forward-Port-Of: odoo/odoo#155339
Original PR description
Before this commit sol field wasn't editable when user don't have any sales access and it was editable for timesheet page and project form view. This commit make SOL field in task form editable to be consistant with project form and timesheet page of tast form. task-3764793 Forward-Port-Of: odoo/odoo#159055 Forward-Port-Of: odoo/odoo#155339
Before this commit: =================== In coins/bills pop pup, if user adds some coin and removes quantity from any of the fields (blank space) then it's showing `NAN` and not calculating the other inputted value which is completely annoying. After this commit: ================== If user removes quantity from any of the fields (blank space) then the input will count `0` in the backend and calculate accordingly. task - 3728728 Forward-Port-Of: odoo/odoo#153770
Original PR description
Before this commit: =================== In coins/bills pop pup, if user adds some coin and removes quantity from any of the fields (blank space) then it's showing `NAN` and not calculating the other inputted value which is completely annoying. After this commit: ================== If user removes quantity from any of the fields (blank space) then the input will count `0` in the backend and calculate accordingly. task - 3728728 Forward-Port-Of: odoo/odoo#153770
Fix the property mobile display: - Set the popup in fullscreen. - The draggable feature is disabled. - Replacing the move up/move down property arrows in the popup by a back arrow so that the fullscreen popup can be closed. - Removing the min-width on the property popover to prevent the popup from going out of the screen. - Edit button is now always visible as hovering on it is not possible on mobile. Task-3635554 --- I confirm I have signed the CLA and read the PR guidelines at
Original PR description
Fix the property mobile display: - Set the popup in fullscreen. - The draggable feature is disabled. - Replacing the move up/move down property arrows in the popup by a back arrow so that the fullscreen popup can be closed. - Removing the min-width on the property popover to prevent the popup from going out of the screen. - Edit button is now always visible as hovering on it is not possible on mobile. Task-3635554 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#156886
In c983f8a5 we updated the `test_survey_invite_action` test to create surveys in batch instead of one by one. This is problematic because `session_code` (given by utility method) must be unique for all surveys. Task-3829536 Forward-Port-Of: odoo/odoo#159295
Original PR description
In c983f8a5 we updated the `test_survey_invite_action` test to create surveys in batch instead of one by one. This is problematic because `session_code` (given by utility method) must be unique for all surveys. Task-3829536 Forward-Port-Of: odoo/odoo#159295
After the fw-port of the fix in [1], it seems some references had changed, breaking the translations again. This commit fixes that. [1] 9d2f7f312c5d699b937bd5546085fc151a149a8f --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#158557
Original PR description
After the fw-port of the fix in [1], it seems some references had changed, breaking the translations again. This commit fixes that. [1] 9d2f7f312c5d699b937bd5546085fc151a149a8f --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#158557
Issue: When using the Fullscreen mode of slides for articles we do run first the website animations before loading the slide, which will make the content to stay invisible since we will never actually perform the animation. Steps to reproduce: 1. Create a new course with an article content. 2. Add any block (text, image). 3. Add an animation to this piece of block. 4. Go to Fullscreen mode. Solution: We could manually instantiate and attach the WebsiteAnimate widget to the #wrapwr
Original PR description
Issue: When using the Fullscreen mode of slides for articles we do run first the website animations before loading the slide, which will make the content to stay invisible since we will never actually perform the animation. Steps to reproduce: 1. Create a new course with an article content. 2. Add any block (text, image). 3. Add an animation to this piece of block. 4. Go to Fullscreen mode. Solution: We could manually instantiate and attach the WebsiteAnimate widget to the #wrapwrap element to ensure animations are properly initialized and applied after the slide has loaded. opw-3757919 Forward-Port-Of: odoo/odoo#159032 Forward-Port-Of: odoo/odoo#155780
### Steps to reproduce: - Install **Restaurant** app. - Go to **Point of Sale** app and open a new **Restaurant** session. - Add items to the order. - Click on the **Bill** button, the receipt window appears. - Click on the **Print** button, the print window appears. Cancel it - U don't have to print it or save it-. - Close the receipt window. - Add another item to the order, the older items are removed -the order is cleared-. ### Investigation: - When the **Print** button is clicked
Original PR description
### Steps to reproduce: - Install **Restaurant** app. - Go to **Point of Sale** app and open a new **Restaurant** session. - Add items to the order. - Click on the **Bill** button, the receipt window…
### Steps to reproduce: - Install **Restaurant** app. - Go to **Point of Sale** app and open a new **Restaurant** session. - Add items to the order. - Click on the **Bill** button, the receipt window appears. - Click on the **Print** button, the print window appears. Cancel it - U don't have to print it or save it-. - Close the receipt window. - Add another item to the order, the older items are removed -the order is cleared-. ### Investigation: - When the **Print** button is clicked in the Bill Screen, `print()` method is triggered https://github.com/odoo/odoo/blob/c3fe6dfd3c56ae8058d0eb688680bdc627ee611a/addons/pos_restaurant/static/src/app/bill_screen/bill_screen.js#L16-L19 - which do two actions simultaneously: - calls the `printReceipt()` method https://github.com/odoo/odoo/blob/c3fe6dfd3c56ae8058d0eb688680bdc627ee611a/addons/pos_restaurant/static/src/app/bill_screen/bill_screen.js#L17 - set the order.`_printed` to `false` https://github.com/odoo/odoo/blob/c3fe6dfd3c56ae8058d0eb688680bdc627ee611a/addons/pos_restaurant/static/src/app/bill_screen/bill_screen.js#L18 _NOW order.`_printed` IS FALSE._ - Inside the `printReceipt()` method, we reach this line https://github.com/odoo/odoo/blob/c3fe6dfd3c56ae8058d0eb688680bdc627ee611a/addons/point_of_sale/static/src/app/store/pos_store.js#L1793 which set the order.`_printed` to True. _NOW order.`_printed` IS TRUE_. - When a new product is added to the order, this if clause https://github.com/odoo/odoo/blob/c3fe6dfd3c56ae8058d0eb688680bdc627ee611a/addons/point_of_sale/static/src/app/store/models.js#L1871-L1875 is activated given that the order.`_printed` is true although it should have been `false`! opw-3796605 Forward-Port-Of: odoo/odoo#158516
[This commit] fixed an issue with the menu cache. Unfortunately, during the forward port, we missed updating the cache key according to what has been done in [this other commit]. This commit updates the cache key and improves the test. Steps to reproduce the bug fixed by this commit: - Render a website without a record URL in the menu (to fill the cache) - Edit the website's menu - Add a link to a product page (e.g., customizable-desk) - Add a link to another product (e.g., chair-floor-pr
Original PR description
[This commit] fixed an issue with the menu cache. Unfortunately, during the forward port, we missed updating the cache key according to what has been done in [this other commit]. This commit updates…
[This commit] fixed an issue with the menu cache. Unfortunately, during the forward port, we missed updating the cache key according to what has been done in [this other commit]. This commit updates the cache key and improves the test. Steps to reproduce the bug fixed by this commit: - Render a website without a record URL in the menu (to fill the cache) - Edit the website's menu - Add a link to a product page (e.g., customizable-desk) - Add a link to another product (e.g., chair-floor-protection) - Save the menu - Click on the menu link to go to customizable-desk => At this point, the active menu element is correct - Click on the menu link to go to chair-floor-protection => The active menu element does not update This issue does not occur if there is a record like URL in the menu before the first render. [This commit]: https://github.com/odoo/odoo/commit/970c173530e5523d0e3242ad84dae6fe5e332d68 [this other commit]:https://github.com/odoo/odoo/commit/595aa248433246959a5fa9288e477091701c6a35 opw-3694651 opw-3750925 opw-3781668 Forward-Port-Of: odoo/odoo#159429
Avoid redirect to forum/<name>/question/<post> that will rediret in all case to /forum/<name>/<post>. Forward-Port-Of: odoo/odoo#158148
Original PR description
Avoid redirect to forum/<name>/question/<post> that will rediret in all case to /forum/<name>/<post>. Forward-Port-Of: odoo/odoo#158148
Before this commit ================== Unable to activate the industry from the form view in the industry section. Additionally, the button in the form for upgrading would be called the button_immediate_upgrade method, resulting in errors. After this commit ================= Activation of the industry from the form view in the industry section is now possible. Furthermore, the issue with upgrading the industry from the form view has been resolved. task-3775729 Forward-Port-Of: odoo/od
Original PR description
Before this commit ================== Unable to activate the industry from the form view in the industry section. Additionally, the button in the form for upgrading would be called the button_immediate_upgrade method, resulting in errors. After this commit ================= Activation of the industry from the form view in the industry section is now possible. Furthermore, the issue with upgrading the industry from the form view has been resolved. task-3775729 Forward-Port-Of: odoo/odoo#157008
## Issue: - When adding opportunity/lead to a contact using Studio and attempt to add a line, we encounter the following error:"TypeError: 'NewId' object is not iterable." ## Steps To Reproduce: - In a contact form open Studio and add a O2M field Customer (Lead/Opportunity) - Try to add a line - Notice Traceback Error "TypeError: 'NewId' object is not iterable" ## Solution: - The issue arises in the search domain of `return_if_relevant` , exactly in ("partner_id", "child_of", lead.pa
Original PR description
## Issue: - When adding opportunity/lead to a contact using Studio and attempt to add a line, we encounter the following error:"TypeError: 'NewId' object is not iterable." ## Steps To Reproduce: - In…
## Issue:
- When adding opportunity/lead to a contact using Studio and attempt to add a line, we encounter the following error:"TypeError: 'NewId' object is not iterable."
## Steps To Reproduce:
- In a contact form open Studio and add a O2M field Customer (Lead/Opportunity)
- Try to add a line
- Notice Traceback Error "TypeError: 'NewId' object is not iterable"
## Solution:
- The issue arises in the search domain of `return_if_relevant` , exactly in ("partner_id", "child_of", lead.partner_id.commercial_partner_id.id) where the type of `lead.partner_id.commercial_partner_id.id` is NewId since the partner is being edited to add a task. This action triggers the `parse` and `to_ids` methods with a value type of NewId. thus the error.
- The operator child_of expects a list of IDs, and the ids property refer to the record's origin ids. to resolve this, replace `commercial_partner_id.id` with `commercial_partner_id.ids`.
opw-3760372
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#159296Since this commit [1], the two searchbar snippets are broken. The search bar input seems invisible because it shares the same color as the default snippet background and has no border. This style matches the search inputs used in apps (like the "/shop" search bar), which isn't affected by the "Input fields" settings in the "Theme" tab. To resolve this issue, this commit introduces a new option to choose between the "light" style (similar to "/shop" search bars) and the "default input style
Original PR description
Since this commit [1], the two searchbar snippets are broken. The search bar input seems invisible because it shares the same color as the default snippet background and has no border. This style…
Since this commit [1], the two searchbar snippets are broken. The search bar input seems invisible because it shares the same color as the default snippet background and has no border. This style matches the search inputs used in apps (like the "/shop" search bar), which isn't affected by the "Input fields" settings in the "Theme" tab. To resolve this issue, this commit introduces a new option to choose between the "light" style (similar to "/shop" search bars) and the "default input style" for the 2 "Search" snippets. The "default input style" is automatically applied when the "Search" snippet (excluding saved snippets) is dropped to address the issue caused by the light-on-light color scheme. Steps to Reproduce the Issue: - While in Website edit mode, drag and drop a "Search" snippet onto the page. - Bug: The input appears invisible due to the lack of a border and a background color identical to the snippet's section color. [1]: https://github.com/odoo/odoo/commit/6b1d11a60d8e70b33c63da860bb81b015ce5ea20 task-3662985 Forward-Port-Of: odoo/odoo#154435
### [[FIX] website_slides: Stop sending completion mail on all slides removal](https://github.com/odoo/odoo/pull/153178/commits/f74fdbe8bb9a20d82caad5b78ec3292c34124fad) Construct deciding on whetheres an attendee should receive 'complete' mail, contains a condition which checks if the attendee has: number_completed_slides >= number of all slides This however falls into a corner case when there is no slides at all and computation gets triggered (which got introduced with commit [1] ).
Original PR description
### [[FIX] website_slides: Stop sending completion mail on all slides removal](https://github.com/odoo/odoo/pull/153178/commits/f74fdbe8bb9a20d82caad5b78ec3292c34124fad) Construct deciding on…
### [[FIX] website_slides: Stop sending completion mail on all slides removal](https://github.com/odoo/odoo/pull/153178/commits/f74fdbe8bb9a20d82caad5b78ec3292c34124fad) Construct deciding on whetheres an attendee should receive 'complete' mail, contains a condition which checks if the attendee has: number_completed_slides >= number of all slides This however falls into a corner case when there is no slides at all and computation gets triggered (which got introduced with commit [1] ). ### [This Commit Change] This commit introduces an additional check on the total number of slides in a channel. Consequently, records without any slides in the related channel will no longer send completion mail notification. ### [Reproduce] - Install website_slides - Create a new eLearning course with some content but do not publish it. - Add attendees. - Delete all the content. - BUG: emails about finishing the course got sent (Settings/Technical/Emails) ### [Why this commit modifies existing test] The test introduced with commit [2] checks if a specific template is used in email generation, requiring email generation to occur as a prerequisite. Originally (before [This Commit Change]), it relied on the default behavior that considered an attendee a completer even without any published slides, thus triggering an email. However, after this commit, with a course containing zero published slides, completion cannot occur, and thus, no emails are sent. For this reason slight alteration of the test setup is required allowing for the emails to get sent and in effect the test to perform its role. ### [References] [1] https://github.com/odoo/odoo/commit/3efa80847c4631febefc770b79bb786953a05b36 [2] https://github.com/odoo/odoo/commit/9a0231d5c3fa25f4ec63303cfc7eb8e2bc8ff9e1 opw-3703987 Forward-Port-Of: odoo/odoo#153178
*: website_sale This is a follow-up of [1], which missed some occurrence of the same issue that it fixed. E.g. - Add a delay to the "write" of the event model - Go to /event/<event_id>/community - Enter edit mode - Click on the page - Enable the room creation option => The page reloads but nothing seems to have been done... it is actually *being* done: the page reloaded too soon. Note: this commit also marks some other occurrences which are not buggy but might be in the future
Original PR description
*: website_sale This is a follow-up of [1], which missed some occurrence of the same issue that it fixed. E.g. - Add a delay to the "write" of the event model - Go to /event/<event_id>/community - Enter edit mode - Click on the page - Enable the room creation option => The page reloads but nothing seems to have been done... it is actually *being* done: the page reloaded too soon. Note: this commit also marks some other occurrences which are not buggy but might be in the future if not properly changed. To be adapted in the master forward-port. [1]: https://github.com/odoo/odoo/commit/556ae457b02e9c077d09fa9c3f9f1e6c6e26b345 Forward-Port-Of: odoo/odoo#159478 Forward-Port-Of: odoo/odoo#159316
## Description On a database with heavy activity, it is possible for the payload size we pass for the `NOTIFY` query on the bus to be larger than what PostgreSQL allows by default, 8000 B. This limit is defined as [src1](https://github.com/postgres/postgres/blob/6686e9676c8faff4ee04c1574e117ae38f117efa/src/backend/commands/async.c#L158-L166) and is used to compare the size of the payload before processing [src2](https://github.com/postgres/postgres/blob/6686e9676c8faff4ee04c1574e117ae38f117efa/
Original PR description
## Description On a database with heavy activity, it is possible for the payload size we pass for the `NOTIFY` query on the bus to be larger than what PostgreSQL allows by default, 8000 B. This limit…
## Description On a database with heavy activity, it is possible for the payload size we pass for the `NOTIFY` query on the bus to be larger than what PostgreSQL allows by default, 8000 B. This limit is defined as [src1](https://github.com/postgres/postgres/blob/6686e9676c8faff4ee04c1574e117ae38f117efa/src/backend/commands/async.c#L158-L166) and is used to compare the size of the payload before processing [src2](https://github.com/postgres/postgres/blob/6686e9676c8faff4ee04c1574e117ae38f117efa/src/backend/commands/async.c#L654-L657) ## Fix - Binary split the payload into multiple chunks if it's exceeding the above-mentioned limit. The unit of splitting is a channel, so if the content of one channel itself is larger than said limit, it is not handled, but shouldn't occur under normal circumstances. - Introduce also a new ENV variable `ODOO_NOTIFY_PAYLOAD_MAX_LENGTH` to allow tweaking of the limit if they are running a handrolled custom PostgreSQL cluster. ## Reference opw-3650618 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#159469 Forward-Port-Of: odoo/odoo#154463
Description of the issue/feature this PR addresses: Avoid ugly URL if no variant on your eCommerce. Current behavior before PR: Product URL are like /shop/product-1#attr= Desired behavior after PR is merged: Product URL are like /shop/product-1 when no attributes --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#159474
Original PR description
Description of the issue/feature this PR addresses: Avoid ugly URL if no variant on your eCommerce. Current behavior before PR: Product URL are like /shop/product-1#attr= Desired behavior after PR is merged: Product URL are like /shop/product-1 when no attributes --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#159474
Wild try to avoid failures on runbot builds (not reproducible locally). * simplify and split tour steps * correctly specify check steps as isCheck: true * make sure python setup is deterministic * batch template creation to avoid creation of dummy archived variant * target values for the variant to archive instead of its number in the list of variants runbot build error 25046 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-P
Original PR description
Wild try to avoid failures on runbot builds (not reproducible locally). * simplify and split tour steps * correctly specify check steps as isCheck: true * make sure python setup is deterministic * batch template creation to avoid creation of dummy archived variant * target values for the variant to archive instead of its number in the list of variants runbot build error 25046 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#159270
Steps to reproduce: - Remove all permissions to write/create/delete a view for the user "demo" - Open a view form with "demo" user Actual result: - View code is displayed in plain text and with formatting  Expected result: - View code is displayed with formatting only - You can't edit the view or the translations opw-3776073 --- I confirm I have signed the CLA and read the PR
Original PR description
Steps to reproduce: - Remove all permissions to write/create/delete a view for the user "demo" - Open a view form with "demo" user Actual result: - View code is displayed in plain text and with formatting  Expected result: - View code is displayed with formatting only - You can't edit the view or the translations opw-3776073 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#159523 Forward-Port-Of: odoo/odoo#159216