Daily updates from Odoo
Thursday, May 7, 2026
46 changes · master
New functionality added to Odoo
This update introduces dark mode support for Odoo's spreadsheet dashboards, improving readability and visual appeal in darker environments. The changes adjust colors within the grid and charts, ensuring a consistent and professional look across both light and dark themes. This enhances the user experience for reports and data visualization.
Original PR description
## Description This commit adds the color scheme in the configuration of the model. We then use a getters isDarkMode() to know if we are in a dark mode rendering, and a new plugin ColorThemeUIPlugin to adapt the colors we want to draw/use according to the current color theme. This getters is then used in the color picker and in the grid renderer for cell text, background, border, DV, table and CF. For the grid (border, background, headers, frozen pane), a theme has been fixed with colors depending on the current color scheme. For the chart, we currently keep all the colors set by the user as is, and all default colors (scale, grid, title, legend, default background) are updated. ## Related Task: - Task: [5245940](https://www.odoo.com/odoo/project/2328/tasks/5245940)
This update introduces a new button within the subscription and rental modules, allowing sales users to quickly create quotations using pre-defined templates. This streamlines the quotation process and improves efficiency. The change will be enabled once the sale_management module is installed.
Original PR description
This PR completes the override of the New button, allowing users to see a custom New button and directly select a template from it. This new button will be enabled as soon as the sale_management module (which contains the templates) is installed. These changes are applied in both the subscription app and the rental app (for list and kanban and form views). Community PR: https://github.com/odoo/odoo/pull/258679 Upgrade PR: https://github.com/odoo/upgrade/pull/9913 task-6088445
Enhancements to existing features
This update streamlines the Odoo Enterprise module by removing redundant code related to worksheet property editing. The changes consolidate custom code specifically for worksheet templates, improving the module's overall structure and efficiency. This results in a cleaner codebase and potentially faster performance.
Original PR description
This commit moves custom code related to worksheet in that module since that custom code to make the definition of properties field editable in the form view is only useful in worksheet template and so it is not really needed to have it in web module.
Resolved issues and error corrections
This update addresses a change in Sendcloud's API, ensuring our system continues to reliably process deliveries. By adding a specific API key, we maintain compatibility with Sendcloud's older version, guaranteeing a seamless transition for our users and accurate delivery tracking. Future work will focus on upgrading to the latest Sendcloud API.
Original PR description
Sendcloud pass their api v2 to maintenance and only provide new api V3 key to the new customers. In order to make a smooth transition for the user we add the partner key, so they know that the customer are coming from odoo and they use the v2 api. Future work will be done to upgrade our module and support the v3. API key. Forward-Port-Of: odoo/enterprise#115999 Forward-Port-Of: odoo/enterprise#114441
This update fixes an issue where users could select customers from different companies within the Helpdesk system. The fix involved adding a restriction to the customer selection process, ensuring users only see customers within their assigned company. This improves data accuracy and prevents errors in ticket management.
Original PR description
Steps to reproduce: - - Create two companies (Company A and Company B) - Create one partner in each company - Enable both companies for the user - Open Helpdesk and go to the tickets Kanban view for a Company A team. - In the quick create form, the customer dropdown shows customers from Company B Issue: - - Customers from other companies are visible in the customer field, Cause: - - The partner_id field in the quick create view had no domain, so it displayed partners from all allowed companies. Solution: - - Added a domain on partner_id in the Python field. task-4971466 Forward-Port-Of: odoo/enterprise#116157 Forward-Port-Of: odoo/enterprise#111909
This update resolves a bug that caused bank reconciliation balances to reset to zero after editing a bank move line when using multiple currencies. The fix ensures accurate balance calculations during bank reconciliation processes, improving financial reporting reliability.
Original PR description
Fixed an issue where when editing a move line for the bank reconciliation and setting the currency to a currency other than the company's currency if we edit the move line again we will find that the balance is equal to 0. task-6037835 Forward-Port-Of: odoo/enterprise#114898
A bug in the testing process was causing tests to fail when demo data was loaded. This was due to a duplicate IoT Box record existing in both the test setup and the demo data. This fix resolves the conflict, ensuring tests run correctly and reliably.
Original PR description
We define an IoT Box record in tests with name "Shop". Another IoT Box with this name is defined in the demo data of the module. As a result, when tests are started with demo data loaded, we tend to click on the first IoT Box record with whis name, which correspond to the one from demo data. Some tests are then failing as they can't find device record defined in the test setup. related: odoo/enterprise#96760 Forward-Port-Of: odoo/enterprise#116234
This update adjusts the placement of editable value pencils in reports, moving them to the right of the data for a more intuitive and user-friendly experience. All report values have been aligned to the right, ensuring consistent readability regardless of whether a value is editable.
Original PR description
The UI for editable values in reports was recently revamped. Currently, the pencil icon for editing the values is awkwardly positioned between the text and the value of a line in a report. This change moves the pencil to the right of any editable values. All report values have been shifted so that they are still right-aligned, regardless of whether they are editable or not. task-6086452 Forward-Port-Of: odoo/enterprise#113535
This update fixes an issue where Amazon order-related stock moves incorrectly displayed 'False' as their reference. The change updates the system to use the 'reference' field, which is automatically calculated, ensuring accurate tracking of Amazon orders within the stock management system. This resolves a potential reporting discrepancy.
Original PR description
Issue ----- Commit d0c1e78 removed the `name` field of `stock.move`. Instead, we now use the `reference`field, which is computed in `_compute_reference` https://github.com/odoo/odoo/blob/2ec714b19e2c56bff965ab32f7e6a4485df2d247/addons/stock/models/stock_move.py#L357-L369 The problem is that there is no picking linked to the move, so `move.reference` is set to `False`. This means that, after we go through the override in `sale_amazon`, we end up with `Amazon move: False` https://github.com/odoo/enterprise/blob/596d8c1216b33c1f73feb8f60eef1b69a2164579/sale_amazon/models/stock_move.py#L10-L14 ----- Ticket: opw-5969357 Forward-Port-Of: odoo/enterprise#116109 Forward-Port-Of: odoo/enterprise#114345
This update fixes an issue where the valid date range for emission factors wasn't being displayed correctly. The missing 'always_range' option was the root cause, now resolved to ensure accurate date information is shown to users. This improves the reliability of ESG reporting data.
Original PR description
Before this commit, the validity period was not correctly displayed because the always_range option was missing no related task Forward-Port-Of: odoo/enterprise#115832 Forward-Port-Of: odoo/enterprise#114784
This update resolves an error preventing the import of emissions data related to journal entries. The fix restricts imports to manual emissions, streamlining the reporting process and addressing a technical limitation. This ensures accurate ESG reporting by preventing import errors.
Original PR description
The import button is present in the Emitted Emissions menu, but it produces the following error: "cannot insert into view 'esg_carbon_emission_report' DETAIL: Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." => To fix this, we will only allow the insertion of manual emissions (model: other.emission) via import, not emissions related to journal entries. task-6168587 Forward-Port-Of: odoo/enterprise#116092 Forward-Port-Of: odoo/enterprise#115306
This update corrects a minor issue where the 'unfold all' option was incorrectly applied during the export of aged receivable reports (like PDFs). Previously, this resulted in overly complex reports. This fix ensures that reports are generated with the correct level of detail, improving report clarity and usability.
Original PR description
This commit introduced a small issue: https://github.com/odoo/enterprise/commit/40484f985f511edd7ba2ae759ce63ef564bcf1f7 When exporting a report (the aged receivable in pdf for example), the option key "unfold_all" was set but shouldn't be. Forward-Port-Of: odoo/enterprise#115985
This update resolves a tour test failure in the HR contract salary module. The issue was caused by a missing employee type configuration, which prevented the tour from running correctly. This fix ensures the tour test passes, indicating proper functionality for salary configurations.
Original PR description
tour test is failing without employee_type task-6186664 Forward-Port-Of: odoo/enterprise#116057
A recent issue prevented non-administrator users from importing websites due to restricted access to a key database model. This update grants read-only access to a broader group of users, allowing the website import process to function correctly for everyone. The change ensures a smoother experience for all users importing websites.
Original PR description
Steps to reproduce: =================== 1. On a 19.1, launch a website import as admin 2. Log in as a non-admin internal user => AccessError on website_generator.request Cause: ====== The website generator systray polls `website_generator.request` on every page load: https://github.com/odoo/enterprise/blob/0226ad15abc8db70f8e379fddec3d83d15749c85/website_generator/static/src/systray_items/generator_request.js#L48 Only `base.group_system` had access on the model, so any non-admin user hit an AccessError as soon as an import request existed (session_info sets show_scraper_systray=True for everyone based on the last request's notified flag). Solution: ========= Grant read-only access to `base.group_user`; writes/creates stay restricted to system so the import flow itself is unchanged. => Systray loads silently, shows status indicator opw-6092411 Forward-Port-Of: odoo/enterprise#114879
This update fixes a problem where the 'attach file' button wasn't working correctly in the Enterprise version of Odoo. The change ensures the button is enabled only after the email thread has fully loaded, improving the user experience and preventing errors when attempting to attach files.
Original PR description
Wait for the attach file button to be enabled, meaning that the thread is loaded. PR community: https://github.com/odoo/odoo/pull/262018 Forward-Port-Of: odoo/enterprise#115658
This update corrects a previous issue where payslips were incorrectly referencing contract dates instead of the version's dates. The fix ensures payslips accurately reflect the correct payroll version, improving data consistency and reporting. This change was enabled by a related update to search functionality.
Original PR description
Prior to this commit, the version domain on payslips only looked at the contract dates rather than the version's dates. The domain was fixed in this commit to limit the domain based on the version's dates instead, and this was allowed after the searches on the version date_start and date_end fields were fixed in the odoo/odoo#256581. task-6067139 Forward-Port-Of: odoo/enterprise#113818
This update fixes an issue where users couldn't delete time off requests after a payslip had been validated. Previously, the system incorrectly blocked deletion, even if the time off wasn't impacting the payslip calculation. Now, time off requests can be deleted regardless of payslip validation status, streamlining payroll processes.
Original PR description
## Issue After confirming a payslip for a period, no time off request within that period can be deleted, even though requests are ont taken into account in the payslip if they are not approved. ##…
## Issue
After confirming a payslip for a period, no time off request within that period can be deleted, even though requests are ont taken into account in the payslip if they are not approved.
## Steps to reproduce
1. Install *Time Off in Payslips* (`hr_payroll_holidays`)
2. Create or use an employee E with a running contract, e.g.:
- Contract: Jan 1 to Indefinite
- Wage: $1000/month
3. In Time Off > Management > Time off, create a new time off allocation for Employee E:
- Date: anywhere during March
- **Do not validate the time off**
4. In Payroll > Payslips, create a new Off-Cycle for Employee E:
- Period: March 1 - March 31
- *Compute Sheet*, *Confirm* and *Mark as paid*
5. Try to delete the allocation created in step 3
6. **An error occurs: _"The pay of the month is already validated with this day included. If you need to adapt, please refer to HR."_, even though the time off is not taken into account in the payslip.**
## Cause
The condition to raise the error message does not take into account the state of the leave:
https://github.com/odoo/enterprise/blob/2d2056766441157dc45ebc37b677841c44e5c513/hr_payroll_holidays/models/hr_leave.py#L195-L204
This commit completes https://github.com/odoo/enterprise/pull/114895, which was preventing the error from being raised when time off were generated after validating the payslip. The error should also not be raised for leaves that are not approved yet, as they did not impact the generation of the payslip.
(related to)
opw-6089990
Forward-Port-Of: odoo/enterprise#116024
Forward-Port-Of: odoo/enterprise#115765This update resolves an issue where the softphone tour started with the wrong tab, causing confusion during initial use. The fix ensures the softphone displays the 'recent calls' tab immediately upon opening, improving the user experience. It addresses a minor display problem that could have impacted tour flow.
Original PR description
Commit [1] made the softphone to show recent tab when there are missed calls. Commit [2] changed the demo data to contain 1 missed call. As a result, now when you open the softphone for the first time, you will see recent tab instead of the keypad tab before. This causes issues when a tour starts with switching to, for example, contacts tab, and then do a search for something immediatly. This is because that `input[id='o-voip-Tab-searchInput']` can be found on both recent and contacts tab. It can happen that we do the search before the dom change finished. To avoid that, we add extra check to make sure we have changed to the tab we want. [1]: c995b7df3fc6ff541dc65d8b28661ab03f4a8c08 [2]: f16faa029220ca7152289180c4de78783bab03be Forward-Port-Of: odoo/enterprise#116239
This update resolves an issue where the last column of accounting reports was partially cut off when scrolling to the bottom. Adding bottom padding ensures all data is visible and accessible, improving the clarity and usability of these reports. This change was implemented to address a visual discrepancy impacting report accuracy.
Original PR description
Before this commit, there was no bottom padding in the accounting reports, which caused the last column’s values to appear partially cut off when scrolling to the bottom. This issue started occurring after the PR: https://github.com/odoo/enterprise/pull/99198 opw-6130981 **Before fix (runbot)** <img width="1920" height="1005" alt="image" src="https://github.com/user-attachments/assets/808bbb2b-3b4e-4b5c-a872-b8bd7bf589ba" /> **After fix:** <img width="1917" height="1006" alt="image" src="https://github.com/user-attachments/assets/55f04e1f-0469-46e1-af69-f5055a7232d9" /> Forward-Port-Of: odoo/enterprise#116329 Forward-Port-Of: odoo/enterprise#116168
This update resolves an issue where the purchase dashboard's spreadsheet data was misconfigured, leading to inaccurate reporting. The fix ensures the correct pivot ID is used in the formulas, resulting in more reliable purchase data visualization. This improves the accuracy of the dashboard for business insights.
Original PR description
This commits fixes the pivot id in some formulas. Task: 5875749 Forward-Port-Of: odoo/enterprise#116110 Forward-Port-Of: odoo/enterprise#114559
This update resolves an issue causing instability in the overtime ruleset tour within the Odoo Enterprise system. By removing redundant steps and improving the tour's selection process, the system is now more reliable and predictable. This ensures a smoother user experience when configuring overtime rules.
Original PR description
This commit stabilizes the 'overtime_ruleset_flow' tour by making the following adjustments: - Updated the wage field selector to be less fragile (removed nth-child dependency). - Removed a redundant dropdown selection step that was causing potential timing issues. - Removed the 'undeterministicTour_doNotCopy' flag to mark the tour as stable.
This update corrects a problem with the Intrastat CSV export that occurred after a recent technical update. The fix ensures accurate data reporting by resolving an issue where commodity flow codes were incorrectly formatted and by updating database connections. This prevents data discrepancies in Intrastat reports.
Original PR description
Since the technical refactoring of intrastat in 18.0, the csv export in `l10n_nl_intrastat` seems broken. Here is the fixes done in this commit: 1. `Commodity flow` is supposed to be a single diggit (6 or 7) but an empty blank space was hidden. 2. Switching the condition on `country_origin_code` as it was the opposite 3. Add a `flush_all` before calling the report during the export, to be sure the database is up to date. opw-5799126 Forward-Port-Of: odoo/enterprise#116230 Forward-Port-Of: odoo/enterprise#115791
This update adds a backup printer option for preparation receipts when the POS system isn't connected to the internet. Now, even if the POS is on a local network but lacks internet access, it can still print out preparation receipts to a designated fallback printer, ensuring operations continue smoothly.
Original PR description
in this commit: - Added a fallback printer for the Preparation Display. - If the POS is not connected to the internet but is on the local network, it can send the preparation receipt to the fallback printer. task-5249489 related pr: https://github.com/odoo/odoo/pull/241062
This update resolves a minor issue that occasionally caused the Gantt chart's side panel to fail during edge scrolling tests. The fix ensures the chart's elements are consistently accessible, improving overall stability and reliability of the Gantt chart feature. This prevents disruptions for users relying on this functionality.
Original PR description
This commit resolves intermittent flakiness in the Gantt side panel edge scrolling tests. Previously, the test could fail because the target pill element would occasionally become unbound (detached from the DOM) following the unsuccessful drag-and-drop sequence. The test logic has been updated to ensure the element reference is re-queried appropriately. runbot-error-243446 Forward-Port-Of: odoo/enterprise#116059
This update simplifies the account reports module by removing unused parameters from a method. This small change improves the efficiency of the system without impacting functionality. It's a routine maintenance task to keep the code clean and performant.
Original PR description
In account return, the `_get_return_name` and `_get_period_name` method uses `minimal` default parameter which does not seems to be used anywhere else, hence it always evaluates to `False` and this leads to unnecessary condition evaluations. This commit removes this default parameter from the related methods and make the it slightly more simpler :-)
This update prevents users from creating joint committees directly from the employee form. This change reduces the risk of configuration errors and improves the overall stability of the HR payroll module. It ensures that committee setup is managed through the correct processes.
Original PR description
Disabling the creation of joint committee from the employee form, as its configuration is not something user are supposed to create on the fly, it can quickly lead to errors. task-6187649
This update addresses an issue where incorrect NISS codes (identification numbers) could cause errors when populating employee birthdates. The system now gracefully handles these invalid codes, preventing errors and ensuring accurate data entry. Additionally, a warning is displayed if a correctly entered birthdate is later changed, highlighting potential inconsistencies.
Original PR description
NISS codes are 11-digit-long codes that encode information about a person. The first 6 should be encoding the birthday in the format YYMMDD but sometimes the given code indicates a date that doesn't exist. One example of such a code is 88000119769 and we should allow these codes to be inserted. The last two digits of the code are computed based on the first 9, so if those are correct we suppose there was no typo and the date is meant to be like that. In a function called _parse_niss we extract some information from the code to populate some fields on the employee model, however if the date is not correct a traceback is thrown. Here we catch the error and we just avoid updating the birthday in these cases. In cases were, instead, we put a correct NISS and the birthday gets autofilled but we later change the birthday, we add a Dashboard Warning signaling this inconsistency. Task: 6180252
This update streamlines the sign refusal process by ensuring the email notifications now correctly include the name of the partner who refused to sign. Previously, the system requested redundant information (name and email) when a sign request was sent directly to a known signer. This change improves user experience and data accuracy.
Original PR description
When a sign request was sent directly to a known signer (not via a shared link), the refusal dialog asked for the signer's name and email even though it's already available on their partner. Also update the refusal emails title to reflect the actual partner name who refused to sign. task-6146458
This update fixes a problem where demo data in the Odoo test database caused ESG report tests to fail. The team adjusted the report's date and related records to an ancient date, eliminating interference from external data and ensuring reliable test results. This improves the stability of the ESG reporting process.
Original PR description
There was an issue when setting in draft all the account moves of the test DB before running the ESG report tests. In that process, some account moves were actually removed, which results in a 'Not found' record error. As the ESG report searches for all the account moves given a period (in all companies of the DB), some demo data could make the test to fail. We handle that issue by changing the date of the report and the related records to a very ancient date, to ensure that no external data will disturb the test. We also make that change for tests related to the HR part of the ESG report. runbot-error: https://runbot.odoo.com/odoo/runbot.build.error/242321 Forward-Port-Of: odoo/enterprise#116257
This update fixes a minor issue in the Swiss payroll module (l10n_ch_hr_payroll) related to the calculation of minimum income tax (min-IS) during the reversal of Quebec Sales Tax (QST). The change ensures accurate tax reporting, aligning with Swiss tax regulations and improving financial reporting accuracy.
Original PR description
opw 6133391 Fix for the source tax correction following PR #114463 Forward-Port-Of: odoo/enterprise#115585
This update resolves an issue where multiple signed documents with the same subject were not being correctly downloaded into a single zip file. The fix ensures that all documents with identical subjects are included in the generated zip file, improving the user experience and preventing data loss. This change was made to maintain consistent behavior across versions.
Original PR description
## Issue In the *Sign* app, when attempting to download multiple documents with similar subjects, only one document appears in the resulting zip file. ## Steps to reproduce 1. Install *Sign* (`sign`)…
## Issue
In the *Sign* app, when attempting to download multiple documents with similar subjects, only one document appears in the resulting zip file.
## Steps to reproduce
1. Install *Sign* (`sign`)
2. Sign a same template twice, using the same subject S1. This gives us Documents D1 an D2.
3. (Optionally), sign the same template a third time, using a different subject S2, creating document D3.
4. In Sign > Documents, select the 2 (3) signed documents and click *Download*.
5. **In the resulting zip file, there's one folder S1 containing a single pdf document (D1) (and one folder S2 containing D3). Document D2 is missing from the zip file.**
## Cause
When generating the zip file, the path used for each document is `{subject}/{doc_name}`.
https://github.com/odoo/enterprise/blob/863abc99469c12acdebcab05788d566c370bb46f/sign/controllers/main.py#L276-L286
Neither of this attribute are unique, which means that two signed documents with the same name and subject can be downloaded simultaneously, but will then overwrite each other.
## Fix
Before version 18.3, the zip file would contain folders named with the (unique) request id, which would consistently make them distinct from one another. This behavior was changed by https://github.com/odoo/enterprise/commit/4254542e8fb4ce3b2b9b46c624d86f7fcac8df7b to use the `sign_request.subject` instead. This commit adds the `request.id` after the subject to keep the clarity of the subject, and add the uniqueness of the id.
opw-6143128
Forward-Port-Of: odoo/enterprise#116179
Forward-Port-Of: odoo/enterprise#116013This update removes unnecessary padding from the AI systray button, resulting in a cleaner and more consistent look. The change was made to streamline the styling and ensure the button's design aligns with the overall application theme. This is a minor visual improvement.
Original PR description
Remove the `btn` class because it adds additional padding, and eliminate the other unnecessary classes since the rules have already been applied in the `navbar.scss` file. task-5079952 Forward-Port-Of: odoo/enterprise#116509 Forward-Port-Of: odoo/enterprise#116423
This update resolves a problem where a tour element was incorrectly triggered in the VoIP feature, causing unexpected behavior. The fix narrows the trigger to only the keypad tab, ensuring the tour initiates correctly when users switch to that mode. This improves the user experience for VoIP calls.
Original PR description
Similar as [1], trigger `.o-voip-Softphone .o-voip-countryFlag` can be found on both recent and keypad tab. It's possible to find it before dom actually change to keypad tab. In this commit, we narrow down the trigger so that it can only be found on keypad tab. [1]: d838dd6dccdaeb8e9d6676ef4ccb5bbced4441a9 Forward-Port-Of: odoo/enterprise#116535
This update resolves a few minor issues related to appointment scheduling within the Enterprise module. Specifically, it ensures resources are correctly filtered based on appointment types, addresses a warning in the search filter, and corrects a problem where the wrong customer form was used when booking appointments from the Gantt view. These changes enhance the user experience and data accuracy.
Original PR description
1. Filter resources based on the appointment type When adding a closing day from the Gantt view, every resource could be selected, even those not related to the current appointment type. Now, if a default appointment type is set in the context, resources are filtered to only show those related to that appointment type. 2. Warning with PosAppointmentSearchFilter A console warning was logged because the empty props of the PosAppointmentSearchFilter component were not explicitly declared. 3. Change partner form view when booking from the Gantt view When creating or editing a booking from the Gantt view, we could select a customer, but the default partner form was used instead of the one already created for the PartnerList component. --- Task: https://www.odoo.com/odoo/project/1737/tasks/6147711 Forward-Port-Of: odoo/enterprise#114677
The Gantt view now accurately displays operation durations in hours instead of minutes. This change was necessary to ensure that production planning timelines are presented correctly, improving the reliability of work order scheduling. This fix resolves a discrepancy identified during a recent formatting update.
Original PR description
Issue ----- In the gantt view, operation duration is displayed as minutes but is actually in hours. Steps to reproduce ----- - Enable work orders - Create a product with a BoM - Add an operation with some duration on the BoM - Creation a MO for the product, confirm & plan - Open the gantt view > Duration is displayed in minutes Cause ----- Overlooked by the rework of formatter done in b764335. Value is in hours but unit is set to "minutes". https://github.com/odoo/enterprise/blob/8281fe6c830dce94ca851bf4bd5c768443721f17/mrp_workorder/static/src/mrp_workorder_gantt_renderer.js#L46-L49 ----- Ticket: opw-6109524 Forward-Port-Of: odoo/enterprise#113829
This update fixes an issue where a blank box was sometimes visible on smaller screens when rental dates weren't being entered. We've adjusted the display logic to ensure the box only appears when rental dates are actually selected, improving the user experience. This change focuses on the 'sale' module.
Original PR description
Previously, the `<div>` was displayed even when its content was hidden due to the "invisible" attribute. To fix this, we move the visibility condition to the parent. This works since the `<button>` (in charge of updating rental line prices) already has a stricter invisibility condition. Note that `.o_input_box` doesn't exist anymore. Related commit: https://github.com/odoo/enterprise/commit/7cdfe5bd1541380d746f3208bc198fb89f7cb22a Forward-Port-Of: odoo/enterprise#116429
This update resolves an issue where inactive reports were appearing in report search results, and a bug related to the VAT Return (CZ) report. The fix ensures accurate report filtering and prevents crashes when selecting reports, improving the user experience for financial reporting.
Original PR description
When searching for reports through the search panel inactive reports still show up in the result, this change hide the inactive variant reports from the search result. Also, fixes a minor bug related the l10n_cz, When search for VAT Return (CZ) it would cause a bug due to missing the target report to look into. task: 6149101 Forward-Port-Of: odoo/enterprise#115500
This update automatically adds new UNSPSC codes to the Odoo database when the product module is updated. Previously, these codes could only be added during initial installation, creating a delay in reflecting the latest industry standards. This change ensures our product data remains current and accurate.
Original PR description
**Problem:** Periodically, the UNSPSC codes may be updated and they must be added to existing databases. Normally this is done by module update, however, since there are thousands of UNSPSC codes, a CSV imported via SQL is used instead of XML files. This import is only implemented on module install and not module update, so there is no way to update the UNSPSC codes in existing databases. **Solution:** An upgrade script based on the post-init hook has been added, which will add the new codes to the database, if any. Note that: - The version of this upgrade script should be bumped any time the codes list is updated. - Existing records will not be updated opw-5943366 Forward-Port-Of: odoo/enterprise#116063 Forward-Port-Of: odoo/enterprise#112652
Features or functions removed from Odoo
This update removes unnecessary data from notifications related to knowledge articles. This change streamlines the notification process, improving performance and reducing potential data storage needs. It's a standard improvement for the Enterprise version of Odoo.
Original PR description
Enterprise counter-part. https://github.com/odoo/odoo/pull/260476
This update removes a redundant stage in the payment terminal drivers for Odoo Enterprise. This simplifies the drivers and reduces network traffic by eliminating a stage that isn't used in Point of Sale (PoS) transactions. The change was made to improve efficiency and performance.
Original PR description
To simplify drivers and reduce the amount of requests on the network, we remove the WaitingForCard stage on payment terminals (we don't use this stage in PoS). see odoo/odoo#263057 task: 6196796
This pull request removes outdated and unused code from several Odoo Point of Sale (POS) modules. This cleanup improves the overall stability and maintainability of the system, reducing potential future issues. The changes primarily focus on internal code improvements within the POS functionality.
Original PR description
https://github.com/odoo/odoo/pull/257287 Task 6085691
This update removes outdated code related to a previously removed component, specifically `o.__TipTemplateDef`, from several test files within the HR and payroll modules. This cleanup improves the efficiency of the testing process and ensures the codebase remains streamlined.
Original PR description
…TemplateDef With this commit, we remove steps that use unused odoo.__TipTemplateDef that was removed in https://github.com/odoo/enterprise/commit/18217a3d4d2580f4216daf6fdcc57cddcb2c757b
Code cleanup and technical improvements
This update improves the speed of Odoo's automated tests by optimizing how test environments are set up. Specifically, a change was made to the setup process, leading to faster test execution times. This results in quicker feedback during development and a more efficient testing cycle.
Original PR description
Enterprise counter-part. https://github.com/odoo/odoo/pull/252626
This update refactors how access tokens are used within the Enterprise documents module, enhancing its flexibility and reusability across other Odoo controllers. This change improves the overall architecture and makes it easier to integrate documents with other features within the system. It's a routine maintenance update focused on code quality.
Original PR description
This improves extensibility and reuse in other controllers. Task-6196107
This update prepares Odoo for OWL3 by adding `.this` to template variables that reference component data. This change is necessary to ensure proper functionality with the new OWL3 rendering engine. Manual adjustments were also made to specific modules to accommodate this update.
Original PR description
[REF] *: run rendering context migration script on inline xml In preparation for OWL3, where template variables will need to use `.this` to target component variables, we add `.this` to template variables that are targetting the component. Script PR: #247965 If this script did an incorrect change, add variable to whitelist (see script PR) or send msg to JESC. task: OWL3 prep - add this. to template variables Community PR: odoo/odoo#262992
This update streamlines testing for Odoo's document management features by consolidating tests across different bridges and modules. It also improves how company settings are handled when documents are moved, and avoids unnecessary edits within test code, ensuring more reliable and organized testing.
Original PR description
Additionally, improving check_company use on res.config.settings in bridges. As the documents mixins are not used in `documents`, we've previously been adding tests about them across bridges as usage arose. This was impractical because these tests are spread, need to be moved when the mixin use changes in that bridge, etc. Note on test changes: The most 'generic' tests are moved out of each bridge while the specific logic ones are left in place and a variant is added to `test_documents_full`. Task-4855358