Skip to content

Commit 4190c19

Browse files
committed
updated local dev environment & dependencies
1 parent 4675ea7 commit 4190c19

File tree

3 files changed

+4705
-3638
lines changed

3 files changed

+4705
-3638
lines changed

README.md

Lines changed: 63 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -194,27 +194,71 @@ To verify, also check/update package.json & package-lock.json
194194

195195
### To update 3rd party libraries
196196

197-
Commands from Evergreen Angular:
197+
Follow this sequence to update your development environment:
198198

199-
- `npx ng update @angular/core @angular/cdk @angular/cli @angular/google-maps @angular/material` (maybe with ' --force' to avoid peer dependency warnings)
200-
- `npx ng update`
201-
- `npx npm-check-updates -u`
202-
- `npm install`
199+
#### 1. Check current versions (optional)
200+
```bash
201+
node -v
202+
npm -v
203+
tsc --version
204+
npm outdated
205+
```
206+
207+
#### 2. Update Node.js and global tools
208+
209+
**Note:** Global npm installations on Windows require running PowerShell or Command Prompt as Administrator.
210+
211+
```bash
212+
# Update npm to latest version (requires Admin on Windows)
213+
npm install npm@latest -g
214+
215+
# Update TypeScript globally (requires Admin on Windows)
216+
npm install -g typescript
217+
218+
# Update TypeScript type files (requires Admin on Windows)
219+
npm install -g typings
220+
221+
# Update Angular CLI globally (requires Admin on Windows)
222+
npm install -g @angular/cli@latest
223+
224+
# (Optional) Update Chocolatey packages - requires Admin permissions
225+
choco upgrade all
226+
```
227+
228+
**If you get permission errors on Windows:**
229+
- Right-click PowerShell or Command Prompt and select "Run as Administrator"
230+
- Or use a package manager like Chocolatey to update Node.js/npm: `choco upgrade nodejs`
231+
232+
#### 3. Update Angular and project dependencies
233+
```bash
234+
# Check for available Angular updates
235+
npx ng update
236+
237+
# Update Angular core packages (add --force if needed for peer dependency warnings)
238+
y
239+
240+
241+
# Check for all package updates
242+
npx npm-check-updates -u
243+
244+
# Install all updated dependencies
245+
npm install
246+
```
247+
248+
#### 4. Alternative: Use legacy peer dependency resolution (if needed)
249+
```bash
250+
npm install --save --legacy-peer-deps
251+
```
252+
253+
#### 5. Optional: Use Yarn as package manager
254+
```bash
255+
npm i yarn -g
256+
yarn install
257+
```
203258

204-
Other useful commands:
205-
- `node -v`
206-
- `npm -v`
207-
- `yarn -v`
208-
-
209-
- `npm install -g typings` - Looks for updated Typescript type files.
210-
- `npx ng update -g` - Updates global cli & sdk
211-
- `npm install npm@latest -g` - update npm
212-
- `npm install -g typescript` or to update: `npm -g upgrade typescript`; to get version: `tsc --version` - update typescript
213-
- `choco upgrade all` - updates https://docs.chocolatey.org/en-us/choco/commands/upgrade (requires VSCode being run with Admin permissions) & many apps that use Choclatey
214-
- `https://update.angular.io/?v=15.0-17.0` shows additional code updates that may be required
215-
- `npm install --save --legacy-peer-deps` - tells NPM to install packages using relaxed V6 algorithm
216-
- `npm i yarn -g`, then `yarn install` - uses yarn (a nice wrapper for npm)
217-
- `npm outdated` - show availability of newer packages
259+
**Additional Resources:**
260+
- Check <https://update.angular.io/> for Angular-specific migration guides and required code changes between versions
261+
- Use `npm outdated` to see which packages have newer versions available
218262

219263
### To Deploy
220264

package.json

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -23,56 +23,56 @@
2323
"dependencies": {
2424
"@angular-material-components/color-picker": "^16.0.1",
2525
"@angular-material-components/datetime-picker": "^16.0.1",
26-
"@angular/animations": "^17.2.2",
27-
"@angular/cdk": "^17.2.1",
28-
"@angular/cli": "^17.2.1",
29-
"@angular/common": "^17.2.2",
30-
"@angular/compiler": "^17.2.2",
31-
"@angular/core": "^17.2.2",
32-
"@angular/forms": "^17.2.2",
33-
"@angular/google-maps": "^17.2.1",
34-
"@angular/material": "^17.2.1",
35-
"@angular/platform-browser": "^17.2.2",
36-
"@angular/platform-browser-dynamic": "^17.2.2",
37-
"@angular/platform-server": "^17.2.2",
38-
"@angular/router": "^17.2.2",
39-
"@angular/service-worker": "^17.2.2",
40-
"@fortawesome/free-solid-svg-icons": "^6.5.1",
41-
"@googlemaps/js-api-loader": "^1.16.6",
42-
"@googlemaps/markerclusterer": "^2.5.3",
26+
"@angular/animations": "^21.0.6",
27+
"@angular/cdk": "^21.0.5",
28+
"@angular/cli": "^21.0.4",
29+
"@angular/common": "^21.0.6",
30+
"@angular/compiler": "^21.0.6",
31+
"@angular/core": "^21.0.6",
32+
"@angular/forms": "^21.0.6",
33+
"@angular/google-maps": "^21.0.5",
34+
"@angular/material": "^21.0.5",
35+
"@angular/platform-browser": "^21.0.6",
36+
"@angular/platform-browser-dynamic": "^21.0.6",
37+
"@angular/platform-server": "^21.0.6",
38+
"@angular/router": "^21.0.6",
39+
"@angular/service-worker": "^21.0.6",
40+
"@fortawesome/free-solid-svg-icons": "^7.1.0",
41+
"@googlemaps/js-api-loader": "^2.0.2",
42+
"@googlemaps/markerclusterer": "^2.6.2",
4343
"@material/banner": "^14.0.0",
4444
"@material/icon-button": "^14.0.0",
4545
"@material/slider": "^14.0.0",
4646
"@material/switch": "^14.0.0",
4747
"@material/top-app-bar": "^14.0.0",
4848
"@mdi/js": "^7.4.47",
4949
"@types/core-js": "^2.5.8",
50-
"@types/leaflet": "^1.9.8",
51-
"@types/leaflet.markercluster": "^1.5.4",
50+
"@types/leaflet": "^1.9.21",
51+
"@types/leaflet.markercluster": "^1.5.6",
5252
"@types/supercluster": "^7.1.3",
53-
"@what3words/api": "^5.0.2",
54-
"ag-grid-angular": "^31.1.1",
55-
"ag-grid-community": "^31.1.1",
56-
"ajv": "^8.12.0",
53+
"@what3words/api": "^5.4.0",
54+
"ag-grid-angular": "^35.0.0",
55+
"ag-grid-community": "^35.0.0",
56+
"ajv": "^8.17.1",
5757
"crypto-js": "^4.2.0",
58-
"idb": "^8.0.0",
58+
"idb": "^8.0.3",
5959
"leaflet": "^1.9.4",
6060
"leaflet.markercluster": "^1.5.3",
61-
"leaflet.offline": "^3.0.1",
61+
"leaflet.offline": "^3.2.0",
6262
"mock-browser": "^0.92.14",
6363
"supercluster": "^8.0.1",
64-
"tslib": "^2.6.2",
64+
"tslib": "^2.8.1",
6565
"xlsx": "^0.18.5",
6666
"xlsx-style": "^0.8.13",
67-
"zone.js": "~0.14.4"
67+
"zone.js": "~0.16.0"
6868
},
6969
"devDependencies": {
70-
"@angular-devkit/build-angular": "^17.2.1",
71-
"@angular/compiler-cli": "^17.2.2",
72-
"@types/google.maps": "^3.55.3",
73-
"@types/jasmine": "^5.1.4",
74-
"@types/node": "^20.11.20",
75-
"acorn": "^8.11.3",
70+
"@angular-devkit/build-angular": "^21.0.4",
71+
"@angular/compiler-cli": "^21.0.6",
72+
"@types/google.maps": "^3.58.1",
73+
"@types/jasmine": "^5.1.13",
74+
"@types/node": "^25.0.3",
75+
"acorn": "^8.15.0",
7676
"cross-conf-env": "^1.3.0",
7777
"dev-norms": "^2.0.4",
7878
"http-server": "^14.1.1",
@@ -81,19 +81,19 @@
8181
"import-sort-parser-typescript": "^6.0.0",
8282
"import-sort-style-module": "^6.0.0",
8383
"init-dev-env": "^2.0.0",
84-
"jasmine-core": "~5.1.2",
85-
"js-beautify": "^1.15.1",
84+
"jasmine-core": "~5.13.0",
85+
"js-beautify": "^1.15.4",
8686
"jshint": "^2.13.6",
87-
"karma": "^6.4.3",
87+
"karma": "^6.4.4",
8888
"karma-chrome-launcher": "~3.2.0",
8989
"karma-coverage": "~2.2.1",
9090
"karma-jasmine": "~5.1.0",
9191
"karma-jasmine-html-reporter": "~2.1.0",
9292
"npm-run-all": "^4.1.5",
93-
"rimraf": "^5.0.5",
94-
"rxjs": "^7.8.1",
93+
"rimraf": "^6.1.2",
94+
"rxjs": "^7.8.2",
9595
"tsviz-cli": "^2.0.3",
96-
"typescript": "^5.3.3"
96+
"typescript": "^5.9.3"
9797
},
9898
"importSort": {
9999
".ts, .tsx": {

0 commit comments

Comments
 (0)