Kategorien
Entwickler Webdesign

oxid update 6.1.5 auf 6.2

composer.json, die sich im Hauptverzeichnis des Shops befindet, müssen Version geändert werden. Das betrifft die Sektion „require“ und „require-dev“. Beispiel für einen OXID eShop Community Edition 6.2.0:

"require": {
   "oxid-esales/oxideshop-metapackage-ce": "v6.2.0"
},
"require-dev": {
   "oxid-esales/testing-library": "^v7.0.1",
   "incenteev/composer-parameter-handler": "^v2.0.0",
   "oxid-esales/oxideshop-ide-helper": "^v3.1.2",
   "oxid-esales/azure-theme": "^v1.4.2"
},

Hier der link zur composer.json des oxid-shop6.2.0 ce https://github.com/OXID-eSales/oxideshop_project/blob/b-6.2-ce/composer.json Meist stehen in der composer.json noch mehr in require, and require-dev: Um die aktuellen Versionen der Packages zu finden lohnt sich eine suche in der: https://packagist.org/ (4) Alte Module migrieren Für alle Module, die noch nicht auf dem „neuen Weg“  via composer installiert werden, muss man eine Initialisierung „per Hand“ vornehmen. Dazu gibt es aber eine Update Component, die den Großteil erledigt. Dies ist wie folgt zu installieren:

  1. composer require –no-update oxid-esales/oxideshop-update-component
  2. composer update
  3. vendor/bin/oe-console oe:oxideshop-update-component:install-all-modules

Am Ende aufräumen mit…

composer remove --no-update oxid-esales/oxideshop-update-component
composer update --no-dev --no-interaction

Siehe: https://docs.oxid-esales.com/eshop/de/6.2/installation/update/von-6.1.x-auf-6.2.0-aktualisieren.html#schritt-aktualisierung-der-modulkonfigurationen

Diskussion zum Thema findet sich hier:
https://forum.oxid-esales.com/t/nach-update-6-1-5-6-2-1-module-nicht-sichtbar/96577
https://forum.oxid-esales.com/t/modulerstellung-oxid-6-2/96641
Unter Umständen müssen alte Module noch überarbeitet werden. Bekannte Fehler sind hier:
1. Settings stehen noch in der metadata.php, diese müssen entfernt werden

could not be installed due to Invalid boolean value- "" was used for module setting.

2. Veralteter Code für Aufrufe aus der DB:

  • alt: $executeOnSlave neu: DatabaseInterface::forceMasterConnection()
  • alt: DatabaseInterface::FETCH_MODE_DEFAULT neu: FETCH_MODE_BOTH
  • alt: oxDB::getDB – Codebeispiel:
$rs = oxDb::getDb()->select($sQuery);
if ($rs != false && $rs->recordCount() > 0) {
    while (!$rs->EOF) {
        //do something
        $rs->moveNext();
    }
}
  •  neu: \OxidEsales\Eshop\Core\DatabaseProvider::getDb – Codebeispiel:
$resultSet = \OxidEsales\Eshop\Core\DatabaseProvider::getDb()->select($query);
 //Fetch the results row by row
 if ($resultSet != false && $resultSet->count() > 0) {
     while (!$resultSet->EOF) {
         $row = $resultSet->getFields();
         //do something
         $resultSet->fetchRow();
     }
 }
  • komplett weggefallen in Oxid v6:
    • ResultSetInterface::move()
    • ResultSetInterface::moveNext()
    • ResultSetInterface::moveFirst()
    • ResultSetInterface::moveLast()
    • ResultSetInterface::_seek()
    • ResultSetInterface::EOF()
Siehe: https://docs.oxid-esales.com/developer/en/6.0/update/eshop_from_53_to_6/database.html

Noch ein link zum OxidUpdate61->62
https://nerdpress.org/2020/04/20/updating-oxid-eshop-to-6-2-0/?highlight=oxid%20update

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.