Page History
...
- If upgrading from 6.x or below, install the new User Interface per the Installing DSpace guide. The JSPUI and XMLUI are no longer supported and cannot work with the DSpace 7 backend. You will need to install the new (Angular.io) User Interface.
- JSPUI or XMLUI based themes cannot be migrated. That said, since the new Angular UI also uses Bootstrap, you may be able to borrow some basic CSS from your old themes. But any HTML-level changes will need to be reimplemented in the new UI.
- If upgrading from a prior version of 7.x, upgrading just requires installing the latest version of the User Interface code
- Download the latest dspace-angular release from the DSpace GitHub repository. You can choose to either download the zip or tar.gz file provided by GitHub, or you can use "git" to checkout the appropriate tag (e.g.
dspace-7.2
) or branch.- If you've cloned or copied this code into your own GitHub or GitLab repository, you may wish to simply pull the latest tagged code into your codebase using Git. That will allow you to more easily address any "code conflicts" between your local changes and the new version of DSpace (if any are found).
Install any updated local dependencies using Yarn in the "dspace-angular" source code directory:
Code Block # change directory to our repo cd dspace-angular # install/update the local dependencies yarn install
If upgrading to 7.2 or above, migrate your UI Configurations to YAML. In 7.2, the format of the UI configuration file changed from Typescript to YAML to support runtime configuration. This means that the older
./src/environment/environment.*.ts
configuration files have all been replaced by corresponding./config/config.*.yml
configuration files (e.g. environment.prod.ts → config.prod.yml). You can either migrate your configurations manually, or use the provided "yarn env:yaml" migration script.Code Block title Migrate from environment.\*.ts to config.\*.yml yarn env:yaml [relative-path-to-environment.ts] [optional-relative-path-to-YAML] # For Exampleexample, to migrate an old environment.prod.ts file to the new config.prod.yml: yarn env:yaml src/environments/environment.prod.ts config/config.prod.yml # NOTE: It's also possible to just run the script with one input, and copy the output YAML to where you want it # yarn env:yaml src/environments/environment.prod.ts # (Then copy the output config.prod.yml over to your config/ folder)
For more information about the new configuration format, see the User Interface Configuration documentation.
- (Optional) Review Configuration changes to see if you wish to update any new configurations
- In 7.1, we added the ability to "extend" themes in the "themes" section. See the User Interface Configuration documentation for details.
- In 7.2, themes now support optional "headTags" which can be used to customize favicons per theme (see User Interface Customization). Additionally, "browseBy > types" configurations were removed, as they are now dynamically retrieved from the REST API (see User Interface Configuration).
Build the latest User Interface code for Production:
Code Block yarn run build:prod
- Restart the User Interface.
If you are using PM2 as described in the Installing DSpace instructions, you'd stop it and then start it back up as follows
Code Block pm2 stop dspace-angular.json pm2 start dspace-angular.json
If you are using a different approach, you simply need to stop the running UI, and re-run:
Code Block # First stop the running UI process by killing it (or similar) # Then restart the UI via this command: yarn run serve:ssr
- Verify the UI and REST API are both working properly.
- If you hit errors, see the "Troubleshooting Upgrade Issues" section below. Additionally, check the "Common Installation Issues" section of the Installing DSpace documentation for other common misconfiguration or setup issues.
- Download the latest dspace-angular release from the DSpace GitHub repository. You can choose to either download the zip or tar.gz file provided by GitHub, or you can use "git" to checkout the appropriate tag (e.g.
...