Skip to main content
Odoo Community Association

Openupgrade Framework

Beta License: AGPL-3 OCA/OpenUpgrade Translate me on Weblate Try me on Runboat

This module is a technical module that contains a number of monkeypatches to improve the behaviour of Odoo when migrating your database using the OpenUpgrade migration scripts:

  • Prevent dropping columns or tables in the database when fields or models are obsoleted in the Odoo data model of the target release. After the migration, you can review and delete unused database tables and columns using database_cleanup. See https://odoo-community.org/shop/product/database-cleanup-918

  • When data records are deleted during the migration (such as views or other system records), this is done in a secure mode. If the deletion fails because of some unforeseen dependency, the deletion will be cancelled and a message is logged, after which the migration continues.

  • Prevent a number of log messages that do not apply when using OpenUpgrade.

  • Suppress log messages about failed view validation, which are to be expected during a migration.

  • Run migration scripts for modules that are installed as new dependencies of upgraded modules (when there are such scripts for those particular modules)

  • Production databases generated with demo data, will be transformed to non-demo ones. If you want to avoid that, you have to pass through the environment variable OPENUPGRADE_USE_DEMO, the value “yes”.

For detailed documentation see:

Table of contents

Installation

This module does not need to be installed on a database. It simply needs to be available via your addons-path.

Configuration

  • call your odoo instance with the option --load=base,web,openupgrade_framework

or

  • add the key to your configuration file:

[options]
server_wide_modules = web,openupgrade_framework

When you load the module in either way of these ways, and you have the openupgrade_scripts module in your addons path available, the –upgrade-path option of Odoo will be set automatically to the location of the OpenUpgrade migration scripts.

Development

The odoo_patch folder contains python files in a tree that mimicks the folder tree of the Odoo project. It contains a number of monkey patches to improve the migration of an Odoo database between two major versions.

So far, we are able to make everything work without overwriting large blocks of code, but if larger patches need to be added, please use the method described below:

To see the patches added, you can use meld tools:

meld PATH_TO_ODOO_FOLDER/odoo/ PATH_TO_OPENUPGRADE_FRAMEWORK_MODULE/odoo_patch

To make more easy the diff analysis :

  • Make sure the python files has the same path as the original one.

  • Keep the same indentation as the original file. (using if True: if required)

  • Add the following two lines at the beginning of your file, to avoid flake8 / pylint errors

# flake8: noqa
# pylint: skip-file
  • When you want to change the code. add the following tags:

For an addition:

# <OpenUpgrade:ADD>
some code...
# </OpenUpgrade>

For a change:

# <OpenUpgrade:CHANGE>
some code...
# </OpenUpgrade>

For a removal:

# <OpenUpgrade:REMOVE>
# Comment the code, instead of removing it.
# </OpenUpgrade>

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Therp BV

  • Opener B.V.

  • GRAP

Contributors

Other credits

Many developers have contributed to the OpenUpgrade framework in its previous incarnation. Their original contributions may no longer needed, or they are no longer recognizable in their current form but OpenUpgrade would not have existed at this point without them.

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainers:

legalsylvain StefanRijnhart

This module is part of the OCA/OpenUpgrade project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

Release files for odoo14-addon-openupgrade-framework 14.0.1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for odoo14-addon-openupgrade-framework 14.0.1.0.1
File Interpreter ABI Platform
odoo14_addon_openupgrade_framework-14.0.1.0.1-py3-none-any.whl Python 3 none any Details

Release files / odoo14_addon_openupgrade_framework-14.0.1.0.1-py3-none-any.whl

Download URL odoo14_addon_openupgrade_framework-14.0.1.0.1-py3-none-any.whl
Size 59.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d32c130dc8023d289dde1ca7fbb05ce8ce9e5ba0301fbb3df5c9e85bfa5bce9a
BLAKE2b-256 checksum
How to use checksums
1075b689a3c0edee5682ee231d18314a32a9700e8c6bc1d29086c5ec27a79d9c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page