Thursday, July 11, 2024
16 changes · 17.0
Enhancements to existing features
[IMP] l10n_tr: Add tax and tax report translation Add tax and tax report translation in turkish language for the new tr improvements task-id#3924220 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Original PR description
[IMP] l10n_tr: Add tax and tax report translation Add tax and tax report translation in turkish language for the new tr improvements task-id#3924220 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The IoT Box connection process now includes clearer instructions and helpful links to Odoo documentation. This makes it easier for users to successfully connect a new IoT Box to their database without confusion.
Original PR description
Updated description when connecting new IoT Box to db, added help buttons redirecting to Odoo documentation. Task: 4021957
Resolved issues and error corrections
This change prevents an error from interrupting analytic account processing in stock accounting. It helps ensure related accounting operations can complete reliably without unexpected failures.
Original PR description
This fixes the syntax error on function _perform_analytic_distribution of the model AccountAnalyticAccount. opw-3907439 Description of the issue/feature this PR addresses and current behavior before PR: - The _perform_analytic_distribution function on model AccountAnalyticAccount has a syntax error causing a UnboundLocalError Desired behavior after PR is merged: - No UnboundLocalError --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
This pull request appears to add or update custom add-ons and includes broad repository setup and accounting module files. The business impact is unclear from the description, but the affected accounting area may see configuration or documentation-related changes.
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
Printed employee resumes no longer show the placeholder company text when a resume item has no description. This prevents incorrect information from appearing in employee documents and avoids requiring users to edit technical templates to fix it.
Original PR description
Steps to reproduce: - Employees > Any employee - Make any resume item with empty description field - Gear in top-left > Print > Print Resume What happens: Resume items with no description default to placeholder "Odoo India pvt. Ltd". Why is this an issue: This put wrong information in resumes and cannot be corrected from the client side (The default is pulled directly from the template, which is not meant to be accessed casually). What was done: Removed description from template. opw-4033434 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents an error that could appear when creating a product variant with GCC invoicing enabled. Users can now create products normally without being blocked by a traceback.
Original PR description
before this commit, a traceback was showing on creating product variant steps to reproduce: * click create button in product, traceback will be showing after this commit, without any traceback…
before this commit, a traceback was showing on creating product variant steps to reproduce: * click create button in product, traceback will be showing after this commit, without any traceback product is created traceback is introduced in: https://github.com/odoo/odoo/commit/758ced91f8cb220a003a49b01e047b507f8509d7 traceback details:  super()._compute_display_name() File "/data/build/enterprise/sale_renting/models/product_product.py", line 14, in _compute_display_name super()._compute_display_name() File "/data/build/odoo/addons/l10n_gcc_invoice/models/product.py", line 23, in _compute_display_name product.display_name = re.sub(r'(\d)(\s)([\u0600-\u06FF])', repl, product.display_name) File "/usr/lib/python3.10/re.py", line 209, in sub return _compile(pattern, flags).sub(repl, string, count) TypeError: expected string or bytes-like object --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents an error when users choose a source stock quantity while creating a stock move line. It makes the inventory workflow smoother by using the product unit information already available before the related stock move is created.
Original PR description
Before PR: when creating a SML and changing the quant_id (pick from), you get a traceback as the stock_move is not yet created After PR: Since the issue appears before the real creation of the SML (and thus the SM), reading the uom of the product directly from the SML should not pose any issue opw-3931980 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents Google Calendar account resets from failing when users choose to delete events from Odoo while synchronizing all existing events. Businesses can now reset affected calendar accounts without encountering missing-record errors or needing manual intervention.
Original PR description
Before this commit, attempting to reset an account with the policies "Delete from Odoo" and "Synchronize all existing events" set would fail. This was due to a write operation being performed on records after they had been unlinked, resulting in a "Missing Record: Record does not exist or has been deleted." error. opw-4043858 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents an error when creating a new product variant while the GCC invoice localization is installed. It adds a safe default when a product name is not yet available, allowing users to complete product setup without interruption.
Original PR description
Currently, a traceback is occurring when the user tries to create a new product To reproduce this issue: 1) install sales, `l10n_gcc_invoice` 2) Try to create a new `product variant` from sales Error:- ```TypeError: expected string or bytes-like object``` In this commit `product.display_name` is used in `re.sub()` in which `product display name` should be false when initially creating a product. which leads to a traceback. After applying this commit, it will resolve this issue by giving a default value when the product.display_name is false. commit:- https://github.com/odoo/odoo/pull/169267/commits/89ba4003eea350e9e2833744637b32cd67d62952 https://github.com/odoo/odoo/blob/69e3d9d48dfb138367039e650b826a4f44af5697/addons/l10n_gcc_invoice/models/product.py#L11-L23 sentry-5593088590
Problem: When the customer invoice journal uses the l10n_sg electronic invoicing and the user creates an invoice, a traceback error will occur. The traceback error details a key error since 'tax_exemption_reason' is not a key in the dict from _get_invoice_line_item_vals. Purpose: Only if the key 'tax_exemption_reason' exists in the dict, then it should get popped. Steps to Reproduce on Runbot: 1. Install l10n_sg 2. Switch to SG Company 3. Go to the “Customer Invoices” Journal and check
Original PR description
Problem: When the customer invoice journal uses the l10n_sg electronic invoicing and the user creates an invoice, a traceback error will occur. The traceback error details a key error since 'tax_exemption_reason' is not a key in the dict from _get_invoice_line_item_vals. Purpose: Only if the key 'tax_exemption_reason' exists in the dict, then it should get popped. Steps to Reproduce on Runbot: 1. Install l10n_sg 2. Switch to SG Company 3. Go to the “Customer Invoices” Journal and check the “SG BIS Billing 3.0” option for the “Electronic Invoicing” field 4. Create an invoice with a product 5. Confirming the invoice will throw the error. opw-3984143 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171687
With the version 3.3, the 3bl tax tag has been removed and so the 3.2 script is throwing an error since that tag doesn't exist anymore The fix is that we remove the 3.2 script and change 3b tag to 3bg or 3bs in the 3.3 script along with the replacement of the 3bl tag Task: 4032184 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171737
Original PR description
With the version 3.3, the 3bl tax tag has been removed and so the 3.2 script is throwing an error since that tag doesn't exist anymore The fix is that we remove the 3.2 script and change 3b tag to 3bg or 3bs in the 3.3 script along with the replacement of the 3bl tag Task: 4032184 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171737
The file utils_tests.js was not listed in the web.qunit_suite_tests assets bundle, preventing it from loading and rendering it useless. This commit updates the assets bundle definition to properly load utils_tests.js. Follow-up of https://github.com/odoo/odoo/pull/171176 Forward-Port-Of: odoo/odoo#172615 Forward-Port-Of: odoo/odoo#172580
Original PR description
The file utils_tests.js was not listed in the web.qunit_suite_tests assets bundle, preventing it from loading and rendering it useless. This commit updates the assets bundle definition to properly load utils_tests.js. Follow-up of https://github.com/odoo/odoo/pull/171176 Forward-Port-Of: odoo/odoo#172615 Forward-Port-Of: odoo/odoo#172580
Before this commit, the absence of rewards in a loyalty program would trigger an error, preventing the Point of Sale from opening. Although the current design does not support removing all rewards from a program, there exist databases in this state. opw-4045063 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#172597
Original PR description
Before this commit, the absence of rewards in a loyalty program would trigger an error, preventing the Point of Sale from opening. Although the current design does not support removing all rewards from a program, there exist databases in this state. opw-4045063 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#172597
There is currently an issue with the `report_stock_quantity` SQL view. When there is only 1 `stock_warehouse` in a given database and `pg_stats` for `stock_warehouse` is up-to-date, the query plan for scanning the `all_sm` cte (the `existing_sm` cte is always inlined) becomes extremely bad. That's because postgres somehow expects only 1 row returned by the `all_sm` cte whereas in real databases it can be closer to 500 000. This makes postgres plan a Nested Loop Join that has very bad performance
Original PR description
There is currently an issue with the `report_stock_quantity` SQL view. When there is only 1 `stock_warehouse` in a given database and `pg_stats` for `stock_warehouse` is up-to-date, the query plan…
There is currently an issue with the `report_stock_quantity` SQL view. When there is only 1 `stock_warehouse` in a given database and `pg_stats` for `stock_warehouse` is up-to-date, the query plan for scanning the `all_sm` cte (the `existing_sm` cte is always inlined) becomes extremely bad. That's because postgres somehow expects only 1 row returned by the `all_sm` cte whereas in real databases it can be closer to 500 000. This makes postgres plan a Nested Loop Join that has very bad performances in large databases. Another weird side-effect of this is the production vs staging (duplicate) on Odoo.sh. Because stagings and duplicates don't necessarily have up-to-date statistics, you can have the same query being very slow on the production database and very fast on a staging. That's because in the absence of statistics for the stock_warehouse table, postgres does not make any particular assumption on the number of rows returned by the `all_sm` cte and therefore produces a more efficient plan. This commit tries to change that by introducing a new small CTE that simply does a LEFT JOIN between `stock_location` and `stock_warehouse`. Because this CTE is referenced twice in the `existing_sm` CTE, it will be materialized by postgres, i.e. evaluated first before being saved in memory for further usage. Thanks to that, postgres knows the expected number of rows of the CTE and can better plan the outer query's execution. #### speedup Customer database with 17 000 products, 700 000 stock.moves, 97 locations and 1 stock_warehouse. Doing a simple GROUP BY query on `report_stock_quantity`: 5min -> 1s ##### dalibo To understand the dalibo, currently there is a workaround for this issue. If we add (and archive) a new `stock_warehouse` and then analyze the table, postgres plans an efficient plan. My guess here is that with only 1 record postgres skews the plan, probably because it tries to shortcut parts of the query execution. When there are 2 or more warehouses it cannot do that anymore and simply relies on correct statistics to plan the execution. Another possibility would be that statistics for tables with only 1 row are badly used by postgres. In any case, the point of the new CTE is to match the 2 or more warehouses case when postgres plans the scanning of the `all_sm` CTE. - [1 warehouse, base case](https://explain.dalibo.com/plan/a8fagdgd2d20ae48) - [2 warehouses, base case](https://explain.dalibo.com/plan/2d38fb9ef6df495g) - [1 warehouse, new CTE case](https://explain.dalibo.com/plan/92e41053c9g0ce8d) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#169401
This commits only just add partnerlist tour methods required for this fix https://github.com/odoo/enterprise/pull/65762 opw-3925397 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171260
Original PR description
This commits only just add partnerlist tour methods required for this fix https://github.com/odoo/enterprise/pull/65762 opw-3925397 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171260
Add myself for CLA --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171169
Original PR description
Add myself for CLA --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#171169