Daily updates from Odoo
Wednesday, October 1, 2025
133 changes
8 changes
New functionality added to Odoo
This update adds standardized Brunei district names and codes to Odoo’s base localization data, so businesses no longer need to enter them manually. It also aligns Brunei address and currency formatting with recognized postal guidance, improving address consistency and local usability.
Original PR description
Added district names and codes based on government postal website, https://www.post.gov.bn/Documents/Buku%20Poskod%20Edisi%20ke%202%20(Kemaskini%2026122018).pdf Description of the issue/feature this PR addresses: Currently, the Brunei localisation does not include district names and codes, which requires users or system integrator to enter the district names manually before starting to use the system. Current behavior before PR: Partner addresses in Brunei cannot be assigned to a standardised district. District codes are missing from the localisation data. Desired behavior after PR is merged: Brunei district names and their respective codes are available in the localisation module. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#229349 Forward-Port-Of: odoo/odoo#228664
Resolved issues and error corrections
The chatter follower menu now stays open after removing a follower, making it easier to remove several followers in one session. The subscription edit action now closes the menu as expected, creating a more consistent user experience.
Original PR description
**Description of the issue this PR addresses:** ------------------------------------------------ Removing multiple followers from the chatter is cumbersome because the followers dropdown closes immediately after each removal. Additionally, clicking 'Edit Subscription' next to 'Unfollow' did not close the dropdown, which was inconsistent with expected behavior. **Current behavior before PR:** --------------------------------- - Removing a follower from the chatter closes the followers dropdown immediately - Clicking 'Edit Subscription' next to 'Unfollow' leaves the dropdown open **Desired behavior after PR is merged:** ----------------------------------------- - The followers dropdown remains open after removing a follower, allowing multiple removals without interruption - Clicking 'Edit Subscription' next to 'Unfollow' closes the dropdown as expected **Task:** 4943867 Forward-Port-Of: odoo/odoo#222154
This update corrects a sales test so it checks the currently configured order confirmation email template instead of assuming a fixed one. This helps ensure partial payment order confirmation works reliably when businesses customize their email settings.
Original PR description
The email template for the sale confirmation can be changed through the config parameters so it's better to read it directly from there instead of having it hard-coded. This now correctly tests the function it's testing. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#226240
This fixes an issue in the HTML editor where opening the color picker from a link popover could create an extra button and leave preview colors in the wrong state. Users can now adjust or reset button colors without unexpected duplicate buttons or incorrect color previews.
Original PR description
Before this commit: the onchange is applied when the color picker closes, it has a few issues, 1. adding duplicate button cause the reference of the link element is not passed correctly 2. the preview color isn't reset when mouse no longer hovering on the colors After this commit: The onchange is applied when on color reset. No more additional button inserted and color of the button is properly restored after the cursor is out of color picker task-4966317 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes incorrect buyer document type values used on Indonesian e-Faktur invoices. It ensures customers marked with Other ID or National ID are reported with the right document label, reducing tax document errors.
Original PR description
the byer document has a wrong value in others and NIT. so this commit change the values to `Other ID` and `National ID` To check values: go to fields and search for `l10n_id_buyer_document_type` opw-4974469 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#222346
Helpdesk ticket lists now sort ticket references in the expected numeric order, even after the count passes 100. This makes it easier for users to find the oldest or newest tickets without confusing results caused by text-based sorting.
Original PR description
**Issue** With the default `helpdesk.ticket` sequence, once users reach 100 tickets, ordering tickets by `ticket_ref` in the list view is unintuitive as it is a Char field (so '11' > '100') and the results are not useful if the user wants to see the oldest/newest tickets. opw-4891916 Forward-Port-Of: odoo/enterprise#95548 Forward-Port-Of: odoo/enterprise#93058
This fix updates internal spreadsheet test helpers so they can handle sorting behavior more accurately. It helps ensure future spreadsheet changes are tested against realistic sorted data, reducing the risk of regressions for users.
Original PR description
Task: 4962837 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 Forward-Port-Of: odoo/odoo#223561 Forward-Port-Of: odoo/odoo#223011
Spreadsheet list side panels now open even when a saved sort refers to a field that was removed or renamed after an upgrade. This lets users fix or remove the outdated sorting instead of being blocked by an error.
Original PR description
If a list is sorted on an invalid field and you try to open the list side panel, it crashes. It should open to allow the user to remove the sorting. A list with an invalid sorting field if the spreadsheet was created in a given version, then upgrades to a version where that field has been removed or renamed. Task: 4962837 Forward-Port-Of: odoo/enterprise#92749 Forward-Port-Of: odoo/enterprise#92393
10 changes
Enhancements to existing features
This update makes it easier for custom Odoo modules to adapt how product stock valuation information is calculated. It mainly benefits businesses with tailored inventory or accounting workflows by reducing the effort needed to customize those calculations.
Original PR description
FWP of https://github.com/odoo/odoo/pull/160201 cc @pfertyk @svs-odoo --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#222410
This update adds standardized automated checks for point-of-sale localization modules across multiple countries. It helps ensure country-specific checkout and compliance behavior continues to work reliably when changes are made.
Original PR description
Thi commit add a generic tour that can be run in all pos l10n_modules. In some cases it requires some extra steps, this can be done with hooks. The hooks will execute different steps depending on the country the tour is run in. opw-4606788 Forward-Port-Of: odoo/odoo#224849 Forward-Port-Of: odoo/odoo#222232
This update adds shared automated checkout tests for several country-specific Point of Sale localizations, with country hooks for local requirements. It helps reduce regressions in fiscal and electronic invoicing flows across supported markets without changing day-to-day user workflows.
Original PR description
Thi commit add a generic tour that can be run in all pos l10n_modules. In some cases it requires some extra steps, this can be done with hooks. The hooks will execute different steps depending on the country the tour is run in. opw-4606788 Forward-Port-Of: odoo/enterprise#93540 Forward-Port-Of: odoo/enterprise#91928
Resolved issues and error corrections
This fixes incorrect buyer document values on Indonesian e-Faktur invoices. Contacts using “Other ID” or “National ID” will now produce the expected document labels, helping avoid invoice reporting mistakes.
Original PR description
the byer document has a wrong value in others and NIT. so this commit change the values to `Other ID` and `National ID` To check values: go to fields and search for `l10n_id_buyer_document_type` opw-4974469 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#222346
This update corrects an internal sales test so it uses the configured sale confirmation email template instead of assuming a fixed one. This helps ensure payment confirmation behavior is tested accurately when businesses customize their email settings.
Original PR description
The email template for the sale confirmation can be changed through the config parameters so it's better to read it directly from there instead of having it hard-coded. This now correctly tests the function it's testing. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#226240
After DIOT 2025 rework in 4e6bee49e98b055e5aebe89fb19ab6317003b682 the report is missing some es translations Steps to reproduce: - With an MX Company and Spanish es_419 language set - Open Accounting > Reporting > Tax Report - Choose report Diot MX opw-5016650 Forward-Port-Of: odoo/odoo#229132 Forward-Port-Of: odoo/odoo#229085
Original PR description
After DIOT 2025 rework in 4e6bee49e98b055e5aebe89fb19ab6317003b682 the report is missing some es translations Steps to reproduce: - With an MX Company and Spanish es_419 language set - Open Accounting > Reporting > Tax Report - Choose report Diot MX opw-5016650 Forward-Port-Of: odoo/odoo#229132 Forward-Port-Of: odoo/odoo#229085
The cohort report export button is now disabled when there is no data to export. This prevents users from triggering an error in reports such as Helpdesk Ticket Analysis when the database has no matching records.
Original PR description
Currently, an error occurs when user tries to export data on cohort view with no data. Steps to replicate: - Install `helpdesk` (without demo data). - Go to `Helpdesk > reporting > Ticket Analysis` and go to cohort view. - Click download and error will occur. - If error doesnt occur, click on `Measure > Count`, and click Download again. Error: `IndexError: list index out of range` Cause: - The export button remained enabled even when no data available, this caused the export to be called without any data that caused the `Indexerror` at [1]. Solution: - Disabled the export button when no data in cohort view. [1]: https://github.com/odoo/enterprise/blob/475a802aa3e748a905be83c0f6408f8c20f03905/web_cohort/controllers/main.py#L30 sentry-6831823426 Forward-Port-Of: odoo/enterprise#93050
Ticket lists in Helpdesk now sort ticket references in a more natural order, especially after ticket numbers pass 100. This makes it easier for users to find the oldest or newest tickets without confusing number ordering.
Original PR description
**Issue** With the default `helpdesk.ticket` sequence, once users reach 100 tickets, ordering tickets by `ticket_ref` in the list view is unintuitive as it is a Char field (so '11' > '100') and the results are not useful if the user wants to see the oldest/newest tickets. opw-4891916 Forward-Port-Of: odoo/enterprise#95548 Forward-Port-Of: odoo/enterprise#93058
This update adds checks to ensure keyboard shortcuts like bold, italic, underline, and strikethrough behave correctly when no text is selected. It helps prevent editing glitches and keeps the editor history clean for a smoother content editing experience.
Original PR description
Description of the issue this PR addresses: This PR adds test cases for formatting shortcuts (e.g., Ctrl+B) on a collapsed selection. An empty inline tag is inserted temporarily and auto-cleaned if unused, so no individual history step are created. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#229233
A unit test for Hong Kong payroll accounting was corrected after a public holiday work-entry reference was moved and renamed. This helps keep automated testing reliable, reducing the risk of payroll-related regressions reaching users.
Original PR description
Explanation: l10n_hk_hr_payroll.work_entry_type_public_holiday is moved to hr_work_entry and renamed as l10n_hk_work_entry_type_public_holiday runbot-229910
1 change
Resolved issues and error corrections
Swedish Bankgiro accounts are now identified with the correct account type in payment files instead of being treated as standard BBAN accounts. This helps ensure Swedish credit transfer files are accepted and processed correctly by banks.
Original PR description
Issue: The only possible value for the bank account type is "BBAN". For a 'bankgiro' account it should be "BGNR". Solution: Input "BGNR" in the XML if the bank account type is 'bankgiro'. opw-5063368 Forward-Port-Of: odoo/enterprise#95467
7 changes
New functionality added to Odoo
Brunei addresses can now use standardized district names and codes instead of requiring manual entry. The update also aligns Brunei address and currency formatting with recognized postal guidance, improving consistency for local business records.
Original PR description
Added district names and codes based on government postal website, https://www.post.gov.bn/Documents/Buku%20Poskod%20Edisi%20ke%202%20(Kemaskini%2026122018).pdf Description of the issue/feature this PR addresses: Currently, the Brunei localisation does not include district names and codes, which requires users or system integrator to enter the district names manually before starting to use the system. Current behavior before PR: Partner addresses in Brunei cannot be assigned to a standardised district. District codes are missing from the localisation data. Desired behavior after PR is merged: Brunei district names and their respective codes are available in the localisation module. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#229349 Forward-Port-Of: odoo/odoo#228664
Resolved issues and error corrections
OSS reports can now open correctly when a fiscal position uses a country group, such as Mainland Spain VAT, instead of a directly assigned country. This helps businesses handle regional VAT setups like mainland Spain versus the Canary Islands without report access errors.
Original PR description
To be able to deal with Spain with Canary Islands and mainland, we have a country group that is Mainland Spain VAT, with Spain minus several states (Canary basically). People want to be able to use it for OSS. But currently, if you have an entry with a tax with a fp with this country group (and no country), you can't open your OSS Report. So take the countries of the country group if there is none in the fiscal position. Forward-Port-Of: odoo/enterprise#95795
This fixes the hover animation for the website categories showcase snippet, which had stopped responding when visitors moved their mouse over it. Restoring this visual feedback helps storefront pages feel interactive and polished again.
Original PR description
Since commit [1], the hover effect on the "categories showcase" snippet is no longer working. Nothing happens when it’s hovered with the mouse. This is caused by a missing comma in the CSS rule that handles the effect. [1]: https://github.com/odoo/odoo/commit/dea725a4e45b584689813bdbf09e51070a3c55d3
The website live chat no longer shows the chatbot's instant messaging status, preventing unnecessary presence details from appearing to visitors. The status remains available in other areas where it is still useful for internal or standard chat use.
Original PR description
**Description of the issue this PR addresses:** Chatbot's IM Status shouldn't be visible on the website **Current behavior before PR:** Before this PR, the chatbot's IM status was shown on the website during live chat. **Desired behavior after PR is merged:** This PR hides the IM status for chatbot when embedded in the website, while keeping it visible elsewhere. Backport of this: https://github.com/odoo/odoo/pull/220966 task-[4930194](https://www.odoo.com/odoo/project/1519/tasks/4930194) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Editing a message that includes a new mention no longer creates an extra duplicate link next to it. This keeps message content clean and avoids confusing recipients with repeated mention links.
Original PR description
Before PR #223808, `prettifyMessageContent()` was called when posting or editing a message. With the mentioned PR, prettifying happens while typing. So prettifying the content again when editing, causes creating an extra `a` tag in the message content. The part related to posting a message is already taken care of in that PR. This PR removes the prettifying when editing a message. task-5123493
This fixes an issue where delivery provider settings accidentally changed the default Apps list display, hiding useful module details like name, author, website, and version. The delivery-specific views now stay in their intended place, keeping the general Apps screen consistent for users.
Original PR description
This commit* introduced a new views for delivery provider modules, list and kanban. The new views are meant to target only this particular delivery provider view. But, since the priority of the list view is not defined, the default order (with the name) makes it used before the classic list view for modules in Apps. This has the effect to hide a few fields (name, author, website and version). This commit adds a priority to this list view such that it is not used by default to list ir.module.module records. A priority is also defined on the kanban view to avoid this issue to affect kanban view if anyone ever changes its name. *: https://github.com/odoo/odoo/commit/b798db1b2faa0e437baa4fc524821ec324136aff
Employee resume entries now skip the job title line when no job title is set. This prevents the word "False" from appearing in resumes, making employee profiles look cleaner and more professional.
Original PR description
If an employee doesn't have a job title set on his profile, the resume shows "False" line. The logic has been adjusted to skip the line in case the employee doesn't have a job title
5 changes
Resolved issues and error corrections
This fixes an automated accounting test that could finish before the merge wizard had fully completed its final step. The change improves test reliability, helping prevent false failures in quality checks without changing user-facing accounting behavior.
Original PR description
The last check of the tour is always true. So it sometimes closes too early. Wait really for the last operation for the last check runbot-error-108440
Fixes an issue that could make the mail app crash when a new message arrived while the browser tab was not active. This helps keep messaging reliable and avoids unnecessary disruption for users.
Original PR description
Backport of #213607. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The test data for Hong Kong payroll accounting now includes the required leave allocation records. This prevents automated tests from failing during validation and helps keep payroll-related updates reliable.
Original PR description
Issue: Unit tests are failing because test data was created without leave allocations, leading to validation errors. Fix: Added leave allocation data for time off types which requiring allocation in some tests. build_error-230409
The translate option no longer appears on messages that have no text, such as tracking updates or attachment-only messages. This avoids showing users an action that cannot do anything and makes the messaging interface clearer.
Original PR description
**Current behavior before PR:** The translate action was shown on all messages, including those with an empty body such as tracking updates or messages containing only attachments. Clicking the translate action on these messages had no effect. **Desired behavior after PR is merged:** The translate action is hidden for messages with an empty body. Only messages containing text display the translate option. **Task-5106303** --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes an internal automated test for the mail emoji picker so it searches correctly each time instead of accidentally combining two searches. The change helps prevent random test failures and supports more stable delivery of mail-related updates.
Original PR description
Follow-up of https://github.com/odoo/odoo/pull/223564 PR above adapted test with emoji picker with translations by using the emoji picker search twice. However `insertText()` is used a 2nd time without the `replace` option. As a result, the 2 search texts are concatenated, and produce a search term that should find no emoji. The test passes sometimes because of the asynchronous rendering and the 2nd emoji being visible on the 1st search. This commit fixes the issue by using `replace: true` on 2nd insert of test, so that this is a fresh search that matches the emoji being searched.
2 changes
Resolved issues and error corrections
This fixes an upgrade failure for Estonian accounting data in Odoo 17. The migration now uses the correct call supported by this version, helping affected databases upgrade successfully without this error.
Original PR description
- In version 18, the force_create parameter was introduced in the try_loading method. https://github.com/odoo/odoo/pull/198030/commits/8153a957746d7ad11db5df743a948c471d828f15 Therefore, the upgrade…
- In version 18, the force_create parameter was introduced in the try_loading method. https://github.com/odoo/odoo/pull/198030/commits/8153a957746d7ad11db5df743a948c471d828f15
Therefore, the upgrade fails when try_loading with the force_create parameter
is used in version 17.
https://github.com/odoo/odoo/pull/223405/files#diff-25bc11e6653e875717f3a1c96d0773f08c59c68d0290011f217c7e877fb06d0b
In version 17, this parameter is not available for the try_loading method.
https://github.com/odoo/odoo/blob/17.0/addons/account/models/chart_template.py#L131
```python3
Traceback (most recent call last):
File "/home/odoo/src/odoo/17.0/odoo/service/server.py", line 1369, in preload_registries
registry = Registry.new(dbname, update_module=update_module)
File "<decorator-gen-16>", line 2, in new
File "/home/odoo/src/odoo/17.0/odoo/tools/func.py", line 87, in locked
return func(inst, *args, **kwargs)
File "/home/odoo/src/odoo/17.0/odoo/modules/registry.py", line 110, in new
odoo.modules.load_modules(registry, force_demo, status, update_module)
File "/home/odoo/src/odoo/17.0/odoo/modules/loading.py", line 519, in load_modules
migrations.migrate_module(package, 'end')
File "/home/odoo/src/odoo/17.0/odoo/modules/migration.py", line 221, in migrate_module
exec_script(self.cr, installed_version, pyfile, pkg.name, stage, stageformat[stage] % version)
File "/home/odoo/src/odoo/17.0/odoo/modules/migration.py", line 239, in exec_script
migrate(cr, installed_version)
File "/home/odoo/src/odoo/17.0/addons/l10n_ee/migrations/1.3/end-migrate_update_data.py", line 7, in migrate
env['account.chart.template'].try_loading('ee', company, force_create=False)
TypeError: AccountChartTemplate.try_loading() got an unexpected keyword argument 'force_create'
```
upg-3164417
tbg-2185
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-prMobile users can now scroll horizontally in the appraisal skills list, making the justification field and add/remove buttons visible again. This restores access to key appraisal skill actions on smaller screens and removes unused styling.
Original PR description
Horizontal scrolling has been disabled on the appraisal skills list. An unwanted side effect of that is that the justification field along with the add and remove buttons are not visible on mobile. This PR re-enables the scrolling and removes some dead css. task-5001344 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr