Daily updates from Odoo
Friday, November 29, 2024
28 changes
2 changes
Resolved issues and error corrections
This update fixes several visual inconsistencies in the Documents app, including button grouping, dropdown borders, modal buttons, loading alignment, and count positioning. Users get a cleaner, more consistent interface with fewer distracting layout issues.
Original PR description
This commit: 1. Removes useless btn-group around "New" button 2. Removes useless borders in the cog dropdown 3. Makes the edit modal buttons more consistent with the rest of the modals 4. Fixes an…
This commit: 1. Removes useless btn-group around "New" button 2. Removes useless borders in the cog dropdown 3. Makes the edit modal buttons more consistent with the rest of the modals 4. Fixes an alignment problem when the loading indicator is displayed 5. Fixes an alignment problem between cog and count | - | 2 | 3 | 4 | 5 | |--------|--------|--------|--------|--------| | before |  |  |  |  | | after | <img width="227" alt="Screenshot 2024-04-04 at 11 04 49" src="https://github.com/odoo/enterprise/assets/110090660/bc264ad0-28b7-44a4-b4ae-29cf03b3f33a"> | <img width="231" alt="Screenshot 2024-04-04 at 11 03 54" src="https://github.com/odoo/enterprise/assets/110090660/891554fa-7ac8-4f3b-9566-5340e98522ea"> | <img width="196" alt="Screenshot 2024-04-04 at 11 02 57" src="https://github.com/odoo/enterprise/assets/110090660/7479740b-80fd-47af-95e4-8b4fbc8228d9">| <img width="198" alt="Screenshot 2024-04-04 at 11 03 25" src="https://github.com/odoo/enterprise/assets/110090660/32229f8e-16d9-487b-845d-704f7a07e63e">| task-3580143
This update fixes missing translation markers on user-facing text across several Odoo apps and localizations. It helps ensure labels, messages, and reports can be properly translated for users working in different languages.
Original PR description
Sometimes, developers forget to wrap their strings inside a gettext call. This commit adds those missing calls. Community: https://github.com/odoo/odoo/pull/177354
13 changes
Resolved issues and error corrections
Purchase order reports now display tax descriptions correctly when they include formatting. This prevents confusing or incorrectly shown tax information on documents sent to vendors.
Original PR description
Changed the tax display in the purchase order template from `t-esc` to `t-out` to ensure proper HTML rendering of tax labels. This adjustment is necessary to display the tax descriptions correctly without escaping HTML content, which was causing display issues in the rendered document. This change addresses the need for accurate representation of tax information in purchase orders, improving the clarity and correctness of the document output. opw-4313981 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 ensures Stripe payment forms can open properly from customer payment links by providing an initial amount. Customers can still choose installment or early payment options afterward, reducing failed payment starts.
Original PR description
Stripe (inline payment form) expect to have a default `amount` value because it need to initialize a payment "intent" when opening the payment form, so before the user will be able to choose between one of the different installment/epd payment options. This commit set that default amount to the total due amount, so that Stripe can successfully create the initial payment intent, the amount being then updated JS side when user choose any of the available option. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The HTML editor now keeps the displayed font name in sync when users undo or redo formatting changes. This prevents confusing toolbar information after editing formatted content, such as in todo notes.
Original PR description
Steps to reproduce the issue: ============================= - Create a new todo - Add some content - Select it and choose a font - Press `ctrl+z` - The display name doesn't get updated Origin of the issue: ==================== We don't update the state of the font_selector after redo/undo. Solution: ========= We need to lift the state from font_selector to the font_plugin so we can detect commands and events and upate the displayName accordingly task-4243952
This update improves the reliability and clarity of Odoo's automated test tools, especially around timing, simulated user actions, form submissions, and reporting. It helps teams catch issues more consistently while reducing false failures and confusing test output, with little direct impact on day-to-day users.
Original PR description
## Pull Request HOOT (PRHOOT) - part 27 Part 1: https://github.com/odoo/odoo/pull/152930 Part 2: https://github.com/odoo/odoo/pull/153018 Part 3: https://github.com/odoo/odoo/pull/153023 Part 4:…
## Pull Request HOOT (PRHOOT) - part 27 Part 1: https://github.com/odoo/odoo/pull/152930 Part 2: https://github.com/odoo/odoo/pull/153018 Part 3: https://github.com/odoo/odoo/pull/153023 Part 4: https://github.com/odoo/odoo/pull/153203 Part 5: https://github.com/odoo/odoo/pull/153425 Part 6: https://github.com/odoo/odoo/pull/153700 Part 7: https://github.com/odoo/odoo/pull/154054 Part 8: https://github.com/odoo/odoo/pull/154579 Part 9: https://github.com/odoo/odoo/pull/155073 Part 10: https://github.com/odoo/odoo/pull/155639 Part 11: https://github.com/odoo/odoo/pull/156255 / https://github.com/odoo/enterprise/pull/58135 Part 12: https://github.com/odoo/odoo/pull/156869 Part 13: https://github.com/odoo/odoo/pull/158384 / https://github.com/odoo/enterprise/pull/59019 Part 14: https://github.com/odoo/odoo/pull/158916 Part 15: https://github.com/odoo/odoo/pull/160292 / https://github.com/odoo/enterprise/pull/59971 Part 15.5: https://github.com/odoo/odoo/pull/166463 Part 16: https://github.com/odoo/odoo/pull/166311 Part 17: https://github.com/odoo/odoo/pull/168328 Part 18: https://github.com/odoo/odoo/pull/171004 / https://github.com/odoo/enterprise/pull/65657 Part 19: https://github.com/odoo/odoo/pull/171242 / https://github.com/odoo/enterprise/pull/65767 Part 20: https://github.com/odoo/odoo/pull/173332 / https://github.com/odoo/enterprise/pull/66895 Part 21: https://github.com/odoo/odoo/pull/174337 Part 22: https://github.com/odoo/odoo/pull/176777 / https://github.com/odoo/enterprise/pull/68721 Part 23: https://github.com/odoo/odoo/pull/179660 / https://github.com/odoo/enterprise/pull/69728 Part 24: https://github.com/odoo/odoo/pull/181971 Part 25: https://github.com/odoo/odoo/pull/183358 Part 26: https://github.com/odoo/odoo/pull/186403 / https://github.com/odoo/enterprise/pull/73361 Enterprise: https://github.com/odoo/enterprise/pull/74093 This pull requests brings various improvements and fixes to Hoot and the Odoo unit test ecosystem. See the different commit messages for more details. Note: these changes are made in stable to avoid having to support multiple versions of the HOOT API. As such, these changes are intended to be strictly limited to unit tests as to not put the rest of the code base at risk. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The point of sale cash move popup now keeps the confirm button disabled when the reason field contains only spaces. This prevents blank or meaningless cash movement reasons from being submitted, improving data quality for store operations.
Original PR description
Description of the issue/feature this PR addresses: In the cash move popup of the point of sale, the confirm button is currently enabled when the reason input field contains only whitespace, allowing submission with invalid input. Current behavior before PR: The confirm button is active even when the reason input field only contains empty spaces, which can lead to erroneous or empty reason entries. Desired behavior after PR is merged: The confirm button will only be enabled when the reason input field contains valid, non-whitespace characters, ensuring that only meaningful input allows confirmation. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The withholding wizard now automatically fills in the TDS journal configured in settings. This prevents users from having to manually select the journal and helps ensure Indian withholding tax entries are created with the correct accounting setup.
Original PR description
Before This Commit: - The TDS journal is set in the settings, but when opening the withhold wizard, the journal is not populated in the wizard. After This Commit: - The TDS journal now correctly populates in the withhold wizard. Reason: - The compute method `_compute_journal` depends on `company_id`. The compute method of `company_id` depends on `related_move_id` and `related_payment_id`, but these two fields are not defined in the view. As a result, `company_id` is not computed. Since `company_id` is not set, `_compute_journal` cannot retrieve the journal from the settings. - The fields `related_move_id` and `related_payment_id` were mistakenly removed in this PR: https://github.com/odoo/odoo/pull/178572 Task-4366374
This fix makes automated checks for the website editor's link popover behave consistently. It reduces random test failures, helping development teams validate changes with more confidence and less wasted investigation time.
Original PR description
Before this commit: Tests involving the opening and closing of the link popover by clicking the link button could fail unpredictably After this commit: They are updated to ensure deterministic behavior --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes an issue on Odoo IoT devices where restarting the Odoo service could also stop the remote debugging connection. The remote debugging tunnel now continues running independently, reducing interruptions during support and troubleshooting.
Original PR description
In IoT image 24.10, the Odoo service was changed to a systemd service (rather than init). A side effect of this change is that all subprocesses are killed when the service is stopped. This causes the `ngrok` to be killed while remote debugging if you restart the Odoo service. This PR changes `ngrok` to run as a service, which is then started by Odoo. This means it now keeps running when Odoo is stopped. task-4363825 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fixes an editor issue where inserting a dynamic field next to existing text placed it on the next line. This keeps edited content formatted as expected and reduces manual cleanup for users.
Original PR description
**Current behavior before PR:** - When adding a dynamic field next to text nodes, the dynamic field would be inserted on the following line. **Desired behavior after PR is merged:** - The dynamic field is now added on the same line as the text. task:4220919
Fixes an issue where signing an employee contract could fail if the signing request was connected to more than one contract. The system now uses the newest related contract, helping users complete contract signing without interruption.
Original PR description
while signing a contract, it may happen that we end up with a sign request linked to multiple contracts. This will lead to an error when trying to call `_get_sign_request_folder` that has `ensure_one` on the contract. to avoid that we take the newest contract linked to the sign request. opw-4348211
Fixed an automated website rental shopping test that could fail after 11pm because the selected rental time accidentally rolled into the next day. The test now uses a stable future date, improving reliability of validation for the rental purchase flow.
Original PR description
The tour would fail after 11pm as the smallest rental interval for the item is 1 hours leading to default dates leaking into the next day leading to more hours than planned being encoded. By forcing the date to be the first day of the next month we can ensure the date is always valid. Runbot Error 108371
Spreadsheet document imports no longer run a production data validation step that is no longer needed. This keeps the feature aligned with current usage while moving that validation responsibility into tests, reducing unnecessary processing in normal operations.
Original PR description
The data validation will be moved in the test modules as its use in production was diminished following https://github.com/odoo/odoo/pull/184846 Task: 4363803
Fixed a display issue in appraisal forms where placeholder text could overlap when users clicked into an input field. This improves readability and makes the form easier to complete.
Original PR description
Steps: - Open the appraisal form. - Click on the input field with the placeholder text. - The placeholder text was overlapping. Cause of the issue: - The input field was not displaying properly due to layout constraints. Fix: - Adjusted the layout to allow proper display of the input field and placeholder. task-4316840
13 changes
Resolved issues and error corrections
This update resolves an issue where users' LinkedIn accounts were unnecessarily disconnecting during comment loading. The fix ensures disconnections only occur when there's a genuine problem with fetching comments, improving the user experience and preventing frustrating interruptions.
Original PR description
This commit fixes an issue with the social_linkedin module's comments fetch methods introduced in https://github.com/odoo/enterprise/pull/67079. This method disconnects the user from its account every time they open a post's comments, even if all API calls are successful. This shouldn't happen as nothing wrong happened to warrant a disconnection on our end. Now the user's account is disconnected if and only if there was an actual issue when fetching comments. task-4363737 Forward-Port-Of: odoo/enterprise#74672
This update fixes a printing issue where long account names in PDF reports caused text to overflow. The change adds a styling override to properly wrap long account names, ensuring reports are formatted correctly and readable. This improves the user experience when generating and printing financial reports.
Original PR description
Issue: When printing PDF reports, long account names cause the report to overflow out of the page. Steps to reproduce: - Install the accounting app - Enable "Analytic Accounting" in the settings -…
Issue: When printing PDF reports, long account names cause the report to overflow out of the page. Steps to reproduce: - Install the accounting app - Enable "Analytic Accounting" in the settings - Create one (or more) analytic account(s) with very long names - Open either "Balance Sheet" or "Profit and Loss" reporting - Do an "Analytic Group By" with the created account(s) - Print the PDF Cause: The default style in the associated scss file does not use wrapping. https://github.com/odoo/enterprise/blob/bf6c64b8fd5591f271e9b0f18f40d205a64cd5bd/account_reports/static/src/scss/account_pdf_export_template.scss#L41 Solution: Override the default style by using the "o_overflow_name" class. This is the class already used for handling overflow in the tables' content lines. This gives a more readable result than just editing the "white-space" field (see below for comparison). The proposed solution gives the following result:  As opposed to just editing to "white-space: wrap;"  Ticket: opw-4277596
This update resolves an issue where users without the 'account.group_account_invoice' group couldn't access the purchase order view after installing the l10n_ke_edi_oscu_stock module. The change restricts access to a key model, ensuring all users can properly manage purchase orders.
Original PR description
At the moment, when `l10n_ke_edi_oscu_stock` is installed, the purchase order view is broken for users that don't belong to the `account.group_account_invoice` group, because they don't have access to the `l10n_ke_edi.customs.import` model. This commit restricts the `l10n_ke_customs_import_ids` field on the `purchase.order` view to the `account.group_account_invoice` so that this error no longer occurs. runbot-70725
This update resolves an issue where spreadsheet thumbnails weren't displaying correctly in Safari and other Webkit browsers. The fix ensures that thumbnails are converted to a compatible format (PNG) when WebP conversion fails, improving the user experience across different browsers.
Original PR description
In safari (and all webkit navigators) `HTMLCanvasElement.toDataUrl` does not support `image/webp` as `type` parameter. https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/toDataURL#browser_compatibility Before this commit, spreadsheet_edition/hooks.js:useSpreadsheetThumbnail draws an image to a canvas and convert it to base64. But the code assumes that the conversion to webp will work. `toDataUrl` uses `png` type if it doesn't work https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/toDataURL#type With this commit, the regexp that removes the encoding data will supports `webp` **and** `png`
This update fixes a potential issue where errors during API calls to the Ecuadorian tax system (l10n_ec_edi) would display confusing tracebacks to users. By catching a broader range of exceptions, including timeouts, the system is now more stable and reliable when communicating with external services.
Original PR description
At the moment, the SOAP call in `_l10n_ec_get_client_service_response` catches `ConnectionError`, but some exceptions raised by zeep (such as `Timeout`) are not caught and will cause a traceback for the user. We catch `RequestException` to make sure that these are caught. task-none Forward-Port-Of: odoo/enterprise#74266
This update corrects a technical error impacting the generation of CFDI invoices in Mexico. Specifically, the 'Pagos' namespace was incorrectly removed from the schemaLocation attribute, causing compatibility issues with Quarum pac. This fix ensures invoices are correctly formatted and processed.
Original PR description
after this commit [1] the **Pagos** namespace was always removed from the schemaLocation attribute, this was causing error for Quarum pac. this commit fix the issue by filtering the schemaLocation attribute based what is present in namespace map. [1] https://github.com/odoo/enterprise/commit/dd18e0829810df7594730e14e09ac2174eedcc32 opw-4168509
This update reverts a previous change to the payroll expense testing process. It corrects a requirement that an employee’s bank account must be set up before approving the payroll expense sheet. This ensures the testing process accurately reflects how the system functions in a real-world scenario, preventing potential errors.
Original PR description
This reverts commit 8bc7dfb8f994c2f1147bdba9a5a2cc6c965595bb related: https://github.com/odoo/odoo/pull/188956 task-4206895 Forward-Port-Of: odoo/enterprise#74769
This update resolves an issue where users were not receiving reminders to sign up for Odoo Enterprise. The fix ensures that the system correctly triggers a reminder email by simulating a user click within the sign-up tour, improving the user experience and sign-up conversion rates.
Original PR description
In this commit, we fix sign_resend_expired_link_tour tour by doing click in step action instead of doing nothing.
This update corrects an issue where a confirmation email was incorrectly sent when changing payment methods for subscriptions. The fix filters out validation transactions, ensuring emails are only triggered for actual payment confirmations, improving email efficiency and reducing potential noise for users.
Original PR description
Versions -------- - 17.0+ Community: https://github.com/odoo/odoo/pull/188440 >[!important] >All functional changes are made in `sale`, this PR simply adds a test. Steps ----- 1. Have a confirmed…
Versions -------- - 17.0+ Community: https://github.com/odoo/odoo/pull/188440 >[!important] >All functional changes are made in `sale`, this PR simply adds a test. Steps ----- 1. Have a confirmed subscription; 2. go to subscription management in portal; 3. set or change payment method. Issue ----- The following email is sent: > A payment [...] amounting $ 0.00 for [...] has been confirmed. Cause ----- The `_reconcile_after_done` override in `sale` sends a payment succeeded mail for any sale order linked to a transaction that wasn't confirmed by that transaction. It currently assumes all the transactions in `self` are actual payment operations, as any `validation` gets filtered out in `_finalize_post_processing`, before `_reconcile_after_done` is called[^1]. This assumption no longer holds with `sale_subscription` installed, which also calls `_reconcile_after_done` on validation transactions to manage payment tokens linked to subscriptions[^2]. Solution -------- Filter out `validation` transactions before calling `_send_payment_succeeded_for_order_mail` on linked orders. opw-4169491 [^1]: https://github.com/odoo/odoo/blob/12de68d342b/addons/payment/models/payment_transaction.py#L998-L1003 [^2]: https://github.com/odoo/enterprise/blob/bbd1be56538/sale_subscription/models/payment_transaction.py#L135-L144
This update corrects a potential error in the UPS integration that could occur when adding a ReferenceNumber to delivery requests. By validating the origin and destination pairs beforehand, the system now ensures accurate request creation and avoids disruptions to the shipping process. This improves the reliability of our UPS delivery functionality.
Original PR description
…ing ReferenceNumber to the request opw-4358458 Forward-Port-Of: odoo/enterprise#74751
This update resolves an issue where account line labels could display as either empty strings or False, leading to inconsistent search results. The fix standardizes label handling to False when a value is empty, aligning with expected database behavior and improving search accuracy. This ensures consistent reporting and data retrieval.
Original PR description
**[FIX] account_asset: fix empty string and False/None inconsistencies** (adapting tests)
When empty, the name field of account.move.line could inconsistently hold either an empty string or False. This inconsistency led to different results when searching for lines with an empty label, as label->not set and label == "" yielded different outcomes. The latter behavior aligns with expected ORM operations.
This fix ensures the name field is set to False whenever the computed result is an empty string, standardizing search behavior. We also adapt some tests to the new behavior in enterprise.
opw-4167139
[community PR](https://github.com/odoo/odoo/pull/186079)
Forward-Port-Of: odoo/enterprise#73256This update corrects a minor error in how payroll calculations are processed when multiple input values are involved. This ensures more accurate and reliable payroll processing for employees, particularly those with complex compensation structures. The change improves the overall stability and accuracy of the HR payroll module.
This update fixes a technical issue in the payroll module that caused a traceback error when an employee was removed from a payslip. The fix ensures that the system correctly handles changes to employee records, preventing errors and maintaining data integrity. This improves the reliability of payroll processing.
Original PR description
…ayslip form Steps: • Install the payroll app. • Install l10n_au_hr_payroll module. • Open payslip and remove the employee from the form and click outside to apply changes. • It will cause the traceback error. Cause of the issue: • After removing the employee name corresponding contract will become empty. • The issue is due to empty record set of contract. Fix: • Added a check to ensure contract is present. task-4341523