Installing a minor update

Update the compilation from an existing version 7.0.x to version 7.1.x.

Attention

Data loss

To avoid possible data loss, do the following:

  • Always run the update in a test environment, a copy of your current store, first.

  • Always proceed as follows when updating:

    1. Create a backup of the store files and database before the update.

    2. After the update, test the store again.
      In particular, check whether the ordering process and the payment and shipping methods work.

Ensuring the compatibility of third-party modules

If you use third-party modules or themes, ask the third-party vendor if these themes and modules are compatible with the new version of OXID eShop.

Background: Typically, a minor update does not contain any breaking changes. All third-party modules will work as before after the update.

However, in exceptional cases, changes can have such an impact that third-party modules no longer work.

Performing the update

Update your OXID eShop to the latest version.

Prerequisites

You have OXID eShop 7.0.x.

Procedure

  1. Deactivate all modules.

  2. Update Composer to version 2.7.

    Install Composer 2.7 as follows, for example:

    composer selfupdate 2.7.1
    
  3. Update the metapackage version in the composer.json file.
    To do this, match the name of the metapackage to the desired store edition, as in the following example.
    Example for an update of a community edition with the metapackage name 7.1.0:

    composer require --no-update oxid-esales/oxideshop-metapackage-ce:v7.1.0
    
  4. Update the dependencies.
    Open a shell in the main store directory and run the composer command below.
    This will update all the required libraries.
    If you need the development-related files, omit the --no-dev parameter.

    composer update --no-plugins --no-scripts --no-dev
    
  5. To get the new compilation and perform the update, run the scripts.
    To do this, run the following command.

    Note

    The update will overwrite any changes you may have made to modules or themes in the source directory.

    Background: During a store update, Composer first loads the new data into the vendor directory. Then the data is copied to the source directory. This replaces the files of the store, the modules and the themes.

    Your individual customizations of the OXID store or changes to third-party modules are only safe from being overwritten by the update if you have made the changes through one of the OXID eShop’s extension options (component, module, child theme).

    For more information, see the developer documentation under

    Attention

    Confirming queries

    During the update you will be asked which packages may be overwritten.

    To ensure that only compatible and tested packages are installed and to avoid inconsistencies and malfunctions caused by incorrectly implemented modules or themes, you have to confirm the queries with Yes.

    Recommendations:

    • If you use the extension capabilities of OXID eShop, follow the instructions in the developer documentation.

    • To create modules or child themes, get support from an OXID partner agency. This will make any future updates easier for you.
      For a list of OXID certified partner agencies, visit oxid-esales.com/partner/partner-find/.

    • If you use third-party modules or themes, ask the third-party provider if these themes and modules are compatible with the new version of OXID eShop.
      Background: Normally a minor update does not contain any breaking changes. All third-party modules will work as before after the update.
      However, in exceptional cases, changes can have an impact such that third-party modules no longer work.

    composer update --no-dev
    
  6. To ensure that the cached items do not contain incompatibilities, empty the tmp directory.
    To do this, run the following command.

    rm -rf source/tmp/*
    
  7. Migrate the database.
    To do so, run the following command.

    vendor/bin/oe-eshop-db_migrate migrations:migrate
    
  8. Regenerate the database views.
    Background: Depending on the changes and store edition, the store may go into maintenance mode after the update.
    To prevent this, regenerate the database views with the following command:

    vendor/bin/oe-eshop-db_views_generate
    
  9. Activate all modules.