Tuesday, February 4, 2025
82 changes
1 change
Resolved issues and error corrections
This fix moves mail-related test dependencies out of the core resource module and into the resource mail module where they belong. As a result, installing the resource module alone no longer causes an error when running unit tests, improving reliability for testing and maintenance.
Original PR description
Before this commit: 1. Install `ressource` module 2. In debug, open "Run unit tests" debug menu 3. Error pop-up: ```js Global Error: stack trace available in the console Missing dependencies: @mail/../tests/mail_test_helpers ``` After this commit: No error and units tests can proceed Related runbot task: https://runbot.odoo.com/odoo/runbot.build.error/72187
24 changes
Resolved issues and error corrections
The recruitment app now shows the correct number of related applications for a candidate, including archived or refused ones. This prevents confusion when users refresh a page or open the Other Applications button and expect consistent results.
Original PR description
To reproduce: ============= - create 3 applications for same candidate - open one application and archive/refuse it - refresh the page -> smart button **Other Applications** displays 2 - click on the smart button -> only 2 applications are listed Problem: ======= - when refreshing the page, the context is lost so `other_applications_count` is computed without `active_test=False` so non active records are excluded - when clicking on the smart button, the current record is excluded from the domain Solution: ========= - compute `other_applications_count` with `active_test=False` - add the current record in the domain when clicking on the smart button opw-4488834 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes an unwanted border that appeared around the rating image on rating pages. The rating display now looks as intended while keeping the existing rating functionality unchanged.
Original PR description
Description of the issue/feature this PR addresses: Related ticket: https://www.odoo.com/odoo/my-tasks/4482430 The 'btn' class was incorrectly applied to the rating label in rating_templates.xml, which affected the styling, making extra border line displaying on the rating image. Removing this class restores the expected appearance. Current behavior before PR: there will be weird border on the rating page  Desired behavior after PR is merged: The border will be invisible and everything else still functional without any influence --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes an accounting issue that could appear during upgrades when a contact and its parent company belong to different companies. It helps ensure partner information can be accessed reliably, reducing upgrade failures or accounting disruptions.
Original PR description
Since https://github.com/odoo/odoo/commit/25cf037c we're trying to access `ResPartner.commercial_partner_id` but there are some issue with upgrade as it appears that some partners belong to a different company than their parent partner.
This fix removes an incorrect percentage display from account report subtotals in the invoicing spreadsheet dashboard. Business users will see clearer, more sensible financial figures in dashboard pivot views.
Original PR description
Some pivots were defined with a wrong format on their measure, namely a display of percentage on the subtotal of account reports which makes no sense. task -4546273 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
Users can no longer accidentally clear the email alias domain on documents or folders. This prevents confusing setup prompts and avoids a state where the alias domain cannot be restored from the document view.
Original PR description
Steps to Reproduce: - Create an email alias in the settings. - Create a document or folder record. - Delete the alias domain from the document detail view. Technical Reason: When the alias_domain_id field is cleared and saved, the system writes False to the field. This causes Owl to incorrectly render a button prompting the user to set up an alias domain, even though one is already configured. Additionally, there is no functional way to restore the alias_domain_id field once it has been cleared. Fix: This commit prevents users from clearing the alias_domain_id field by raising a validation error if they attempt to do so. Task-4528283
This fix ensures that employees can open document previews from the My Documents list view in their profile. It loads the correct document action so the list view behaves as expected, reducing confusion when accessing HR documents.
Original PR description
Bug === 1. Open your profile -> My Documents 2. Switch to list view => You can not open the preview The reason is that the JS of the list view is not loaded, because we don't execute the right action. Task-4546797
The delivery carrier test setup now creates the users it needs instead of depending on optional sample data. This helps ensure automated checks run reliably in environments where demo data is not installed, reducing false failures during validation.
Original PR description
This PR fixed tests when runbot runs without demo data installed. Creates users instead of referencing them and editing.
Miscellaneous changes
Since the class `s_searchbar_input` was translated into Dutch by a translator on Transifex. <sub>See screenshot of the Website `nl.po` file </sub>↓ <kbd></kbd> It is no longer possible to drop the searchbar block onto a webpage when Odoo's language is set to Dutch. In this PR, we add `t-translation="off"` in the xpath that adds this class to the list of droppable element selectors, so it won't be
Original PR description
Since the class `s_searchbar_input` was translated into Dutch by a translator on Transifex. <sub>See screenshot of the Website `nl.po` file </sub>↓…
Since the class `s_searchbar_input` was translated into Dutch by a translator on Transifex. <sub>See screenshot of the Website `nl.po` file </sub>↓ <kbd></kbd> It is no longer possible to drop the searchbar block onto a webpage when Odoo's language is set to Dutch. In this PR, we add `t-translation="off"` in the xpath that adds this class to the list of droppable element selectors, so it won't be translated anymore. We also do the same for other xpath-ed classes that don’t have `t-translation="off"`, to prevent the same issue elsewhere. Since the class is already translated in the existing databases, in stable versions, we add the class a second time to the list of droppable element selectors. This second class won't be translated, which will fix the issue for Dutch users. [opw-4461785](https://www.odoo.com/web#id=4461785&cids=1&menu_id=4720&action=333&active_id=1695&model=project.task&view_type=form) ----------- Note: This PR also fix 2 minor bugs: - The text on the button to install a block overflows when translated into certain languages that make it longer. <kbd></kbd> - The `Embed code` block "Click on Edit..." message is not visible on dark background. <kbd></kbd> Forward-Port-Of: odoo/odoo#196065 Forward-Port-Of: odoo/odoo#193819
Fix runbot error. Runbot error: 111506 Forward-Port-Of: odoo/odoo#196387
Original PR description
Fix runbot error. Runbot error: 111506 Forward-Port-Of: odoo/odoo#196387
Change questionable emails for 2 users. Make new demo CV for them as well because we only had the binary pdfs. Raw latex can be found at (google drive): * https://drive.google.com/file/d/1AyRguPcTRrt_7ySXAYE3L9TP4mHnwMNs/view?usp=drive_link * https://drive.google.com/file/d/1e-2JlO3hEbaf6haFTF5TdCy6kx73xOgX/view?usp=drive_link task-4507003 Forward-Port-Of: odoo/odoo#194804
Original PR description
Change questionable emails for 2 users. Make new demo CV for them as well because we only had the binary pdfs. Raw latex can be found at (google drive): * https://drive.google.com/file/d/1AyRguPcTRrt_7ySXAYE3L9TP4mHnwMNs/view?usp=drive_link * https://drive.google.com/file/d/1e-2JlO3hEbaf6haFTF5TdCy6kx73xOgX/view?usp=drive_link task-4507003 Forward-Port-Of: odoo/odoo#194804
Before this commit: Steps 1) Create 3 statement lines in bank journal 2) Cancel the journal entry of the middle one 3) Try to add the first and third lines to a statement => It shows an `Invalid Operation: Unable to create a statement due to missing transactions. You may want to reorder the transactions before proceeding` This happens because the lines are considered non-contiguous due to the canceled middle line. After this commit: This operation can be performed as the missing line
Original PR description
Before this commit: Steps 1) Create 3 statement lines in bank journal 2) Cancel the journal entry of the middle one 3) Try to add the first and third lines to a statement => It shows an `Invalid Operation: Unable to create a statement due to missing transactions. You may want to reorder the transactions before proceeding` This happens because the lines are considered non-contiguous due to the canceled middle line. After this commit: This operation can be performed as the missing line is canceled, and it shouldn’t be counted for the contiguity check. Also, it should be considered in the statement assignment, similar to how the statement button works in the widget/kanban view. Recording of reproducing the issue: https://drive.google.com/file/d/1I5xwNie1HL9ifuK0z21a6yWDdqI_xbTU/view?usp=sharing Discussion with OLMA: https://discord.com/channels/678381219515465750/1099994955830796348/1330856829638545429 opw-4385040 Forward-Port-Of: odoo/odoo#194541
Previously, opening the product info popup would fail if a product had multiple sellers with the same name but different prices and delays. opw-4472861 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#195682 Forward-Port-Of: odoo/odoo#195617
Original PR description
Previously, opening the product info popup would fail if a product had multiple sellers with the same name but different prices and delays. opw-4472861 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#195682 Forward-Port-Of: odoo/odoo#195617
Before this commit, importing an exported order through the PoS UI failed due to missing relations in the imported order data. opw-4237952 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#183379
Original PR description
Before this commit, importing an exported order through the PoS UI failed due to missing relations in the imported order data. opw-4237952 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#183379
When entering the method `closingSessionNotification`, the method checks if `data.login_number === this.session.login_number` but `data.login_number` can be a string or a number so the comparison should be `data.login_number == odoo.login_number` to prevent self calling. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#192648
Original PR description
When entering the method `closingSessionNotification`, the method checks if `data.login_number === this.session.login_number` but `data.login_number` can be a string or a number so the comparison should be `data.login_number == odoo.login_number` to prevent self calling. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#192648
**Problem**: The function `_getColumnSize` returns the size of the columns. When `gridIndex = columnSize;` is assigned and `columnSize` equals 12, it causes an overflow in the `grid` array. This leads to invalid elements being passed to `_applyColspan`. **Solution**: Ensure `_applyColspan` is only called when `gridIndex` is within valid bounds. **Steps to reproduce**: 1. Open an email marketing template. 2. Extend the "Centered Logo" snippet to the maximum size (`col-12`). 3. Observe
Original PR description
**Problem**: The function `_getColumnSize` returns the size of the columns. When `gridIndex = columnSize;` is assigned and `columnSize` equals 12, it causes an overflow in the `grid` array. This leads to invalid elements being passed to `_applyColspan`. **Solution**: Ensure `_applyColspan` is only called when `gridIndex` is within valid bounds. **Steps to reproduce**: 1. Open an email marketing template. 2. Extend the "Centered Logo" snippet to the maximum size (`col-12`). 3. Observe a traceback error. opw-4381159 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#193255
**Problem**: When `u` or `s` tags are applied, changing the `font-size` wraps the text inside these tags instead of applying it to the tags themselves. For example, `a<u>b</u>c` → `a<u><font>b</font></u>c`, which results in an inconsistent appearance. **Solution**: Ensure that the `span` for font size is applied to the highest non-block ancestor to maintain proper styling. **Steps to Reproduce**: 1. Add text. 2. Apply underline. 3. Increase font size. 4. Observe that the underline
Original PR description
**Problem**: When `u` or `s` tags are applied, changing the `font-size` wraps the text inside these tags instead of applying it to the tags themselves. For example, `a<u>b</u>c` → `a<u><font>b</font></u>c`, which results in an inconsistent appearance. **Solution**: Ensure that the `span` for font size is applied to the highest non-block ancestor to maintain proper styling. **Steps to Reproduce**: 1. Add text. 2. Apply underline. 3. Increase font size. 4. Observe that the underline remains the original size instead of scaling with the text. opw-3086072 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#195569
For the same reason as [1], this commit adds the parameter "sanitize_overridable=True" to the "description_motivational" field of "gamification" model. This ensures that users with sufficient rights can properly edit the motivational description. This issue is difficult to reproduce in 16.0, as no blocks contain `<button>` elements. However, in 18.0, some snippets—such as `accordion` or the new `image gallery`—include button elements, making the issue more apparent. Steps to reproduce (in
Original PR description
For the same reason as [1], this commit adds the parameter "sanitize_overridable=True" to the "description_motivational" field of "gamification" model. This ensures that users with sufficient rights can properly edit the motivational description. This issue is difficult to reproduce in 16.0, as no blocks contain `<button>` elements. However, in 18.0, some snippets—such as `accordion` or the new `image gallery`—include button elements, making the issue more apparent. Steps to reproduce (in 18.0): - Open website module - Go to /slides - Add a carousel snippet to the side panel > Save - Traceback [1]: https://github.com/odoo/odoo/commit/0cd42f8b55e2ab8f214653556b5bde4b54281972 opw-4272357 Forward-Port-Of: odoo/odoo#195777
**Current behavior before PR:** Push notifications displayed the Odoo Bot icon regardless of the actual message author. **Desired behavior after PR is merged:** The push notifications now correctly display the avatar of the message author. Task-[4510479](https://www.odoo.com/odoo/project/1519/tasks/4510479) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#195688 Forward-Port-Of: odoo/odoo#195219
Original PR description
**Current behavior before PR:** Push notifications displayed the Odoo Bot icon regardless of the actual message author. **Desired behavior after PR is merged:** The push notifications now correctly display the avatar of the message author. Task-[4510479](https://www.odoo.com/odoo/project/1519/tasks/4510479) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#195688 Forward-Port-Of: odoo/odoo#195219
Steps to Reproduce: • Install the Payroll app. • Navigate to the Work Entries Gantt view. • When there is deferred time off, a warning message is displayed. • Scrolling horizontally in the Gantt view causes the warning message to move along, whereas it should remain static. Cause: • The position of the warning message element is not fixed. Fix: • Set the element's position to sticky so that it remains static while scrolling. task-4367336 Forward-Port-Of: odoo/enterprise#75037
Original PR description
Steps to Reproduce: • Install the Payroll app. • Navigate to the Work Entries Gantt view. • When there is deferred time off, a warning message is displayed. • Scrolling horizontally in the Gantt view causes the warning message to move along, whereas it should remain static. Cause: • The position of the warning message element is not fixed. Fix: • Set the element's position to sticky so that it remains static while scrolling. task-4367336 Forward-Port-Of: odoo/enterprise#75037
Previously after activating debug mode and then dark mode, the letters of database name are not visible clearly. It is happening because in new bootstrap version we are having an inappropriate color for mark tag in dark mode. After this commit the database name will be clearly visible in dark mode. Task- 4389154 Forward-Port-Of: odoo/enterprise#78364
Original PR description
Previously after activating debug mode and then dark mode, the letters of database name are not visible clearly. It is happening because in new bootstrap version we are having an inappropriate color for mark tag in dark mode. After this commit the database name will be clearly visible in dark mode. Task- 4389154 Forward-Port-Of: odoo/enterprise#78364
Currently, integer fields cannot be selected as unicity fields in marketing campaigns. ### Steps to reproduce * Install `marketing_automation` * Open a marketing campaign form view and try to set the "Unicity based on" field to an integer field. You will notice that integer fields are missing from the selection. ### Cause A small typo in the domain filter: Odoo uses `integer` instead of `int` for field types. opw-4492606 Forward-Port-Of: odoo/enterprise#78289
Original PR description
Currently, integer fields cannot be selected as unicity fields in marketing campaigns. ### Steps to reproduce * Install `marketing_automation` * Open a marketing campaign form view and try to set the "Unicity based on" field to an integer field. You will notice that integer fields are missing from the selection. ### Cause A small typo in the domain filter: Odoo uses `integer` instead of `int` for field types. opw-4492606 Forward-Port-Of: odoo/enterprise#78289
issue: in the payslip menu item To pay shows 'draft', 'verify' payslips instead of 'done' fix: change the action domain to refleact the needed filteration Task: 4487458 Forward-Port-Of: odoo/enterprise#77775
Original PR description
issue: in the payslip menu item To pay shows 'draft', 'verify' payslips instead of 'done' fix: change the action domain to refleact the needed filteration Task: 4487458 Forward-Port-Of: odoo/enterprise#77775
If the statement name is too long, it is not truncated, making it impossible to access the button displaying the statement total. Steps to reproduce: - Go to the accounting dashboard - In the Bank journal, select statements - Open a statement and rename it with a long name that occupies the full width of the left column in the reconciliation page The fix truncates the text and adds its full value in the `title` attribute for better accessibility. Before:  After:  opw-4414518 Forward-Port-Of: odoo/enterprise#77495
A little oversight with the bugfixes in https://github.com/odoo/enterprise/pull/76543 that enforced incomplete data in exports like XLSX. **Reproduction**: - Have a intrastat report where the new feature "Load more..." is applied (enough data) - Create/Save a XLSX file from this report **Issue to be resolved**: The result will be incomplete and the "Load more..." is printed and it is impossible to get a full data export... Info: @wt-io-it Forward-Port-Of: odoo/enterprise#78168 Forwa
Original PR description
A little oversight with the bugfixes in https://github.com/odoo/enterprise/pull/76543 that enforced incomplete data in exports like XLSX. **Reproduction**: - Have a intrastat report where the new feature "Load more..." is applied (enough data) - Create/Save a XLSX file from this report **Issue to be resolved**: The result will be incomplete and the "Load more..." is printed and it is impossible to get a full data export... Info: @wt-io-it Forward-Port-Of: odoo/enterprise#78168 Forward-Port-Of: odoo/enterprise#77958