Tuesday, March 4, 2025
7 changes · 17.0
Resolved issues and error corrections
Invoice PDFs will no longer print default placeholder wording for empty note or section lines. This prevents confusing sample text from appearing on customer-facing documents while keeping the placeholders available in Studio for editing.
Original PR description
It is possible to add note / section lines with empty label (`name`). Currenlty we then print placeholder values: * section: `A section title` * note: `A note, whose content usually applies to the section or product above.` (They were added to be displayed in studio; see commit 2fbf17d235fb7c92914f0a3b6a3ce954c27f3032.) After this commit the placeholders will not be printed on PDFs anymore. (But they will still be shown in studio.) task: none
The CRM helper now displays the full alias email address instead of only the alias name. This makes the guidance clearer for users who need to send or forward leads to the correct CRM email address.
Original PR description
Steps to reproduce =================== - Create database with a valid mail configuration. - Open CRM module apply some random filters to get the helper. - alias name is there in the helper. This PR addresses the issue and now the alias email will be there instead of the name. Task-4619974
This fixes an issue where portal users who scheduled appointments were not added as followers of the related calendar event. Keeping them included ensures they receive the expected appointment updates and communications.
Original PR description
Reproduce --- - -i website appointment - schedule an appointment as a portal user - BUG: portal user not in followers opw-4257322
Discount lines added to quotations now use the customer’s language in their description. This prevents confusion for customers receiving quotes in a language different from the salesperson’s interface language.
Original PR description
Steps to reproduce: - create a new quotation - select a customer with another langage than the current user - add a product - add a discount using the discount button (select "global amount" or "fixed amount") Problem: Inside "order lines" from the quotation, the "description" column in the line created for the discount product is not translated. https://github.com/odoo/odoo/blob/c62e8d90db481fb7ba28e888431b6a7dc5ed03cd/addons/sale/wizard/sale_order_discount.py#L126 opw-4534846
This update prevents the same automated tests from running multiple times in the two-factor authentication email module. It helps keep the test process cleaner and faster without changing how users experience the product.
Original PR description
Until 18.0 [1], test classes should not inherit from other test classes which themselves contain tests. When this happens, the tests of the parent class are run for every class that inherits from it. We fix occurrences of this for social marketing apps. A naive detection script is available on the pad of the related task. [1]: 6dc96811c24ec4c97b8fbd2489aef6d4f061ac03 task-3792478
Duplicated Helpdesk tickets no longer carry over response time values from the original ticket. This keeps ticket analysis reports accurate by ensuring copied tickets start with their own response metrics.
Original PR description
### Steps to reproduce: - Open a Helpdesk ticket - Send message on this ticket - Duplicate this ticket - Go to Reporting > Ticket Analysis - Check 'Hours to First Response' value for the duplicated ticket ### Cause: Those fields of response hours are being copied when duplicating tickets. ### Fix: We added 'copy=False' to each of those fields definition so we don't duplicate those fields when duplicating a record. opw-4582995
Reversed invoices now use the configured refund Intrastat transaction code instead of incorrectly reusing the original invoice code. This helps ensure Intrastat reporting remains accurate when invoices are reversed.
Original PR description
…versing Steps to reproduce: - In settings, set a default "Default invoice transaction code" and "Default refund transaction code" - Create an invoice with an invoice line and post it - Reverse it Issue: - The intrastat code will be the one from the invoice (and not the default refund one) Cause: When copying the lines we keep the one from the invoice Solution: Delete the default values when copying the data so the compute is triggered correctly which will set the correct value opw-4417566