OdooWiki OCA HUB

Module Auto Update

module_auto_update folder_open OCA/server-tools open_in_new
Extra Tools License: LGPL-3

This addon provides mechanisms to compute sha1 hashes of installed addons, and save them in the database. It also provides a method that exploits these mechanisms to update a database by upgrading only the modules for which the hash has changed since the last successful upgrade.

As an alternative to this module click-odoo-update can also be integrated in your non-Odoo maintenance tools instead.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

This module lets you detect which installed Odoo apps have changed on disk and upgrade only those, avoiding a full database upgrade. It is available from the Apps menu for technical users.

This module adds a way to upgrade only the Odoo apps whose files have changed since the last successful upgrade, instead of upgrading everything.

It works by computing a fingerprint (a hash) of the files of each installed app and saving it in the database. When you run the auto-update, it compares the current fingerprints with the saved ones and marks only the changed apps for upgrade.

Where it appears: - A menu item "Auto-Upgrade Modules" under the Apps menu, visible only to technical users (developer mode). - A wizard screen that asks for confirmation and can show the list of impacted apps with their name, description and installed version.

What it does: - The wizard has a "Show Modules to Update" button to preview which apps changed, and a "Confirm" button to launch the upgrade. - If nothing changed and no app is pending installation or removal, it shows a notification and does nothing. - After a successful upgrade, it saves the new fingerprints. - If some apps remain in a pending state after the upgrade, it raises an error.

It also adds a setting to exclude certain file patterns (like compiled files, static assets or tests) from the fingerprint calculation, and it only considers translations for languages installed in Odoo.

It touches the Apps list (ir.module.module) and stores its data in system parameters.

Depends on

base

Menus it adds

Auto-Upgrade Modules
Models and fields (2)
  • ir.module.module · extends an existing model
  • module.auto.update · new modelmodules_to_update_ids (Modules to Update)

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 8 confirmed, 1 with no information of 9 versions.

Sources · Odoo 19.0

Confirmed on 2026-11-03 in branch 19.0 of OCA/server-tools.

terminal Installation and usage

OCA documentation · Odoo 19.0

This module supports the following system parameters:

  • module_auto_update.exclude_patterns: comma-separated list of file name patterns to ignore when computing addon checksums. Defaults to *.pyc,*.pyo,i18n/*.pot,i18n_extra/*.pot,static/*,tests/*. Filename patterns must be compatible with the python fnmatch function.

In addition to the above pattern, .po files corresponding to languages that are not installed in the Odoo database are ignored when computing checksums.

The main method provided by this module is upgrade_changed_checksum on ir.module.module. It runs a database upgrade for all installed modules for which the hash has changed since the last successful run of this method. On success it saves the hashes in the database.

The first time this method is invoked after installing the module, it runs an upgrade of all modules, because it has not saved the hashes yet. This is by design, priviledging safety. Should this be an issue, the method _save_installed_checksums can be invoked in a situation where one is sure all modules on disk are installed and up-to-date in the database.

To invoke the upgrade mechanism, navigate to Apps menu and use the Auto-Upgrade Modules button, available only in developer mode. Restarting the Odoo instance is highly recommended to minify risk of any possible issues.

Another easy way to invoke this upgrade mechanism is by issuing the following in an Odoo shell session:

env['ir.module.module'].upgrade_changed_checksum()

No verified information in OCA: Installation.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.