Thursday, May 23, 2024
11 changes · 17.0
New functionality added to Odoo
This update adds automated testing for the Point of Sale IoT device printer functionality. Previously, when IoT devices were connected to the POS system and invoice reports, errors would occur because required services weren't available during testing. This fix ensures the feature works reliably by adding comprehensive test coverage.
Original PR description
Current behavior: When an iot device is linked to the PoS and invoice report, you had an error because action service and iot_websocket service where not available. Steps to reproduce: - Install pos_iot - Set an iot_device printer on the pos session - Set an iot_device on the report of the invoice - Open session, make an order and invoice it - You get an error opw-3792576
This update enhances the mail_enterprise module to store code line count (cloc) results in Odoo's internal configuration parameters (ICP). This change improves system monitoring and reporting capabilities by automatically capturing code metrics during updates, enabling better tracking of codebase size and complexity over time.
Original PR description
Task-id: 3631712 Forward-Port-Of: odoo/enterprise#62751 Forward-Port-Of: odoo/enterprise#52348
Resolved issues and error corrections
The vendor bill upload help popup now appears only when a journal has no existing entries. This prevents unnecessary guidance from interrupting users who already have vendor bill activity in that journal.
Original PR description
When clicking on the upload button on vendor bills journal, the `account_tour_upload_bill` popup is displayed even if we have already some entries in this journal, it should appear only if there is no entry. Since d29a622740f6c34d25c52add5367bfdf58bbaf49 `entries_count` is not present in dashboard datas anymore, so we use `is_sample_data` instead, as `is_sample_data == entries_count == 0` opw-3928821
Documentation and clarification updates
This update records that contributor tisho99 has signed Odoo's Contributor License Agreement (CLA). The CLA signature is a legal requirement that allows Odoo to use and distribute contributions from community members. This is a routine administrative update with no impact on product functionality.
Original PR description
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#165942
The accounting dashboard now correctly detects when a purchase or sales journal already has entries. This prevents users from repeatedly seeing the first-bill onboarding wizard after they have already imported documents, making the upload workflow less confusing.
Original PR description
To reproduce: - Connect as administrator - Create a new purchase journal "Vendor Bills Test" - Go to the accounting dashboard - Click on 'Upload' button on the "Vendor Bills Test" journal record => The 'Import your first bill' wizard open - Import a bill - Go back to the accounting dashboard - Click again on 'Upload' button on the "Vendor Bills Test" journal record => The 'Import your first bill' still open even if the journal has already some entries. After odoo/odoo@d29a622740 the `entries_count` are not returned anymore as part of kanban data for sale/purchase journals, so the view always show the button to open the 'Import your first bill' wizard. This commit re-add the `entries_count` in returned data (we arbitrarily use of count of 1 if there is some entries has its only used to determine what button is display on the kanban record) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The website editor no longer shows duplicate or unnecessary language selector options when multiple languages are enabled. This reduces confusion for users managing website headers and footers and keeps the settings panel clearer.
Original PR description
Before this commit, if a website had at least two languages and the copyright area was disabled, a redundant "Language Selector" button would appear. This is not necessary anymore since the "Language Selector" option is already included within the copyright options. Steps to reproduce: - Navigate to the website editor - In the "Theme" tab, click "Add a Language" to add another language - Type "French" or another language and install it - A language selector will appear in the copyright area - Click on "or edit master" - Click on the "copyright" area at the bottom of the page - Disable the copyright switch button in the right panel - A "Language Selector" will appear below the "Copyright" switch button -> redundant For the same reason, the "None" option for the language selector in the navbar has been removed. The new "Header" options include a "Show/Hide" element specifically for the language selector. This commit addresses these behaviours. task-3576937
Fixes an issue where changing the quantity or units on an expense with an attachment could incorrectly replace the unit price with the total amount. The price is now only recalculated when OCR processing actually requires it, helping users keep accurate expense amounts during edits.
Original PR description
Steps to reproduce: - Create an expense - Add a product (with units) - Save - Add an attachement - Change the units Issue: The price unit will change to match the total Cause: We wanted to avoid using the _price_compute in case of the OCR Solution: We are making sure that the price unit is only recomputed when using the OCR community: https://github.com/odoo/odoo/pull/165352 opw-3869104
This update fixes an issue where maintenance schedule dates with milliseconds could be read incorrectly. It helps ensure manufacturing maintenance schedules are processed reliably, reducing the chance of scheduling errors.
Original PR description
## Before this commit: The schedule date is converted into a string in SQL and then parsed in Python using `Datetime.to_string`. However, it does not support parsing datetime with trailing milliseconds, such as '2024-05-22 10:09:45.5'. ## After this commit: Do not convert the schedule date to a string but put it in a PostgreSQL Array instead. Psycopg2 will convert it into a datetime object automatically, similar to the ORM's behaviour. opw-3932891
A testing component was moved from the CRM Enterprise module to the correct location, enabling community users to run related quality assurance tests. This fix resolves an issue where certain tests were inaccessible to users without the enterprise version.
Original PR description
This was currently defined in `crm_enterprise` which made impossible to run QUnit tests dependent on this model in community. runbot-65889 https://github.com/odoo/odoo/pull/166475
This fix resolves an issue in the e-learning app where the word "false" was incorrectly displayed when a quiz had no description. The problem occurred because the code wasn't properly handling empty description values, causing them to be converted to the text string "false" instead of remaining blank. Users will no longer see this unwanted text when viewing quizzes without descriptions.
Original PR description
Inside our `_fetchQuiz` we pass the markup() to the quiz description to check that the description we have introduced is safe to be converted into html, the problem is that this markup() is not handling properly when the value of `quiz_data.slide_description` is false, so instead of not displaying anything we are sending a string of 'false'. Steps to reproduce: 1. Create quiz-type content inside a course in the e-learning app. 2. Do not add a description to the quiz. 3. Go to the website page of the course. 4. Open the quiz in fullscreen. 5. A "false" message is displayed on the top-left corner. opw-3887445
A test setup function was incorrectly placed in the enterprise-only CRM module, preventing community users from running related tests. This fix moves the function to the standard CRM module so tests can run properly for all users.
Original PR description
This was currently defined in `crm_enterprise` which made impossible to run QUnit tests dependent on this model in community. runbot-65889 https://github.com/odoo/enterprise/pull/63056