Daily updates from Odoo
Monday, December 2, 2024
21 changes · 18.0
Resolved issues and error corrections
The To-Do app chatter panel now stays within its intended area when activities contain long descriptions. This prevents the page layout from stretching unexpectedly, making the interface easier and more reliable to use.
Original PR description
Steps to Reproduce: - Open the To-Do app and click on the chatter icon. - Create an activity with a long description. - As the description increases, the chatter expands beyond its intended area. Issue: - The chatter did not have a fixed length, causing it to expand with long descriptions . After PR: - The chatter section now maintains a consistent fixed size. task-4256985 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
When tasks or applicants are created by email, stage update messages now include the original sender instead of incorrectly excluding them as the message author. This ensures customers, portal users, or applicants receive expected status notifications after their email creates a record.
Original PR description
The issue occurs when an email is sent to create a `project.task`. If the sender of the email is an existing user, this user is later set as the author of any outgoing emails related to that task. Since the system is configured to skip sending emails to the author, no email is delivered to the sender in this scenario. Reproduce --- - -i project,contacts - add `example.com` to domains in the settings - create new project with an alias: `project@example.com` - Have a stage with some "Email Template" set - send email creating project tasks as a portal user - BUG: email about stage update is NOT sent (even tho task appeared in stage) opw-3941928
The screen sharing icon in Odoo Discuss now turns green when screen sharing is active. This makes it easier for users to quickly confirm that their screen is being shared during a call.
Original PR description
Current behavior before PR: The screen share icon did not reflect any change when screen sharing was active Desired behavior after PR is merged: The screen share icon now turns green to indicate that screen sharing is active --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Point of Sale product options are now easier to select because the option text works together with the radio button. This improves accessibility and makes configuration smoother for cashiers and other users.
Original PR description
Description of the issue/feature this PR addresses: Ensures proper association between `<span> `elements and corresponding `<input>` elements by making the `<span> `act as a label for better accessibility and user experience. Current behavior before PR: The `<span>` displaying the attribute name is not linked to the corresponding `<input>` radio button. Users must click the radio button itself to select an option. Desired behavior after PR is merged: The `<span> `acts as a clickable label for the corresponding `<input>` radio button, allowing users to click either the text or the radio button to select an option. This improves accessibility and enhances the user experience. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update simplifies the Jordan e-invoicing process by removing an unnecessary repeated processing step. It does not change how invoices are sent, but makes the code easier to understand and maintain, reducing the chance of future mistakes.
Original PR description
The method _l10n_jo_edi_send always expects a single invoice. Therefore, the loop over the recordset makes no sense, and is misleading to whoever reads the code. task-3895493 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix stops embedded action data from carrying over when users open a normal action from an embedded one. It prevents the wrong action bar from appearing and avoids crashes caused by using records from the wrong business object.
Original PR description
Before this commit, when executing a regular action from an embedded one, the context wasn't cleared, so all the embedded action feature related keys were propagated to the regular action. As a consequence, the embedded actions bar was displayed on that action as well. Clicking on an item most certainly led to a crash, because a wrong active id (referring to anothe res_model) would be used. For instance 1) Go to Project 2) Open "AGR - S00080 - Sales Order" 3) Add Sales order embedded action 4) Click Sales order 5) Enter a sales order that has tasks or a service product 6) Click the Tasks smart button 7) The embedded actions bar is displayed and, it crashes if an item is clicked opw~4253958 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
OAuth login routes are no longer treated as read-only because they may need to create a user account or record a login event. This prevents failed sign-ins caused by the system blocking required database updates during authentication.
Original PR description
Follow-up of #186319 and #186786 These routes are auth=none but aren't technically read-only, as they can create the user record and need to record the login event anyway. The signin one even as a broad catch for Exception, which would prevent the readonly->read-write fallback to work, leading to a failed login.
Message tracking updates now correctly display the word 'none' when that is the intended value. This prevents blank entries in message histories, making changes clearer for users reviewing updates.
Original PR description
Previously, in the mail message body, setting any tracking value to 'none' would result in an empty value instead of showing 'none'. This commit addresses the issue, ensuring 'none' is displayed as expected. Task-4282534
Invoices now correctly account for online down payments that were made before the invoice existed, even when those payments do not create accounting journal entries. This prevents customers from being asked to pay more than the actual order total and keeps invoice and portal payment displays accurate.
Original PR description
Steps to reproduce: - Install sign; account; sales - Payment Providers > Enable Demo - Sales app > New Quotation > Other Info tab > Online Payment: 50% - Preview > Sign and pay > Make the 50% down…
Steps to reproduce: - Install sign; account; sales - Payment Providers > Enable Demo - Sales app > New Quotation > Other Info tab > Online Payment: 50% - Preview > Sign and pay > Make the 50% down payment - Back to SO > Create invoice > Regular invoice > Confirm > Preview Coupled with https://github.com/odoo/enterprise/pull/74108 The down payment amount is not deducted from the invoice, meaning we essentially force the customer to pay 150% of the total price. This is a by-product of the rework 01b87f1230beac0568f4e3b1b76e547909506892 which made the creation of journal entries optional, on which the invoice was previously dependant to track existing payments. Since the first payment here is made before any invoice is created, we want to create a separate payment with no associated journal entry (See the rework commit for more details on why we would want to do that, but in short we don't necessaily want to track payments that could be cancelled, etc...). However the matched_payment_ids on the invoice we create afterwards is not updated correctly, and above all the field is not taken into account by many views and functions which still assume there will be a corresponding account_move. This fix mostly aims to recompute the amount_residual of the invoice since that is the source most places draw from, and to reestablish the customer displays to prevent excessive payments from being made. To avoid disturbing other functions which could depend on the edited method payment_content is being kept separate (Not all fields are available without an account move so we would risk accessing missing fields unexpectedly by mixing them with regular move lines. opw-4208717 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents payment post-processing from failing when a journal has more than one payment method line. It helps ensure online or point-of-sale payments can complete reliably instead of being blocked by a configuration-related error.
Original PR description
Currently, an exception is generated at the time of the post-processing payment transaction. error: ``` ValueError: Expected singleton: account.payment.method.line(11, 12) File…
Currently, an exception is generated at the time of the post-processing payment transaction.
error:
```
ValueError: Expected singleton: account.payment.method.line(11, 12)
File "addons/payment/models/payment_transaction.py", line 852, in _cron_post_process
tx._post_process()
File "addons/pos_online_payment/models/payment_transaction.py", line 29, in _post_process
super()._post_process()
File "addons/website_payment/models/payment_transaction.py", line 14, in _post_process
super()._post_process()
File "addons/sale/models/payment_transaction.py", line 91, in _post_process
super(PaymentTransaction, done_tx)._post_process() # Post the invoices.
File "addons/account_payment/models/payment_transaction.py", line 122, in _post_process
tx.with_company(tx.company_id)._create_payment()
File "addons/account_payment/models/payment_transaction.py", line 163, in _create_payment
'payment_method_line_id': payment_method_line.id,
File "odoo/fields.py", line 5287, in __get__
raise ValueError("Expected singleton: %s" % record)
```
The above exception was generated because we got multiple payment method lines in a single journal.
This commit fixes the above issue by accessing the first payment method line.
sentry-6007333118Employee remaining leave balances now exclude time off types that are hidden from the dashboard. This prevents employees and managers from seeing inflated or confusing leave totals based on leave categories that should not be displayed.
Original PR description
This commit excludes the time off types which are hidden from dashbaord in the count of employee's remaining leaves. task-4268945 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
New databases now include a second default follow-up reminder level, so overdue invoices can receive a gradual sequence of reminders instead of only one. Demo cleanup also prevents deleted snailmail follow-up records from being recreated during module updates.
Original PR description
The second level already configured in demo has been moved in data because having only one follow-up level in a new database is a bit weird. Not only does it look weird, but in practice it also leads to a weird situation that by default the invoices will only be reminded once and never after. + we're failing to convey the usefuleness of the feature of building gradually harded reminders for the partner. Also added forcecreate="False" in snailmail demo data, because we don't waznt to recreate the missing xml ids (if people deleted it) in every module's update. task-4334758
Project managers can now create document folders from project settings without hitting an access error in demo scenarios. Project document links also open the more useful folder document view, making it easier to manage centralized project documents.
Original PR description
Commit 1: Reproduce: 1. Open a project's settings as Admin/Demo (project managers) 2. Make sure "Use Documents" is checked 3. Try quick creating a folder 4. Access Error This occurs because you are not allowed to create in the restricted "Projects" folder. This commit adapts demo data so that flows can easily be demonstrated and tested without requiring extra configuration steps for a common flow. Commit 2: Quick create folders instead of requests to centralize projects' documents. Also, the `documents_folder_many2one` widgets links to the documents kanban view of the folder instead of the less useful form view, as it is done in the other apps and bridges. Task-4344434
This update fixes several issues in Documents, including preventing employees from being automatically granted access to employee-related documents, improving the My Documents and Shared With Me filters, and avoiding crashes when shortcuts point to inaccessible files. It also reduces clutter from frozen spreadsheet folders in Home, making document navigation faster and clearer for users.
Frozen shared spreadsheets are now excluded from the list of available spreadsheets when inserting pivot data. This prevents users from selecting spreadsheets that should no longer be edited, reducing confusion and avoiding failed or inappropriate updates.
Original PR description
Steps to reproduce: - create a spreadsheet - Freeze and Share this spreadsheet - go to a pivot view and hit "Insert in spreadsheet" => the frozen spreadsheet is included in the dialog Task: 4353076
This fix updates the website shop rental flow so unavailable dates are identified more accurately during checkout tests. It helps prevent errors when customers choose rental dates, reducing the risk of blocked or confusing purchase flows.
Original PR description
The previous fix (odoo/enterprise#74860) was incomplete as out of range date also have the .o_date_item_cell class. Runbot Error 108371
This corrects the translation configuration for the FedEx delivery integration. It helps ensure translation updates are managed properly, with no expected change to day-to-day user workflows.
The point of sale quantity control now correctly changes a product quantity to a negative value when the +/- button is pressed. This prevents unexpected zero quantities and supports more accurate adjustments such as returns or corrections.
Original PR description
Before this commit ------------------------ Previously, when adding a product and clicking the "+/-" button, the quantity would change to "0" instead of becoming negative. After this commit ---------------------- After implementing this commit, pressing the +/- button now results in the quantity value changing to negative instead of changing it to 0. task- 4281516 Related PR: https://github.com/odoo/odoo/pull/185441/
Invoices now correctly account for online down payments made before the invoice exists, even when those payments do not create accounting journal entries. This prevents customers from being asked to pay more than the actual order total and keeps invoice payment information accurate.
Original PR description
Steps to reproduce: - Install sign; account; sales - Payment Providers > Enable Demo - Sales app > New Quotation > Other Info tab > Online Payment: 50% - Preview > Sign and pay > Make the 50% down…
Steps to reproduce: - Install sign; account; sales - Payment Providers > Enable Demo - Sales app > New Quotation > Other Info tab > Online Payment: 50% - Preview > Sign and pay > Make the 50% down payment - Back to SO > Create invoice > Regular invoice > Confirm > Preview Coupled with https://github.com/odoo/odoo/pull/185645 The down payment amount is not deducted from the invoice, meaning we essentially force the customer to pay 150% of the total price. This is a by-product of the rework 01b87f1 which made the creation of journal entries optional, on which the invoice was previously dependant to track existing payments. Since the first payment here is made before any invoice is created, we want to create a separate payment with no associated journal entry (See the rework commit for more details on why we would want to do that, but in short we don't necessaily want to track payments that could be cancelled, etc...). However the matched_payment_ids on the invoice we create afterwards is not updated correctly, and above all the field is not taken into account by many views and functions which still assume there will be a corresponding account_move. This fix mostly aims to recompute the amount_residual of the invoice since that is the source most places draw from, and to reestablish the customer displays to prevent excessive payments from being made. To avoid disturbing other functions which could depend on the edited method payment_content is being kept separate (Not all fields are available without an account move so we would risk accessing missing fields unexpectedly by mixing them with regular move lines. opw-4208717
WhatsApp conversations that have been inactive are now automatically unpinned after 5 days instead of 2 weeks. This helps prevent teams with high WhatsApp message volumes from hitting conversation limits that can slow down Discuss.
Original PR description
Follow-up of https://github.com/odoo/enterprise/pull/74131 PR above attempts to solve an issue of every-growing unpinned whatsapp conversations that make it harder to use Discuss for performance reasons, due to reaching the technical limit of around 2000 pinned conversations. To do so, it automatically forces unpinning whatsapp conversation after 2 weeks of inactivity, even if the conversation was unread. While this is an improvement, if there are around 150 whatsapp new whatsapp conversations made every day, then the 2 week force unpin is not enough, because the 2000 pinned conversation limit is reached. This commit fixes the problem by reducing the force unpin of whatsapp conversation to 5 days. The architecture of Discuss should scale better, but this is hardly achievable in short manner, hence why the current solution to this problem is prevent reaching a high amount of pinned conversations. opw-4330847
Appointment notifications in the chatter no longer show unwanted extra spacing. This makes messages look cleaner and easier to read without changing appointment behavior.
Original PR description
Purpose of this commit: This commit resolves an issue in the appointment module where system notifications in the chatter were displaying with unnecessary padding in the message body. Before  After  task-4291913