Wednesday, September 27, 2023
15 changes · master
Enhancements to existing features
This change updates how appointment-related test data is mocked so it no longer disrupts calendar tests when multiple modules are installed. It helps keep automated testing stable and reduces the chance of unrelated test failures slowing development.
Original PR description
The appointment module currently extends the CalendarAttendeeController from the calendar module. Since appointment adds some rpc calls in the controller, it was decided to patch the MockServer with…
The appointment module currently extends the CalendarAttendeeController from the calendar module. Since appointment adds some rpc calls in the controller, it was decided to patch the MockServer with the appointment routes to prevent having tests fail because of unimplemented routes. However, patching the MockServer is not advised by the JS team and the current patch calls ORM mock methods (like mockRead, mockSearchRead...) that depend on serverData that is solely defined on the appointment tests. This causes any test done in the calendar module using the calendar_attendee js class to fail when all modules are installed because, even though the route is mocked, it tries to fetch data that is only defined for appointment. This commit changes the approach to use the mock_server registry, defining each route individually. For routes that are called on the onWillStart hook and their mock should be doing a mockRead, it was decided to overwrite the mock inside the appointment tests. This way, it is possible to return an "empty" object for all tests that are not appointment related, and for appointment tests we simply overwrite the mock_server for that route with the original implementation and after the tests are done, we can restore the mock.
This change updates several Odoo Enterprise apps to work with the newer internal communication services after older components were removed. It helps keep appointment booking, payments, rentals, POS, website tools, and other features compatible with the latest platform foundation without changing their intended business behavior.
The task list in Project now shows planned dates immediately after the task name. This makes scheduling information easier to spot while reviewing or organizing project tasks.
Original PR description
...in task tree view. Related: https://github.com/odoo/odoo/pull/136001 task-3514409
This update adapts several accounting, reporting, document, and field service areas to a newer shared database query mechanism. It reduces the risk of errors in reports and related workflows while keeping the changes mostly behind the scenes for users.
Original PR description
Companion of https://github.com/odoo/odoo/pull/134677.
Resolved issues and error corrections
Corrected small wording typos in several Odoo screens or reports where “ot” appeared instead of the intended word. This improves the polish and clarity of user-facing text without changing business processes or functionality.
Original PR description
Fix some "ot" that are sometimes "to", "of", ... just passing by.
Code cleanup and technical improvements
This update reorganizes internal messaging and discussion data handling to make the code easier to maintain and extend. It also aligns related WhatsApp, Documents, and Accounting integrations with the new structure, reducing complexity behind the scenes without introducing major user-facing changes.
Original PR description
https://github.com/odoo/odoo/pull/136308
Miscellaneous changes
The boolean edit popover was not working properly. The python was expecting a boolean in the form of an integer (0 or 1) but the javascript was sending an actual boolean (true or false). It was fixed by just sending the boolean converted to a number. The styling of the boolean popover was missing, so it was added in this commit as well. Forward-Port-Of: odoo/enterprise#47389
Original PR description
The boolean edit popover was not working properly. The python was expecting a boolean in the form of an integer (0 or 1) but the javascript was sending an actual boolean (true or false). It was fixed by just sending the boolean converted to a number. The styling of the boolean popover was missing, so it was added in this commit as well. Forward-Port-Of: odoo/enterprise#47389
Original PR description
In the PR https://github.com/odoo/odoo/pull/136271 the files ajax.js and rpc.js has been removed. This commit adapts all the places where their exports were used. For most of the changes, it's a replace of `this._rpc({...})` by a new `useService("rpc|orm")` like pattern in the widgets.
task: 3439226This fix corrects how search terms are handled in several Odoo areas so results match the intended values more reliably. It helps avoid missed or overly broad matches in reports, Belgian localization features, SODA account mapping, and Studio view handling.
Original PR description
The 'like'/'ilike' operators automatically add the wildcard character (`%`) at the beginning and at the end of the value. This commit fixes the incorrect usage. https://github.com/odoo/odoo/pull/136007 task-3508361
This update fixes automated payroll dashboard walkthroughs that were failing after a related HR responsibility field was moved between modules. It helps keep payroll and salary contract screens reliably tested so future changes can be validated with confidence.
Original PR description
In odoo/enterprise#39804 the field hr_responsible_id was moved from hr_contract_view_form from hr_contract to hr_contract_salary module. Due to this change payroll_dashboard_ui_tour was failing. This commit adjusts the tours according to the change.
The cohort report now handles empty or missing measure values without failing. This prevents users from seeing an error when opening cohort views where a measure has no value, improving report reliability.
Original PR description
steps to produce: - when measure field value set null if value is zero - try to open cohort view measure - trackback occurs 'value.toFixed is not a function' Fix: This commit, fixes the trackback when the measure value is null or undefined. It occurs when the measure field value is null in a particular condition. task: 3502869
This update modernizes internal automated tests by removing outdated jQuery usage in several Odoo apps. It helps keep the test suite easier to maintain and supports future reliability, with no expected change for end users.
Original PR description
\* = account_online_synchronization, documents, documents_spreadsheet, planning https://github.com/odoo/odoo/pull/136425
A user without HR rights couldn't ask feedback. task-3302171 Forward-Port-Of: odoo/enterprise#40751
Original PR description
A user without HR rights couldn't ask feedback. task-3302171 Forward-Port-Of: odoo/enterprise#40751
We remove the mexican flag emoji as it leads to a parsing error an error when loading the views. Forward-Port-Of: odoo/enterprise#47539
Original PR description
We remove the mexican flag emoji as it leads to a parsing error an error when loading the views. Forward-Port-Of: odoo/enterprise#47539
Before this commit: if the dialing panel is folded while a call is incoming, unfolding it afterwards would cause the call accept/reject buttons to disappear, making it impossible to do anything but to wait for the caller to hang up. After this commit: folding then unfolding the panel doesn't break the state. opw-3090255 Forward-Port-Of: odoo/enterprise#47655 Forward-Port-Of: odoo/enterprise#47582
Original PR description
Before this commit: if the dialing panel is folded while a call is incoming, unfolding it afterwards would cause the call accept/reject buttons to disappear, making it impossible to do anything but to wait for the caller to hang up. After this commit: folding then unfolding the panel doesn't break the state. opw-3090255 Forward-Port-Of: odoo/enterprise#47655 Forward-Port-Of: odoo/enterprise#47582
There are currently 2 errors in the unfolding 1. Lines that are loaded statically cannot be unfolded. 2. The session options are not saved correctly in some cases (missing argument) on 1. E.g. 2 balance sheets have this issue: * Install l10n_se_reports -> "SE Company" -> "Balance Sheet (SE)" -> (try to) unfold "Year-end results" * Install l10n_at_reports -> "AT Company" -> "Bilanzdarstellung nach §224 UGB (AT)" -> (Try to) unfold "Saldo im Sinne von Bilanzgewinn/Bilanzv
Original PR description
There are currently 2 errors in the unfolding
1. Lines that are loaded statically cannot be unfolded.
2. The session options are not saved correctly in some cases (missing argument)
on 1.
E.g. 2 balance sheets have this issue:
* Install l10n_se_reports
-> "SE Company"
-> "Balance Sheet (SE)"
-> (try to) unfold "Year-end results"
* Install l10n_at_reports
-> "AT Company"
-> "Bilanzdarstellung nach §224 UGB (AT)"
-> (Try to) unfold "Saldo im Sinne von Bilanzgewinn/Bilanzverlust"
on 2.
Unfold some line with an expansion function and reload the page:
An error appears ('SyntaxError: "undefined" is not valid JSON').
E.g. "Balance Sheet" (default) > "Bank and Cash Accounts" line
Forward-Port-Of: odoo/enterprise#47772 (16.3; start of "1.") and odoo/enterprise#47855 (16.4 ; start of "2.")