OpenLogic provides long term support for several angular js packages. But we only need to update the packages that we use in csmart scheduler project.
Which packages to update?
angular-animate
angular-cookies
angular-loader
angular-resource
angular-route
angular-sanitize
angular-touch
angularjs
When to update?
We usually get notification from OpenLogic (sent to stefan@marinels.com) if there is any updates for these packages. Other that than we can check their release notes to see if there is any updates of the above packages. Release notes can be found here. https://angularjs.perforce.com/#browse/welcome
How to download the packages?
Packages can be downloaded in various ways (wget, npm or manually). Probably the easiest way is to download the packages from their file directory. https://angularjs.perforce.com/#browse/browse:perforce-angularjs-angular
Note: The login to the repository can be found in LastPass with the name angularjs.perforce.com (stefan - AngularJS Repository Access).
We must make sure, we are downloading the correct version (1.8.7). Every folder name ends with version number.
Package Directory: https://angularjs.perforce.com/#browse/browse:perforce-angularjs-angular
After downloading and unzipping the files from the above list (Which packages to update?) a package looks like the below (i.e. angular-animate-1.8.7):
How to update the packages in CSMART app?
Analyzing the codebase it seems following files needs to updated. After unzipping the downloaded folder following files can be replaced.
C:\Projects\coredev\src\MarineLMSExtensions.Web.Main\Scripts
angular-animate.js
angular-animate.min.js
angular-animate.min.js.map
angular-loader.js
angular-loader.min.js
angular-loader.min.js.map
angular-resource.js
angular-resource.min.js
angular-resource.min.js.map
angular-touch.js
angular-touch.min.js
angular-touch.min.js.map
./angularjs_1.8.7_LTS
angular-cookies.min.js
angular-cookies.min.js.map
angular-route.min.js
angular-route.min.js.map
angular-sanitize.min.js
angular-sanitize.min.js.map
angular-touch.min.js
angular-touch.min.js.map
angular.min.js
angular.min.js.mapangularjs_1.8.7_LTS is the folder name for version v1.8.7. If the solution should use a different version, a new folder can be created with corresponding version number. In that case we need to make sure folder name is updated inside BundleConfig.cs (MarineLMSExtensions.Web.Main\App_Start\BundleConfig.cs)