Odoo Release Updates
Every commit to Odoo Community and Enterprise, parsed and categorized. Never miss a bug fix, improvement, or new feature.
Activity
2026-03-28
[PERF] stock_account: use strict valued locations for valuation
[FIX] purchase_stock,mrp: prevent buy to resupply from reenabling automatically
[FIX] account_peppol: Remove xrechung document type registration
2026-03-27
[IMP] spreadsheet: update o_spreadsheet to latest version
[IMP] hr_recruitment: Add matching to talent applications
[IMP] mail: add internal field option to Store fields
2026-03-26
This commit adds merge and unmerge functionality for table cells in the HTML editor, along with infrastructure improvements for handling colspan and rowspan attributes during copy-paste operations and table grid management. The feature intelligently disables merge options when selections span multiple rows and columns or include already-merged cells, while unmerge capability only appears for cells with active span attributes. Supporting changes include enhanced clipboard handling for colspan/rowspan preservation, refactored table grid building for accurate column tracking with merged cells, and improved drag-drop operations that respect merged cell boundaries.
[IMP] html_editor: merge and unmerge selected cells
This fix addresses runtime errors in the signature canvas feature by adding defensive checks to ensure the canvas element is properly initialized before attempting to render the user's name. The changes prevent crashes when the canvas lacks pixel data or dimensional properties, and improve the tour testing helper's robustness by validating canvas state before accessing its rendering context.
[FIX] web: wait canvas before sign
This commit relocates the test_guess_mimetypes test module from the test_orm addon to the test_tools addon, reorganizing test suite structure to better align mimetype utility testing with the tools module where the actual mimetype functionality resides. This improves code organization by grouping related tests closer to their implementation and resolves an open issue tracking this structural improvement.
[MOV] core: test_guess_mimetypes from test_orm to test_tools
This fix corrects the logic flow in the websocket kick_all function by moving the sleep operation before the connection state check, rather than after it. This ensures the system actually waits the intended time before checking if websockets have closed, eliminating false warnings about remaining connections and reducing the timeout window from an unbounded calculation to a consistent 5 seconds.
[FIX] bus: fine-tune resilient websocket kick_all
2026-03-25
[REF] sale_timesheet, test_discuss_full: query count
[FIX] im_livechat: pregenerate .assets_embed_external bundle in tests
This commit improves the resilience of the websocket kick-all function used during server shutdown by addressing two critical gaps: preventing new websocket connections from being accepted once shutdown begins (via a new _stopping event that returns HTTP 503) and ensuring the function actually waits for all existing websockets to fully close before completing, with polling and retry logic up to a maximum timeout. The test was also updated to verify that websocket disconnection callbacks are properly invoked during this shutdown sequence.
[FIX] bus: more resilient websocket kick_all
This commit refactors the out-of-office date formatting logic in the HR Holidays module by replacing custom Luxon-based date formatting code with the standardized toLocaleDateString utility function from the web core library. The change maintains identical functionality while reducing code duplication and improving maintainability by leveraging a shared formatting function that handles locale-aware date display consistently across the application.
[IMP] hr_holidays: replace custom code
This commit improves the assertBus test helper's error messaging when bus notifications arrive in an unexpected order. It refactors the matching logic to distinguish between messages that are completely missing versus messages that arrived but in the wrong sequence, then displays both the expected and actual order in error messages to aid debugging. This makes test failures clearer for developers working with the bus module's asynchronous messaging.
[IMP] bus: improve assertBus order message