Updating to Version 2.0
Note: Spartacus 3.x is no longer maintained. Please upgrade to the latest version.
Note: Spartacus 3.x was tested with SAP Commerce Cloud versions 1905 to 2105. Spartacus 3.x has not been verified to work with (and is not guaranteed to work with) SAP Commerce Cloud 2211 or later releases.
Table of Contents
Prerequisites
Before updating your TUA Spartacus libraries to version 2.0, you must address the following prerequisites:
- You must first upgrade all of your
@spartacuslibraries to the latest 1.5.x release before you begin upgrading to Spartacus 2.0. For more information, see Upgrading TUA Spartacus Libraries to a New Minor Version. - You also must first upgrade all of your
@spartacus/tua-spato the latest 1.5.x release before you begin upgrading to Spartacus 2.0 - Your
@spartacuslibraries must include the@spartacus/schematicslibrary. If you do not have the@spartacus/schematicslibrary, add it to yourpackage.jsonfile in thedevDependenciessection, and set it to the same version as your other@spartacuslibraries. Then runyarn install. - Spartacus 2.0 requires Angular version 9. You must update Angular before updating Spartacus. For more information, see Updating to Angular version 9.
Updating Spartacus
TUA Spartacus 2.0 includes new features and fixes. Since this update is a major release, some of the updates may also be breaking changes for your application. In this case, additional work on your side may be required to fix issues that result from upgrading from 1.x to 2.0.
To update to version 2.0 of TUA Spartacus, run the following command in the workspace of your Angular application:
ng update @spartacus/schematics
Upgrading TUA Spartacus Libraries to a New Minor Version
You can upgrade your TUA Spartacus libraries to a new minor version, as follows:
-
In
package.json, set your@spartacuslibraries to“~2.#.0", where#is replaced with the release version number you wish to upgrade to.Note: If you are upgrading from 1.x to the latest 1.5 release, then upgrade to 2.x, in
package.json, set your@spartacuslibraries to“~1.5.5". -
Make sure other entries in
package.jsonmatch with the following configuration (Add the entries if not available)."@angular/localize":"^9.1.0", "@angular/service-worker": "~9.1.0", "@ng-bootstrap/ng-bootstrap": "6.0.0", "@ng-select/ng-select": "^4.0.0", "@ngrx/effects": "~9.0.0", "@ngrx/router-store": "~9.0.0", "@ngrx/store": "~9.0.0", "bootstrap": "^4.2.1", "chart.js": "^2.9.3", "express": "^4.15.2", "i18next": "^19.3.4", "i18next-xhr-backend": "^3.2.2", "material-design-icons": "^3.0.1", "ng2-charts": "^2.3.2", "ngx-infinite-scroll": "^8.0.0", "ngx-spinner": "^9.0.1", "jquery": "^3.5.1" - Inspect the
mystore/src/app/app.module.tsfile for any changes you want to make for your setup.- Remove the
premiseLookupentry from the backend section if present. - Remove
saveForLater: falsefrom features section if present. - Remove the
utilitiesspaentry from thebaseSitelist under the section context. - Update level under the features section to 2.0.0.
- Remove the
-
Add the following import
/mystore/src/polyfills.tsin the file:import '@angular/localize/init'; import 'zone.js/dist/zone'; -
Add the following entry
/mystore/tsconfig.jsonin themystore/src/app/app.module.tsfile if not already available:“enableIvy”: false - Delete your
node_modulesfolder. - Run
yarn install.
For more information, see Technical Changes in TUA Spartacus 2.0.