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-20
This change simplifies the spreadsheet snapshot retrieval logic by directly reading the binary field instead of searching for and accessing the related attachment record. Since Odoo's ORM no longer uses base64 encoding internally, the code eliminates unnecessary database queries and indirect attachment lookups, improving performance on large spreadsheets while maintaining identical functionality.
[REF] spreadsheet_edition: read binary field
This fix prevents right-click context menu interactions from triggering long-press keypad actions in the VoIP softphone module. By restricting long-press detection to left-mouse button only (button 0), the commit eliminates a bug where right-clicking would inadvertently activate long-press features like backspace deletion or voicemail access via key "1", improving the reliability of keypad interactions.
[FIX] voip: prevent keypad long-press with right-click
The net wage field in the payslip summary widget has been centered to align with the basic wage field above it, improving visual consistency across different payroll views. This UI alignment change ensures a coherent user experience when viewing payslip information in various contexts within the HR Payroll module.
[IMP] hr_payroll: align net pay in payslip summary widget
This commit removes a leftover file from the l10n_it_xml_export module that was previously deleted in version 19.0 but accidentally left incomplete. The removal of account_return.py eliminates 151 lines of Italian-specific localization code that extended account return functionality with quarterly month validation and country-specific workflow state logic. This housekeeping resolves a technical debt issue by ensuring the codebase remains clean after the module's deprecation.
[REM] l10n_it_xml_export: remove leftover file
This change standardizes button terminology across spreadsheet modules by replacing "Cancel" labels with "Discard" to align with Odoo's UI conventions. The modification affects two files in the spreadsheet import and global filter components, where cancel buttons now display consistent language that better communicates the action of discarding unsaved changes rather than canceling an operation.
[IMP] *_spreadsheet_*: Use Discard rather than Cancel
The hr_expense_stripe module replaced the mute_logger utility with a custom info_as_debug logging filter that conditionally demotes INFO level logs to DEBUG level, allowing developers to see detailed webhook call tracebacks and other diagnostic information during debug mode while keeping tests clean when running in info mode. This custom filter can be applied as both a context manager and a decorator, giving developers flexibility in controlling which logger outputs are suppressed during testing. The change improves test debugging capabilities by preserving informational logs that were previously completely hidden, making it easier to diagnose issues in Stripe webhook integration flows.
[IMP] hr_expense_stripe: replace mutelogger with info_as_debug logger
Fixed a Colombian POS EDI receipt template where CSS classes were incorrectly applied to Qweb template tags instead of HTML elements. The `mt-3` margin utility class is now properly moved from the `<t>` template tags to the wrapping `<div>` element, ensuring correct styling is applied to the large taxpayer status display on receipts.
[FIX] l10n_co_edi_pos: unused attribute in template
This fix corrects the automated tour testing for the overtime ruleset flow in hr_payroll_attendance by updating DOM selectors that were failing in the runbot environment. The changes replace non-existent or overly specific element triggers with the correct button names and list view selectors, including adding two additional "Continue" button clicks that are now required in the actual workflow sequence.
[FIX] hr_payroll_attendance: fix overtime ruleset flow tour
This fix modifies the local_user_id computation in the databases module to include archived users when linking database users to local res.users records. By adding with_context(active_test=False) to the _read_group query, archived users are now properly referenced instead of being excluded from the lookup, enabling database user associations to persist even after user archival.
[FIX] databases: show local_user_id even if user is archived
This fix corrects the serialization library calls across multiple localization modules (Argentina, Belgium, Mexico) to properly pass bytes objects instead of string objects when loading PEM-formatted private keys. The changes ensure that certificate-based signing operations for EDI document submission and government API authentication work correctly by accessing the .content property of private key fields, which returns the properly encoded bytes format that cryptographic serialization functions expect.
[FIX] l10n: serialization expects bytes
This fix corrects a crash in the Saudi Arabian payroll module's automated data update process by ensuring salary rule category data is refreshed before salary rules that depend on them. The issue occurred because the category_id field was made optional in a prior change, allowing users to delete categories that salary rules still referenced, causing external ID lookup failures during the scheduled cron job.
[FIX] l10n_sa_hr_payroll: prevent error when Payroll Update data cron runs
2026-03-19
[FIX] documents_account_peppol: add documents widget to settings
[IMP] website_generator_sale: Add product sku vals
[FIX] l10n_be_reports: ensure 281.50 pdf templates takes only 1 page by default
[FIX] account_accountant: Filter archived partners in retrieval
[REF] *: run rendering context migration script again
[REF] l10n_be_hr_payroll: refactor eco vouchers to use rule parameter and autoproration
[FIX] currency_rate_live: BNB Currency Provider uses reversed rates
[FIX] l10n_be_hr_payroll: Avoid traceback on connection failure
[FIX] l10n_be_hr_payroll: Add constraint on ONSS company ID configuration
[FIX] l10n_be_hr_payroll: Improve field helper for end user configuration
[FIX] l10n_be_hr_payroll: Fix traceback on Check DmfA connection button