Thursday, November 13, 2025
47 changes
7 changes
Resolved issues and error corrections
This change removes an unnecessary test flag from the self-order mobile online payment tour. It prevents a local debug-mode issue, so developers can run and test the flow without unexpected problems.
Original PR description
In this commit: - Removed the `test: true` flag from the `test_kiosk_cart_restore_and_cancel` tour. - The flag is not required for tours and can cause issues when running in debug mode. - This issue only occurs in local environments when debug mode is enabled. - After this fix, no issue is generated in debug mode. Forward-Port-Of: odoo/odoo#234101
The system now correctly ignores the Pi 5's built-in serial port when listing serial devices. This prevents an internal port from appearing as an available connection, which avoids confusion and reduces the risk of selecting the wrong device.
Original PR description
The serial interface previously included a filter to not include the built-in serial port on the Pi 5, however this filter is now broken in Raspberry Pi OS Trixie. To ensure the filter works in all versions, we now explicitly look for the device `/dev/ttyAMA10` and ignore it. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#235074
This update fixes and simplifies the translated labels used for Italian electronic document types. It helps ensure the right document type names appear more clearly and consistently for users creating e-invoices and related documents.
Original PR description
Simplified and fixed labels and labels translations. Ref: https://help.fattureincloud.it/help/articolo/544-crea-autofattura-elettronica Ref: https://fex-app.com/FatturaElettronica/FatturaElettronicaBody/DatiGenerali/DatiGeneraliDocumento/TipoDocumento Forward-Port-Of: odoo/odoo#235374 Forward-Port-Of: odoo/odoo#233943
This update adjusts an automated website performance test so it works correctly in both Community and Enterprise editions. It helps avoid false test failures while keeping the performance check useful during development.
Original PR description
The test is primarily intended to determine the number of requests to ir.ui.view. The information on the website is supplementary but less important. It mainly serves to inform performance considerations during development. Issue on runbot for single app test https://runbot.odoo.com/odoo/runbot.build.error/231557
This update removes leftover unused code from the accounting reconciliation model after a previous redesign. It does not change how users work, but it helps keep the codebase simpler and easier to maintain.
Original PR description
In the PR (odoo/enterprise#80787) the reconciliation model was refactored in order to be easier to use for users. However, some dead code was forgotten and not removed. Forward-Port-Of: odoo/enterprise#98923
This fix avoids a frontend error that could happen if an order was deleted while a pro forma document was still being processed. The system now checks that the order still exists before continuing, which makes the Point of Sale flow more reliable.
Original PR description
Before this commit, when trying to send a pro forma for an order that had been deleted while the pro forma call was in the queue, a JS error would occur because the callback of the call would try to access the order which was no longer existing in the frontend. This is now fixed by checking that the order is still present before accessing it in the callback. Forward-Port-Of: odoo/enterprise#99248
The website now only shows the language selector placeholder when there is more than one language available. This avoids an empty list item in the header, which could leave an unnecessary border or blank space.
Original PR description
This PR calls the language selector placeholder only when multiple languages exist, avoiding an empty header list item that creates an unnecessary border or empty space. task-5150808 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#234345 Forward-Port-Of: odoo/odoo#231256
2 changes
Resolved issues and error corrections
Odoo now reliably hides the Raspberry Pi 5’s built-in serial port from the device list, even on newer Raspberry Pi OS versions. This prevents an internal port from appearing as if it were an available external device, which avoids confusion and misconfiguration.
Original PR description
The serial interface previously included a filter to not include the built-in serial port on the Pi 5, however this filter is now broken in Raspberry Pi OS Trixie. To ensure the filter works in all versions, we now explicitly look for the device `/dev/ttyAMA10` and ignore it. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#235074
10 changes
Resolved issues and error corrections
This update simplifies a styling workaround used in spreadsheet side panels. It helps keep the interface consistent while reducing overly complex rules that could make future maintenance harder.
Original PR description
Because of a really strong rule in o_spreadsheet lib that forced the box-sizing property pretty much everywhere, we came up with a super dense rule to counteract it inside odoo and specifically inside the side panels. This commits aims to simplify it at best with the common denominator of those rules. Task-4878174 Forward-Port-Of: odoo/enterprise#99240 Forward-Port-Of: odoo/enterprise#98876
14 changes
Resolved issues and error corrections
This update simplifies a complex styling rule used in the spreadsheet side panels. It keeps the interface looking correct while making the code easier to maintain and less fragile going forward.
Original PR description
Because of a really strong rule in o_spreadsheet lib that forced the box-sizing property pretty much everywhere, we came up with a super dense rule to counteract it inside odoo and specifically inside the side panels. This commits aims to simplify it at best with the common denominator of those rules. Task-4878174 Forward-Port-Of: odoo/enterprise#99240 Forward-Port-Of: odoo/enterprise#98876
7 changes
Resolved issues and error corrections
The system now correctly ignores the Raspberry Pi 5’s built-in serial port, which was being shown by mistake on newer Raspberry Pi OS versions. This prevents an internal device from appearing as if it were an available serial connection, reducing confusion and setup errors.
Original PR description
The serial interface previously included a filter to not include the built-in serial port on the Pi 5, however this filter is now broken in Raspberry Pi OS Trixie. To ensure the filter works in all versions, we now explicitly look for the device `/dev/ttyAMA10` and ignore it. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#235074
7 changes
Resolved issues and error corrections
Expense report approvals now record the exact approval timestamp instead of reusing the same time for every record. This ensures list views and records show when each expense was actually approved, improving accuracy and auditability.
Original PR description
**Steps to reproduce:** - Install hr_expense and studio - Open Expense Reports and add the `approval_date` field to the list view - Create multiple new expenses, submit them, and approve each one - Go back to the Expense Reports list — notice that all records show the same approval time **Issue:** - The `approval_date` field always shows the same time for all approvals, regardless of when each expense was approved. **Cause:** https://github.com/odoo/odoo/blob/b093786714e9e8567cf75abf78ac3d954a3d89b2/addons/hr_expense/models/hr_expense_sheet.py#L664-L668 - The field `approval_date` is a datetime field, but only the date was being set during approval, causing all approvals to default to the same time. **Solution:** - Pass the current datetime (localized to the user’s timezone) instead of only the date when setting the approval date. --- opw - 5134045 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update fixes the Italian electronic document type names and their translations. It helps users see the correct labels when creating invoices and related documents, reducing confusion and improving consistency with the official format.
Original PR description
Simplified and fixed labels and labels translations. Ref: https://help.fattureincloud.it/help/articolo/544-crea-autofattura-elettronica Ref: https://fex-app.com/FatturaElettronica/FatturaElettronicaBody/DatiGenerali/DatiGeneraliDocumento/TipoDocumento Forward-Port-Of: odoo/odoo#235374 Forward-Port-Of: odoo/odoo#233943
Connecting a bank with payments disabled no longer creates an alarming error report. The system now treats this expected setup condition as a warning, reducing false error alerts while keeping the bank connection flow clearer for users and support teams.
Original PR description
Currently, an error occurs when a user connects a bank that has payments not enabled. **Steps to replicate:** * Install `account_online_payment` * Invoicing > Bank > dropdown menu and connect the…
Currently, an error occurs when a user connects a bank that has payments not enabled. **Steps to replicate:** * Install `account_online_payment` * Invoicing > Bank > dropdown menu and connect the demo bank. **Error:** `Non-blocking error during payment activation: To activate payments, you must first enable them when connecting a bank account.` **Root cause:** * The error happens because payment is disabled on the bank page. As `is_payment_enabled` is `False` in the `data` at [1], which comes from [2],and that `data` comes from a response in the super call at [3]. **Solution:** * Since this error comes from a `UserError`, it would be better to use logger warning instead of logger error. [1]: https://github.com/odoo/enterprise/blob/b5ff6fff193a7197b3983985c8af13512d677146/account_online_payment/models/account_online_link.py#L18 [2]: https://github.com/odoo/enterprise/blob/b5ff6fff193a7197b3983985c8af13512d677146/account_online_payment/models/account_online_link.py#L24 [3]: https://github.com/odoo/enterprise/blob/b5ff6fff193a7197b3983985c8af13512d677146/account_online_synchronization/models/account_online.py#L963-L970 sentry-6936347663 Forward-Port-Of: odoo/enterprise#99227
This fixes an intermittent issue where moving articles in the Knowledge sidebar could prevent the next selected article from opening correctly. Users should see more reliable editing behavior after reorganizing Knowledge articles.
Original PR description
Before this commit, the `test_knowledge_main_flow` tour sometimes failed. That tour creates articles, then d&d one of them in the sidepanel to re-organize articles, and then clicks on a previously…
Before this commit, the `test_knowledge_main_flow` tour sometimes failed. That tour creates articles, then d&d one of them in the sidepanel to re-organize articles, and then clicks on a previously created article to continue editing it. The tour failed on that step, as the previously created clicked article wasn't properly selected/displayed in the editor. The race condition was that two (non synchronized) calls to the `load` function of the model were done: one after the move because the move could have altered the displayed article (1) and one because we selected another article to open by clicking in the sidebar (2). (1) is done without resId (reload the current article) and (2) is done with the id of the clicked article. Depending on the order these two calls are done, we end up with the clicked article displayed (if (2) is done after (1)), or with the current article still displayed, but reloaded ((1) done after (2)). This commit fixes the race condition by forcing the reload of the current record for (1), instead of blindly reloading the model, which might have changed/been requested something else meanwhile. runbot error~182073 Forward-Port-Of: odoo/enterprise#99174
BACS payment export files now correctly round payment amounts when converting pounds to pence. This prevents rare cases where amounts such as £645.30 could be exported as one penny less, helping avoid payment discrepancies.
Original PR description
**Issue description:** When creating a BACS batch payment that contains a payment with an amount that can't be represented well in float (like 645.30), the generated BACS batch file will have a wrong amount (due to float precision) as the amount is represented in pence. **Steps to reproduce:** 1. Create a BACS vendor payment with amount = 645.30 2. Add this payment to a BACS batch payment. 3. Confirm the batch to generate the export file. In the file you will notice that the amount in the payment line is 64529 pence instead of 64530. opw-5159413 Forward-Port-Of: odoo/enterprise#99180
Opening Studio on calendar views now works even when a calendar field is limited to specific user groups. This prevents an unexpected crash and lets authorized users continue editing calendar views normally.
Original PR description
Have a calendar view that has a field A. the field A has a group on it, defined either in python or in the XML. Before this commit, opening studio in the calendar view crashed, because calendar did not support yet those fields that are marked with studio_no_fetch in their attributes. After this commit, there is no crash Forward-Port-Of: odoo/enterprise#99254 Forward-Port-Of: odoo/enterprise#98903
The document sharing panel now shows the correct guidance for the “Access through link” option. This avoids confusion when users configure link-based access, helping them understand the sharing settings more accurately.
Original PR description
This commit fix the helpers for the 'Access through link' option where a condition was mistakenly depending on internal access option. Task-5222910 Forward-Port-Of: odoo/enterprise#98450
This fix prevents an error in Belgian POS certification when a pro forma request finishes after the related order has already been deleted. It helps keep the checkout flow stable by confirming the order still exists before updating it.
Original PR description
Before this commit, when trying to send a pro forma for an order that had been deleted while the pro forma call was in the queue, a JS error would occur because the callback of the call would try to access the order which was no longer existing in the frontend. This is now fixed by checking that the order is still present before accessing it in the callback. Forward-Port-Of: odoo/enterprise#99248
This change adds a regression test to ensure employees with fully flexible schedules can have overlapping absences, such as sick leave and a public holiday, without payroll work entry generation failing. It helps protect payroll reliability for attendance-based contracts by preventing a previously reported error from returning.
Original PR description
**Purpose:** Add regression test to verify that overlapping leave scenarios (sick leave + public holiday) do not cause singleton errors for fully flexible employees using attendance-based work entries. **Test Coverage:** - Fully flexible employee with no calendar assignment - Attendance-based work entry source configuration - Overlapping sick leave and public holiday scenario - Work entry generation and validation without singleton errors Related : [PR](https://github.com/odoo/odoo/pull/223448) opw-4979974 Forward-Port-Of: odoo/enterprise#97947 Forward-Port-Of: odoo/enterprise#93902
This update removes leftover code from a previous reconciliation model change in the accounting tools. It helps keep the system easier to maintain without changing how users work with reconciliation.
Original PR description
In the PR (odoo/enterprise#80787) the reconciliation model was refactored in order to be easier to use for users. However, some dead code was forgotten and not removed. Forward-Port-Of: odoo/enterprise#98923
The Ask AI command no longer shows empty quotation marks when the command palette search field is blank. This removes a small visual glitch and makes the command label clearer for users.
Original PR description
Before, the "Ask AI" command in the command palette would always display quotes around the search term, even if the input was empty, showing "". Now, the quotes are conditionally rendered only when a search value is present, preventing empty quotes from appearing. task-[5262111](https://www.odoo.com/web#id=5262111&view_type=form&model=project.task) # Before https://github.com/user-attachments/assets/1bb98920-5ec2-48c3-9c13-1e49b8ab5ed4 # After https://github.com/user-attachments/assets/3c985951-a64c-4426-97de-1cdcdd572f0b
This fix prevents an unnecessary error message from appearing when a user connects a bank account that does not have payments enabled. The bank connection still works as expected, but the system now handles this situation more appropriately and avoids alarming users with a non-blocking issue.
Original PR description
Currently, an error occurs when a user connects a bank that has payments not enabled. **Steps to replicate:** * Install `account_online_payment` * Invoicing > Bank > dropdown menu and connect the…
Currently, an error occurs when a user connects a bank that has payments not enabled. **Steps to replicate:** * Install `account_online_payment` * Invoicing > Bank > dropdown menu and connect the demo bank. **Error:** `Non-blocking error during payment activation: To activate payments, you must first enable them when connecting a bank account.` **Root cause:** * The error happens because payment is disabled on the bank page. As `is_payment_enabled` is `False` in the `data` at [1], which comes from [2],and that `data` comes from a response in the super call at [3]. **Solution:** * Since this error comes from a `UserError`, it would be better to use logger warning instead of logger error. [1]: https://github.com/odoo/enterprise/blob/b5ff6fff193a7197b3983985c8af13512d677146/account_online_payment/models/account_online_link.py#L18 [2]: https://github.com/odoo/enterprise/blob/b5ff6fff193a7197b3983985c8af13512d677146/account_online_payment/models/account_online_link.py#L24 [3]: https://github.com/odoo/enterprise/blob/b5ff6fff193a7197b3983985c8af13512d677146/account_online_synchronization/models/account_online.py#L963-L970 sentry-6936347663
The Discuss message list in the white theme has been visually adjusted to be easier to read. Message borders are now less distracting, and author names stand out more clearly from the message text, making conversations less tiring to scan.
Original PR description
- reduce slightly message border opacity, so that they are less distracting than message list content itself. - add more weight on message author names so they are more distinct more message text content. Harmonize weight in message reply but with reduced opacity. These changes should make using Discuss in white theme less fatiguing. Before <img width="953" height="791" alt="Screenshot 2025-11-12 at 18 29 01" src="https://github.com/user-attachments/assets/dc9f37d2-acea-44ae-99e7-e3ecdcc40a9d" /> After <img width="962" height="789" alt="Screenshot 2025-11-12 at 18 29 09" src="https://github.com/user-attachments/assets/0239f581-a344-44e1-9a84-0e7877cab047" />
This change fixes the appearance of text fields shown inside image captions so they no longer display with a dark gray background. It improves visual consistency and makes captions look cleaner in the editor.
Original PR description
### Purpose of this PR: - Set the default background of inputs inside `<figcaption>` to transparent. This prevents them from appearing dark gray (rgb(59,59,59)) in caption. task-5122745 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#230238
This change removes an unnecessary test-only setting from a self-order payment tour. It helps avoid errors when developers run Odoo in debug mode locally, without affecting normal usage.
Original PR description
In this commit: - Removed the `test: true` flag from the `test_kiosk_cart_restore_and_cancel` tour. - The flag is not required for tours and can cause issues when running in debug mode. - This issue only occurs in local environments when debug mode is enabled. - After this fix, no issue is generated in debug mode. Forward-Port-Of: odoo/odoo#234101
This update stops blank badges from appearing in list views. It makes the interface cleaner and avoids confusing users with empty status indicators.
Original PR description
A condition was added in the check of listBadgeSelectionField in order to prevent the display of empty badges. task-5096109
The follow-up toggle is now shown only on invoices, where it is relevant. This avoids confusion on other document types and makes the follow-up settings clearer for users.
Original PR description
No followup makes only sense for invoices. Therefor hide the toggle on other move types.
The sample data ribbon is no longer shown by the shared action helper component. This cleans up the interface so users see a more consistent experience across affected screens.
Original PR description
This commit fully removes the prop `showRibbon` from the `ActionHelper` component.
This change removes the sample data ribbon that could appear in action helper views. It helps keep these screens cleaner and avoids showing an indicator that is no longer needed.
Original PR description
This commit fully removes the use of the sample data ribbon from the action helper. Following #233205.
This update corrects and simplifies the labels used for Italian electronic document types, including their translations. It helps ensure users see the right wording when creating or managing these documents, reducing confusion and translation inconsistencies.
Original PR description
Simplified and fixed labels and labels translations. Ref: https://help.fattureincloud.it/help/articolo/544-crea-autofattura-elettronica Ref: https://fex-app.com/FatturaElettronica/FatturaElettronicaBody/DatiGenerali/DatiGeneraliDocumento/TipoDocumento Forward-Port-Of: odoo/odoo#235374 Forward-Port-Of: odoo/odoo#233943
The system now correctly ignores the Raspberry Pi 5 built-in serial port when listing available devices. This prevents a built-in hardware port from appearing as if it were an external device, which helps avoid confusion and incorrect configuration.
Original PR description
The serial interface previously included a filter to not include the built-in serial port on the Pi 5, however this filter is now broken in Raspberry Pi OS Trixie. To ensure the filter works in all versions, we now explicitly look for the device `/dev/ttyAMA10` and ignore it. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#235074
This update prevents an unexpected scrollbar from appearing in certain website editing scenarios when hidden text is present inside a table of contents. It improves the editing experience in Chrome, Edge, and Safari by keeping the page layout stable.
Original PR description
This is a known issue [1] in bootstrap, which displays an unexpected scrollbar when we have a visually-hidden text in the table. The issue occurs in Chrome, Edge and Safari, but does not in Firefox. **Steps to see the issue:** - Open website and start editing - Drop a table of content - Drop inside of the ToC a donation snippet - Click on the donation amounts form => A scrollbar appears. The visually-hidden spans are present since [2], but the problem couldn't be seen until commit [3] removed the `overflow: hidden` style. [1]: https://github.com/twbs/bootstrap/issues/41554 [2]: https://github.com/odoo/odoo/commit/faafb913a0af5c4bfa7d207e09bbea0d97125aed [3]: https://github.com/odoo/odoo/commit/10156c10b09dc502a40253d64e2505e817a520bf task-5169275 Forward-Port-Of: odoo/odoo#232086
This update removes leftover unused code from the account reconciliation feature after a previous redesign. It does not change the user experience, but it helps keep the codebase cleaner and easier to maintain.
Original PR description
In the PR (odoo/enterprise#80787) the reconciliation model was refactored in order to be easier to use for users. However, some dead code was forgotten and not removed. Forward-Port-Of: odoo/enterprise#98923
This change fixes a case where an empty document list was handled incorrectly in the Sign interface. It helps ensure the dropdown only appears when there are actually documents to show, avoiding confusing behavior for users.
Original PR description
An empty list is true in JS, so we check the length of the list
This update corrects how the system reads a configuration setting used during journal setup for ISO 20022 payments. It helps ensure the right settings are available when needed, reducing the chance of errors in payment configuration.
This change makes drag-and-drop test steps finish cleanly before a test ends. It helps prevent flaky test results and makes the test suite more reliable.
Original PR description
Since drag sequences are automatically canceled at the end of tests, 'cancel' or 'drop' calls should be properly awaited before the end of a test. This commit ensures that these actions are properly finished before a test ends. Community: https://github.com/odoo/odoo/pull/235359
This change improves automated web tests by ensuring unfinished drag actions are properly canceled at the end of each test. It prevents stray asynchronous errors from appearing after tests complete, making test results more reliable and easier to trust.
Original PR description
Before this commit, when initiating an unfinished drag sequence (i.e. calling `drag` without `drop` or `cancel`), the drag sequence was ended by destroying the component, which could throw asynchronous errors after the test finished. One possible fix would be to wait for these errors upon ending a test, but this process is handled by Owl and through a possible chain of promises, which would have to be accounted for by an arbitrary amount of 'animationFrame' or 'advanceTime' calls. Instead, the `contains...drag` and `contains...dragAndDrop` now handle a single drag sequence at a time, with a systematic cleanup after each test in case a drag sequence has been left pending. In such cases, the sequence is canceled. Enterprise: https://github.com/odoo/enterprise/pull/99369 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change fixes an occasional test failure in the web interface by waiting for the error dialog to actually appear before checking for it. It makes automated testing more reliable and helps prevent flaky build results.
Original PR description
Before this commit, the test sometimes failed because we didn't wait enough before checking the presence of the error dialog. The `unhandledrejection` event being thrown asynchronously, simply waiting for an animation frame isn't enough. We can only wait for the dialog to be displayed. runbot error~234017 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 makes interactive tours handle warning steps correctly when going backward. If a previous step is only meant to be skipped, the tour will no longer stop on it or briefly focus the wrong place before moving on. This makes tour navigation more reliable and avoids confusing behavior during guided flows.
Original PR description
Before this commit, the backward wasn't ignoring the warn steps. So, if the backward go to the previous step (warn's one) and the trigger is on the page, the tour interactive put the cursor there. But the step is then ignored and go back the step you came from. Now, the warn's steps are ignored. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change makes several editor tests more reliable by giving each test its own time allowance instead of sharing one across all of them. It helps prevent false failures on slower test servers, improving confidence in the quality of future releases.
Original PR description
Split the test timer between the four tests rather than applying
a single timer over all of them, for when the runbot is slower.
runbot-233975The description field on e-waybill stock entries can no longer be edited manually. This helps keep the information consistent and reduces the risk of accidental changes to shipment details.
Original PR description
This **PR** makes the description on ewaybill stock readonly. ref - https://github.com/odoo/odoo/pull/228548/commits/285fffe6b0c90b9e37815cb4064b0108a5e8e6ac
This update sends the database identifier to Odoo's internal app service when SMS-related requests are made. It helps support teams more quickly pinpoint the right customer database and debug issues when a problem is reported.
Original PR description
Send the db_uuid to IAP such that we can more easily debug and support our users in case of a problem. task-none Forward-Port-Of: odoo/odoo#233912
This fix restores the ability to delete selected digits in the VoIP dial pad when the selection starts at the beginning of the field. It keeps the existing cursor protection in place while making backspace behave as users expect.
Original PR description
This commit fixes a regression introduced in commit [1] prevented deleting when a selection began at index 0; extend the guard so the numpad (keypad) backspace still removes the highlighted characters while keeping the cursor-safety logic. [1]: https://github.com/odoo/enterprise/commit/73b01fa5e1f56d4ab71d67760b15942fb2fa0e31 task-5217676
This change updates the internal documentation for self-ordering so it matches the way order references are now generated. It does not change customer-facing behavior, but it helps prevent confusion for future maintenance and support work.
Original PR description
**Description of the issue/feature this PR addresses:** When calculating the order's `order_reference`, we'd use the order's `table.id` as the reference's middle constituent. This was changed in 16.5 in [odoo/odoo:e512634935aa](https://github.com/odoo/odoo/pull/133902), from when on we used the order's `config.id` instead of its table - but the docstring was never updated to reflect the change. This commit fixes that. **Current behavior before PR:** Docstring referenced the table.id **Desired behavior after PR is merged:** Docstring references the config.id. The whole pos_reference generation was revamped in [odoo/odoo:76336f6123a6](https://github.com/odoo/odoo/pull/183085) in 18.1, so this only affects versions 17.0 and 18.0.
Event registration emails now omit the ticket price when the total amount is zero, such as for fully discounted registrations. This avoids confusing attendees with a price that they do not actually need to pay.
Original PR description
Steps to reproduce: 1. Create a new sale order with an event ticket line 2. Apply a 100% discount on the ticket line 3. Confirm the sale order 4. Check on the new attendee created, the mail sent to the attendee. Current behavior: The email shows the unit price without the discount applied which can be confusing for the customer as it might look like they need to pay that amount. After this commit: The email will just show the confirmation of the registration to the event withouth mentioning the price when the total price is 0. opw-5122776 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
A sales test was moved to the module that actually provides the field it checks. This prevents build failures in simpler installations and localization-related test runs.
Original PR description
In this commit https://github.com/odoo/odoo/pull/230053/commits/fefc7c0ba34217c3df4b7309e0986751390dc5ce we introduce a test that is using sale_order_option_ids field in sale but this field is introduced in sale_management causing a failure in single app tests build and in localization builds. runbot-233962