Wednesday, November 13, 2024
4 changes · 18.0
Enhancements to existing features
Stock delivery and production routes now default to make-to-order procurement, making replenishment behavior more direct and predictable. The related system message was also clarified so users better understand how stock availability is handled.
Original PR description
This PR introduces a couple of modifications regarding procurement methods, namely * Stock to Customer/Production rules are now using make to order procurement method instead of mts_else_mto * mts_else_mto message has been modified to better reflect its behavior now --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This improves how Discuss checks access when loading user avatars, avoiding an inefficient database query pattern. As a result, first-time avatar loading is much faster, reducing delays in messaging screens.
Original PR description
## Description Following d6c6351c7f0b241578121d459943fdf2b305571e, the `ir.rule` related to discuss channels got more elaborated, with more subqueries. When loading an `avatar_128`, in an override of…
## Description Following d6c6351c7f0b241578121d459943fdf2b305571e, the `ir.rule` related to discuss channels got more elaborated, with more subqueries. When loading an `avatar_128`, in an override of `_find_record_check_access`, a repetitive domain with an `any` operator on the same left leaf. This repetitive domain + the new `ir.rule` lead to a bad postgres plan, leading to a perf regression. ## Fix Aggregate the right leaf of the domain in a disjonction, it's semantically equivalent, and leads to less subqueries in total for the final query. The plan is simpler and actually uses lazy merging nodes, which allows early exit with the `limit=1`, instead of hashjoins, which forces a total evaluation of the subplans (so `limit=1` is useless in that case). ## Benchmark On next.odoo.com, loading an `avatar_128`, cache disabled in browser (simulating a first load) | | Before | After | Speed-up | |---------------|--------|-------|----------| | Timings (hot) | 3s | 200ms | 15x | --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Colombian electronic invoicing now defaults to Odoo’s free DIAN service when the Colombian EDI module is installed, unless the Carvajal provider has been explicitly configured. This supports the product strategy to promote the free DIAN option and reduces reliance on a third-party provider for new setups.
Original PR description
This commit auto-installs DIAN module with l10n_co_edi. By default, unless Carjaval is specifically configured we will set DIAN as electronic invoicing provider. This is part of our commercial and product strategy starting from V18 is to promote the DIAN Free service (l10n_co_dian) over the third party vendor Carvajal (l10n_co_edi). task-4284522
Online payment initiation now includes the required customer verification flow, allowing the feature to work in production. This improves readiness for real payment processing and includes smaller usability and reliability refinements.
Original PR description
In its current state, payment initiation isn't working in production due to the lack of the KYC flow. This commits adds that alongside other minor changes and imporvements. Task ID: 4216281