Tuesday, April 6, 2021
4 changes · master
Enhancements to existing features
The pull request updates the repository ownership rules so logistics-related code changes are automatically routed to the right team for review. This helps ensure relevant experts are involved earlier, improving review accountability without changing product behavior.
This change makes internal calculation ordering predictable so repeated CRM installations produce consistent database query counts. That consistency helps teams compare performance results more reliably and investigate remaining sources of variation.
Original PR description
[IMP] core: make compute order deterministic CRM install query count can vary from one execution to another, leading to difficulties when analysing performances evolution. The main reason for this is that some compute methods were called in different order. Even if compute order shouldn't have any effect on the final result, making it well defined will help finding other causes of non-determinism. The initial observation was that sorting Environment.fields_to_compute leads to a fixed number of query when installing crm. The main cause of non-determinisim is the usage of `set` impacting Field.compute_value and BaseModel._modified_triggers. Transforming all these `set` to `OrderedSet` solves the problem. The query count is now deterministic when installing a database from scratch, but not when updating a database with -i crm. OrderedSet is also slightly optimised by using a dict instead of an OrderedDict: dict order is deterministic since python3.6
This draft pull request adds test coverage for employee-related behavior in the HR module. It also includes a contributor license agreement file, helping ensure the contribution can be reviewed under project guidelines.
Original PR description
Description of the issue/feature this PR addresses: Together with my team we are investigating the software architecture of your system. To better understand the code base I'm trying to add a new test case to hr_employee Current behavior before PR: Some methods in hr_employee aren't covered by test. Desired behavior after PR is merged: Better test coverage. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The project screens now only show the analytic account option when analytic accounting or timesheets are actually configured. This reduces confusion for users by hiding an accounting-related field when it cannot be used or updated.
Original PR description
Currently, In project module -> configuration -> Project list view column "analytic account" is suggested as a hidden column when the accounting app or timesheet app are not configured. At the same time, the analytic account field is not shown in the project from view and cannot be updated. In this commit, I have made the "analytic account" field a hidden column only when the analytic accounting or timesheet app is configured. And the same applies to the project form view also. Task ID: 2451722