Friday, September 2, 2022
20 changes · master
Enhancements to existing features
New Knowledge articles now use "Untitled" as their starting title instead of "New Article." This better reflects that the user has not named the article yet and makes the creation flow clearer.
Original PR description
Currently, in the knowledge module, the default value for the article title(name) is "New Article". A new article does not have a default title, so it is pointless to use the default title "New Article" when creating an article. This commit changes the default value of the article title from "New Article" to "Untitled." As well as that, tours and JS files can now trigger a new default value for the article name. task-2907572
This update adds performance coverage for the appointment scheduling features and reorganizes related tests. It also cleans up internal slot-generation code and documentation so future performance improvements can be measured and delivered with lower risk.
Resolved issues and error corrections
This fixes the color used for list view table headers so they match the appearance users had before the Bootstrap 5 migration. The change keeps the interface visually consistent and removes an obsolete styling line left over from the migration.
Original PR description
Before in BS4, the table used the `$table-head-color` SCSS variable to
color the header of table. This variable doesn't exist anymore on BS5.
In the commit of the BS5's merge, we have replaced the old value by
a value calculated with the color contrast in the case of the list view
it wasn't the right fix, so in community commit we restore the original
value like it was before the merge of BS5.
In this commit, we remove the unused line that was left in
the migration of BS5.
Note:
In BS4 branch the result is `#212529`:
```scss
$o-gray-900: #212529 !default;
$o-main-headings-color: $o-gray-900 !default;
$table-head-color: $o-main-headings-color !default;
.o_list_view .o_list_table thead {
color: $table-head-color;
}
```
In BS5 branch the result is `#00000`:
```scss
.o_list_view .o_list_table thead {
color: color-contrast(opaque($body-bg, $light));
}
```Features or functions removed from Odoo
The manufacturing app no longer adds an instruction note to the barcode menu, avoiding errors when the optional barcode inventory feature is not installed. Users can still download the related instruction PDF from settings, so the practical impact is limited.
Original PR description
Before the OWL conversion of the `stock_barcode` main menu, the override of its template to add the Manufacturing instruction doesn't cause any troubles even if `stock_barcode` wasn't installed (`mrp_workorder` depends of `stock` and `barcodes` but not `stock_barcode`). But after the OWL conversion, the override raises an error if `stock_barcode` isn't installed. Instead of creating a new module only to add a sentence in a XML template, we remove it, since the PDF with the instructions still can be downloaded in the settings.
Code cleanup and technical improvements
This change updates the rental product configurator so it continues to work with a recent internal code structure change. It helps maintain reliable product selection flows on eCommerce rental pages without changing the customer-facing experience.
Original PR description
The product_configurator_modal is now an ES6 module with a named export, this commit adapts the corresponding import.
Miscellaneous changes
Steps to reproduce: - On a small screen (aka mobile) - Open any Pivot view => error about calling `querySelectorAll on null` The Pivot view's small screen customization uses the `this.el` which doesn't exist anymore in the "modern" codebase. This commit get rid of the `this.el` and uses a reference to the root node instead. Forward-Port-Of: odoo/enterprise#30984
Original PR description
Steps to reproduce: - On a small screen (aka mobile) - Open any Pivot view => error about calling `querySelectorAll on null` The Pivot view's small screen customization uses the `this.el` which doesn't exist anymore in the "modern" codebase. This commit get rid of the `this.el` and uses a reference to the root node instead. Forward-Port-Of: odoo/enterprise#30984
This fix updates internal tests so they keep working after a backend optimization changed when data is refreshed. It helps maintain reliability for Helpdesk and Field Service Sales without changing customer-facing features.
Original PR description
…ed_triggers`. `_modified_triggers` read and flush much less than before. Then some test crash because of that, fix it. https://github.com/odoo/odoo/pull/99274
Account reports now apply the correct number styling to all numerical values. This helps keep financial report figures visually consistent and easier to scan for users.
Original PR description
Sometimes the numerical values on an account report will not have the number class. This insures that the number class is properly applied to all numerical values. Signed-off-by: Ruben Gomes <rugo@odoo.com>
The Helpdesk ticket portal layout was adjusted to use page layout components more consistently. This helps keep ticket pages visually aligned and avoids minor display issues for portal users.
Original PR description
In this commit, we replace wrong usage of col without row, also adapt some gutter instead of padding and replace the old btn-block.
This fixes an issue in the sales subscription flow where the wrong unit of measure could be used on order lines. It helps ensure quantities and pricing are calculated consistently for recurring sales.
Original PR description
task-2960768 see also: - https://github.com/odoo/odoo/pull/98780
This fixes how Knowledge pages are accessed through web requests, helping ensure the right user context is used. It reduces the chance of access or permission issues when people open Knowledge content.
Removing someone from a Knowledge article's sharing panel now works without triggering an error. This prevents confusion and keeps collaboration management smooth when updating article access.
Original PR description
When the user removes a member from the share panel, the user will get a missing record error. The error occurs in the `article_remove_member` method: In that method, we fetch the partner from the member after deleting it. When we try to fetch the partner, the model raises an error as the member partner no longer exists. To fix the issue, we will backup a reference of the partner associated to the member we want to delete before deleting it. We will then use that reference in the following instructions. task-2968657
The Knowledge share panel no longer shows article links that the current user cannot open. This prevents users from clicking links that would lead to an access error and makes permission inheritance clearer.
Original PR description
In Knowledge, an article can inherit its permissions and its members from one of its parents. When it happens, the share panel includes a link to the article giving new permissions or members. When the user does not have access to the article, the user will get an access error by clicking on the provided link. To avoid that, we will no longer display a link in the share panel if the user does not have access to the target article. task-2968511
The account reporting engine was cleaned up by removing leftover development code that made the logic harder to understand and maintain. This reduces the risk of future mistakes in account report calculations without changing expected user-facing behavior.
Original PR description
Some code from a dev version of the engine was left in it. It was unclear and error-prone.
Issue: The tests are supposed to pass when the module sign is in standalone and they fail here because the field credit is only added with the account module. No monetary field is set on res.partner with only the sign module that's why we use credit from account. Solution: The test is run only if the field credit exists (if the account module is installed) opw-2920379 Forward-Port-Of: odoo/enterprise#30959 Forward-Port-Of: odoo/enterprise#30834
Original PR description
Issue: The tests are supposed to pass when the module sign is in standalone and they fail here because the field credit is only added with the account module. No monetary field is set on res.partner with only the sign module that's why we use credit from account. Solution: The test is run only if the field credit exists (if the account module is installed) opw-2920379 Forward-Port-Of: odoo/enterprise#30959 Forward-Port-Of: odoo/enterprise#30834
opw-2871127 Forward-Port-Of: odoo/enterprise#31008 Forward-Port-Of: odoo/enterprise#30872
Original PR description
opw-2871127 Forward-Port-Of: odoo/enterprise#31008 Forward-Port-Of: odoo/enterprise#30872
Enterprise part of odoo/odoo#99457 Forward-Port-Of: odoo/enterprise#31005
Original PR description
Enterprise part of odoo/odoo#99457 Forward-Port-Of: odoo/enterprise#31005
Have an invoice in a CO company Click on 'add debit note' Fill the widget, leaving 'copy lines' unchecked and create the debit note Lines will be copied anyway opw-2928727 Forward-Port-Of: odoo/enterprise#30883
Original PR description
Have an invoice in a CO company Click on 'add debit note' Fill the widget, leaving 'copy lines' unchecked and create the debit note Lines will be copied anyway opw-2928727 Forward-Port-Of: odoo/enterprise#30883
SAF-T reports have 2 standards: v1 and v2. Some countries are based on v1 while others on v2. In v1, DebitAmount or CreditAmount are optional, in v2 it's mandatory. This means that for countries using v2, this mandatory field might not always appear. v1 doc:    v2 doc:  This commit addresses this issue by always displaying DebitAmount or CreditAmount even when both credit and debit are 0.0. The choice between the 2 depends on the move type (in_invoice or out_refund = DebitAmount, out_invoice or in_refund = CreditAmount) task id=2920040 Forward-Port-Of: odoo/enterprise#30755 Forward-Port-Of: odoo/enterprise#29509
Appointment link can be lost in the nature and we cannot remove a link and risk 404 for the link Forward-Port-Of: odoo/enterprise#30978
Original PR description
Appointment link can be lost in the nature and we cannot remove a link and risk 404 for the link Forward-Port-Of: odoo/enterprise#30978