Daily updates from Odoo
Friday, August 7, 2026
7 changes
Code cleanup and technical improvements
This update refreshes internal timing helper code to remove a deprecated dependency, keeping the system aligned with the newer OWL framework. It should not change day-to-day user behavior, but reduces future maintenance risk across several business apps.
Original PR description
- community: https://github.com/odoo/odoo/pull/279121 See commit messages for details. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Knowledge app's properties panel was updated to use the newer interface expected by the platform. This keeps the panel behavior stable during future upgrades while preserving the existing user experience.
Original PR description
Replaced `useLayoutEffect` with `useEffect` (from `@odoo/owl`) because `useLayoutEffect` is deprecated in OWL3. `useEffect` was chosen as the replacement because the original effect reacted to…
Replaced `useLayoutEffect` with `useEffect` (from `@odoo/owl`) because `useLayoutEffect` is deprecated in OWL3. `useEffect` was chosen as the replacement because the original effect reacted to dependency changes (`this.props.record.resId` and `this.hasProperties`) — pattern 3 in the OWL3 migration guide. A `void this.props.record.resId;` statement was added at the top of the callback to subscribe to the plain prop dep that is not auto-tracked. The `useLayoutEffect` refactored in this PR has test coverage — below are some tests that failed when the effect was commented out: - @knowledge/options_dropdown/Toggle Properties Panel (desktop) - @knowledge/options_dropdown/Toggle Properties Panel (Mobile) see commented-out runbot build: https://runbot.odoo.com/runbot/batch/2596677/build/114854261 Note: `useEffect` runs asynchronously after paint, whereas `useLayoutEffect` ran synchronously after DOM mutations. The properties panel visibility logic may require synchronous updates; post-merge monitoring of the knowledge test suite is advised.
The Knowledge app now uses a newer, supported way to manage comment screen updates, helping keep the feature compatible with upcoming platform changes. This also removes an obsolete scroll behavior and helps prevent comments from disappearing when switching or reloading articles.
Original PR description
Replaced `useLayoutEffect` with `useEffect` (from `@odoo/owl`) because `useLayoutEffect` is deprecated in OWL3. All 7 effects read their reactive deps naturally inside the body, so `useEffect` auto-tracks them without an explicit dep array. Two effects (`loadRecords`, `loadThreads`) subscribed to deps they did not read naturally via `void` expressions. The use layoutEffect refactored in this PR had test coverage — below are some tests that failed when the effect was commented out, and are now passing: - TestKnowledgeArticleTours.test_knowledge_article_comments see commented-out runbot build: https://runbot.odoo.com/runbot/batch/2594700/build/114736861 `targetRef` was converted from a compat `useRef` to a native `signal.ref()`: `useEffect` runs before the DOM patch, so a compat ref's `.el` accessor is untracked and the popover effect never re-ran after mount; a signal ref triggers re-runs once the element is set.
The Gantt view was updated as part of Odoo's move to the newer Owl framework. This is an internal modernization that helps keep planning views reliable and ready for future platform changes, with no expected change for day-to-day users.
Original PR description
As part of the Owl 3 migration, replace onWillUpdateProps hook with the appropriate Owl 3 alternatives. `Why use bus ?` Replaces `onWillUpdateProps(this.computeDerivedParams)`. The model isn't reactive, so we recompute the derived state on its synchronous "update" event. This ensures it's ready before the next render. Effects run too late.
This update modernizes how several Odoo screens refresh their interface content, removing an outdated internal mechanism. It helps keep dropdowns and embedded editor components more reliable and easier to maintain without changing day-to-day workflows.
Original PR description
- community: https://github.com/odoo/odoo/pull/276842 See commit messages for details. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Web Studio’s automated tests were updated to align with the newer Owl 3 framework. This is an internal maintenance change that helps keep future development and upgrades stable without changing day-to-day user behavior.
Original PR description
As part of the Owl 3 migration, replace deprecated onWillRender hooks with the appropriate Owl 3 alternatives. Community: https://github.com/odoo/odoo/pull/280936
The Knowledge calendar view was updated to use a newer underlying approach that remains compatible with the next version of Odoo's interface framework. A new automated test was added to help ensure this calendar behavior continues to work correctly.
Original PR description
Replaced `useLayoutEffect` with `useEffect` because `useLayoutEffect` is deprecated in OWL3. The useLayoutEffect refactored in this PR had NO test coverage, see commented-out runbot build: https://runbot.odoo.com/runbot/batch/2596755/build/114855786 In this case I wrote a test to make sure the refactoring works (also tested in UI) community PR: https://github.com/odoo/odoo/pull/281002