Daily updates from Odoo
Thursday, November 7, 2019
17 changes
Enhancements to existing features
Mass mailing and SMS templates now get the same dynamic placeholder helper already available for email templates. This makes it easier for users to personalize campaigns consistently while reducing duplicated code behind the scenes.
Original PR description
Add a page with the dynamic placeholder generator just as it already exists on mail.templates. TASK-ID : 2070612 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Point of Sale can now postpone stock picking creation until the session is closed, instead of creating one for every order during synchronization. This should make syncing large batches of POS orders faster, while businesses that need real-time stock updates can still enable per-order picking creation.
Original PR description
When you have a lot of pos order to synchronize with Odoo, it may take a lot of time because it has to create a picking for each order. So we've added an option in the settings that will create the picking at the end of the session. So the new option by default is creating the picking at session closure, and if you need a real time stock you can enable the creation of picking for each order. TASK-ID: 2082064 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
The technical administration menus for email and Discuss have been reorganized to make them easier to navigate. Administrators also gain direct access to notification records, improving visibility when investigating messaging activity.
The lead feedback modal now uses clearer, grammatically correct wording when partners explain why they are not interested in a lead or confirm customer contact. This improves professionalism and reduces confusion for users providing lead feedback.
Original PR description
These sentences weren't correct: Why aren't you interested **by** this lead? => Why aren't you interested **in** this lead? **Do you** have contacted the customer? => **I** have contacted the customer task-1838187 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
Mobile Kanban views now load all columns upfront instead of waiting until users swipe to each one. This reduces repeated loading delays and makes moving between columns feel faster and more seamless, especially on mobile devices.
Original PR description
We remove the lazy loading currently used by the mobile kanban to avoid the poor user experience given by the kanban navigation tabs with given multiple waiting due to multiple loading time. Task ID: 1896614
The accounting reversal wizard now keeps track of all newly created reversal entries. This helps related processes, such as helpdesk ticket billing links, correctly connect invoice lines even when multiple reversals are created.
Original PR description
Add new move reversal line in wizard model, those new_move_ids are useful for the override in helpdesk. id=2017554 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The configuration help text now makes it clear that memory limit values must be entered in bytes. This helps first-time Odoo deployments avoid confusion and reduces the chance of incorrect server settings.
Original PR description
When you deploy Odoo for the first time, it is not explicit that you must enter a value in bytes for these specific parameters.
When an existing task is linked under a parent task, Odoo now keeps key details already set on the child task instead of silently replacing them with the parent's values. Parent task values such as customer, contact email, project, and sales order line are only copied when the child task does not already have them, reducing confusion and preserving user-entered information.
Original PR description
Purpose ======= When you create a task independently and link it to a Parent task later on, several changes are applied: the person assigned on the sub-task switches to the one set on the parent…
Purpose ======= When you create a task independently and link it to a Parent task later on, several changes are applied: the person assigned on the sub-task switches to the one set on the parent task, same for the customer, and so on. This creates frustration because the user most likely set specific data on the sub task for a reason. In addition, the changes are made implicitely, so the user might not notice it or get confused as to what changed from the original task. Specification ============= Values for fields `partner_id`, `email_from`, `sale_line_id` should be transfered from parent task to children task, only if the value is not already set on the child. This was already partially implemented by 749810a and 45396f7. But to achieve it, similar code was duplicated in several methods: default_get, onchanges, write, create. Since the new ORM, the same behavior can be achieved with only computed fields with store=True and readonly=False. This commit changes the previous implementation to take advantage of this which greatly improves code readability and maintainability. Tests by Maximilen Larue Business code by Lucas Lefèvre Co-authored-by: MaxLarue <mla@odoo.com> -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change improves Odoo's internal test framework so cleanup actions run more reliably when shared test setup fails. It helps reduce leftover test data and unstable database states, making automated testing safer and more dependable for future development.
Original PR description
This commit backports bpo-24412, which allows the definition of class cleanups (addClassCleanup) similar to instance cleanups (addCleanup). This is useful for tests that override unittest's setUpClass (a LOT) and could crash during its execution: If this happens, it is possible that a bunch of crap is left in the database or even worse, the cursor becomes completely fucked; Thanks to the addClassCleanup, we can undo the damage done by the setUpClass.
Sales teams can now cancel confirmed sales orders even when products have already been delivered or invoices have been created. The update also cancels remaining deliveries and draft invoices, helping keep orders, deliveries, and billing aligned when a sale is reversed.
Original PR description
task - https://www.odoo.com/web#id=1919761&action=327&model=project.task&view_type=form&menu_id=4720 pad - https://pad.odoo.com/p/r.ccd8c8f09e90b22b4ccd660d31d7e3f4
The website form builder is easier and safer to use, with better keyboard focus in dialogs, clearer radio and checkbox layouts, and a warning before changes that could remove existing fields. Users can also add email fields and new fields now better match the existing form design automatically.
Original PR description
Note: the form builder will be refactored in a deeper way in a next update. See sub-commits for details. task-1874350 Thanks to @dbh-odoo @pna-odoo and @dja-odoo for the work on this task.
The test suite has been updated so many tests no longer depend on preloaded demo data. This makes future demo data changes safer, improves test performance, and supports more flexible release and migration testing.
Original PR description
Purpose ======= This is the first huge step to improve the test suite in several ways: - Make them demo data independent, allowing to modify the demo data without having to adapt the tests depending on it. It also allows to have a beautiful + convenient demo dataset to make a demonstration, and to configure complex data in the tests to manage the corner cases. - Improve the test performances by converting them into SavepointCase. Each test will be rollbacked to it's initial state, after the setUpClass call. That way the different data are not re-created at each test for nothing. - Introduce several test classes in base/tests/common.py to launch a TransactionCase, HttpCase or SavepointCase test with an available demo user, portal user or a large set of partners. - This is the first step to tend to a rolling release process, allowing to execute the tests (or a subset of the tests) on a migrated base, for example. TaskID: 2075739
The phone calls configuration menu has been moved into the dedicated Phone / SMS technical menu. This makes administration screens easier to navigate by separating phone-related settings from Discuss, email, and mass mailing entries.
Original PR description
Purpose is to clean a bit technical menu, notably separating Discuss, Emails, Mass Mailing and Phone menu entries. Indeed there are quite a lot of menu entries and finding something is sometimes difficult. Task 2118599 Community PR odoo/odoo#39460 PR #6539
Phone call administration entries have been moved into the Phone / SMS technical menu. This makes the technical settings easier to navigate by separating phone-related items from other communication tools like Discuss, Email, and Mass Mailing.
Original PR description
Purpose is to clean a bit technical menu, notably separating Discuss, Emails, Mass Mailing and Phone menu entries. Indeed there are quite a lot of menu entries and finding something is sometimes difficult.
Helpdesk now opens related after-sales records in the most suitable view depending on how many items are available, making navigation clearer. It also hides unavailable related information from users without the right access and improves how credit note or reversal lines stay connected to helpdesk tickets.
This update makes many accounting and payment tests independent from demo data, so demo examples can change without breaking validation. It also improves test reliability and performance by reusing prepared test data more efficiently, supporting faster and safer future releases.
Original PR description
Purpose ======= This is the first huge step to improve the test suite in several ways: - Make them demo data independent, allowing to modify the demo data without having to adapt the tests depending on it. It also allows to have a beautiful + convenient demo dataset to make a demonstration, and to configure complex data in the tests to manage the corner cases. - Improve the test performances by converting them into SavepointCase. Each test will be rollbacked to it's initial state, after the setUpClass call. That way the different data are not re-created at each test for nothing. - Introduce several test classes in base/tests/common.py to launch a TransactionCase, HttpCase or SavepointCase test with an available demo user, portal user or a large set of partners. - This is the first step to tend to a rolling release process, allowing to execute the tests (or a subset of the tests) on a migrated base, for example. TaskID: 2075739
The helpdesk website form editor has been updated to make creating and customizing contact forms easier. Users can now better arrange form fields and see editing options in the right places, reducing friction when building forms.
Original PR description
Ease the creation and customization of contact forms. Improve things like: - selection field UI issue, - the new field should be displayed as the previous one - add an ability to move fields position - add new field after the selected field - UI issue for hidden field - alignment and margin issue - make form dynamic See sub-commits for details. Task: 1874350