Thursday, October 10, 2024
12 changes · master
Enhancements to existing features
This update strengthens Odoo's core environment handling by limiting unexpected attribute changes and enabling lazy values in more internal components. It is mainly an internal reliability and maintainability improvement, with broad test coverage across several business modules to ensure existing workflows continue to behave correctly.
Original PR description
Adding support for lazy properties on slotted classes. This allows us to use slots on Environment and locking its attributes. odoo/enterprise#70522 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Chinese localization users can now see fapiao information directly in the invoice list. This makes it easier for finance teams to review and manage invoices that require Chinese tax invoice tracking without opening each invoice individually.
Original PR description
Description of the issue/feature this PR addresses: Add fapiao to invoice list view --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Odoo now avoids loading all command-line tools whenever the main application package is imported. This reduces unnecessary startup work and can make launch or scripting operations faster without changing user-facing behavior.
Original PR description
When importing `odoo` we don't need to import the cli every time. It is imported as needed in the scripts that start Odoo. The `Command` discovery only needs to happen to the used command. We can avoid importing all commands if we just run one of them saving time at startup. Related to #175940 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Odoo removes an unused display option that was only applied to settings pages. This keeps settings behavior the same for users while simplifying maintenance and reducing unnecessary background loading.
Original PR description
The model IrActionsActWindow has a target selection field. Its value can be "current", "new", "main", "fullscreen" or "inline". The latter value is useless. It is only used on settings actions. Historically, it forced the form view mode to "edit", which is now always the case. It also ensures that we don't load dynamic filters and we don't have a search view, since it is set on actions that only have a form view (no multi record views). In this commit, we remove the value inline from the target selection and remove that value in every actions that used to have that target. This means that the default "current" will be used. For the model "res.config.settings" on which all inline actions were defined, we hard code that loadActionMenus should be false, since for the settigs actions we do not have the cog menu anyway. Task ID: 3245566
The web module's mobile status bar field tests were moved to Odoo's newer testing framework. This improves test maintainability and helps ensure the mobile interface remains reliable without changing user-facing behavior.
Original PR description
task-4028335
This update moves mobile tests for tag selection and barcode-related fields to a newer testing framework. It helps keep Odoo's web interface quality checks easier to maintain and more reliable without changing day-to-day user behavior.
Original PR description
task-4028335 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
Breadcrumbs in the web interface now show the related view type when users hover over them. Collapsed breadcrumb items also include tooltips, making navigation context easier to understand without opening each item.
Original PR description
This commit adds the view type to the tooltip when the breadcrumb is hovered. This commit also adds a tooltip on the collapsed breadcrumb items. task-id: 4070508 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
This update makes it easier for developers to access the working environment from web controllers, reducing a common source of mistakes. It is an internal improvement that helps keep custom and core web code more consistent without changing business workflows.
Original PR description
A common mistake when writing a controller, is to use `self.env` instead of `request.env`. With the addition of this property, this common mistake can be avoided. The downside is that there now are two ways of achieving the same thing... Note: it is not possible to log a warning on Controller.env usage, because `inspect.getmembers()` accesses the attribute when building the routing-map, on every controller.
This update includes the stock barcode modules in the project's standard code quality checks. It helps maintain cleaner, more consistent code and reduces the risk of future issues in barcode-related inventory workflows.
Original PR description
Adds `stock_barcode` and children modules on the *not-to-ignore* list for the eslint. Enterprise PR: odoo/enterprise#71556
This update standardizes the JavaScript code style across barcode-related inventory, manufacturing, batch picking, subcontracting, lookup, quality control, and expiry modules. It is an internal maintenance change that should make future development and reviews easier without changing day-to-day user workflows.
Original PR description
*: stock_barcode_mrp, stock_barcode_mrp_subcontracting, stock_barcode_picking_batch, stock_barcode_barcodelookup, stock_barcode_quality_control, stock_barcode_quality_control_picking_batch, stock_barcode_quality_mrp Following the community PR odoo/odoo#182955 , made all needed changes to follow eslint rules.
Several Odoo apps were updated to stop using an outdated window-opening option. Users should see the same practical behavior, while the system stays aligned with the latest platform standard.
Original PR description
In https://github.com/odoo/odoo/pull/182800, the selection value "inline" for the field "target" of "ir.actions.act_window" has been removed. Here we remove that value in some actions that used it. The default target "current" will be used for those actions with a similar result. Task ID: 3245566
Planning screens now use a direct user check to decide when certain buttons or elements should be shown. This simplifies the underlying setup without changing the intended user experience, making the feature easier to maintain.
Original PR description
Previous Implementation: The is_assigned_to_me field was initially created to control the visibility of certain elements (mostly buttons) in planning slot views, using it within the invisible domain. Refactor: This commit replaces the usage of the is_assigned_to_me field with a condition that directly compares user_id with uid. This change streamlines the logic for making elements invisible. task : 4073484