ng-upgrade-doctor 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +57 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
> Zero-dependency Angular upgrade readiness & blast-radius diagnostic.
|
|
4
4
|
|
|
5
|
+
[](https://www.npmjs.com/package/ng-upgrade-doctor)
|
|
6
|
+
[](https://www.npmjs.com/package/ng-upgrade-doctor)
|
|
7
|
+
[](./LICENSE)
|
|
8
|
+
[](https://nodejs.org)
|
|
9
|
+

|
|
10
|
+
|
|
5
11
|
Run one command in any Angular project and get the whole picture: what's installed, what's compatible with the next Angular versions, what will block the upgrade, what's abandoned, and roughly how much effort it will take — as a shareable HTML report, machine-readable JSON, and a terminal summary.
|
|
6
12
|
|
|
7
13
|
`ng-upgrade-doctor` is a **diagnostician, not an upgrader**. It tells you what you're walking into *before* you run `ng update`. It never modifies your code — it's completely read-only.
|
|
@@ -14,6 +20,57 @@ npx ng-upgrade-doctor
|
|
|
14
20
|
|
|
15
21
|
That's it. No install, no config, no `ng add`. It writes `ng-upgrade-report.html` and `ng-upgrade-report.json` into your project.
|
|
16
22
|
|
|
23
|
+
## Sample report
|
|
24
|
+
|
|
25
|
+
The HTML report is the shareable artifact — a readiness gauge, dependency-health bar, upgrade-path timeline, and a `file:line:col` breakdown of every breaking change:
|
|
26
|
+
|
|
27
|
+

|
|
28
|
+
|
|
29
|
+
<!-- To add the image: open the generated ng-upgrade-report.html, screenshot it,
|
|
30
|
+
and save it as docs/sample-report.png (create the docs/ folder). -->
|
|
31
|
+
|
|
32
|
+
## Example (terminal summary)
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
ng-upgrade-doctor · Angular upgrade readiness report
|
|
36
|
+
────────────────────────────────────────────────────────
|
|
37
|
+
|
|
38
|
+
Project: acme-dashboard
|
|
39
|
+
Angular: 14.2.0 (6 majors behind 20)
|
|
40
|
+
Readiness: 31/100 Significant — clear blockers first
|
|
41
|
+
Effort est.: 10–26 person-days (6 hops)
|
|
42
|
+
|
|
43
|
+
Inventory
|
|
44
|
+
Dependencies: 72 (58 prod / 14 dev)
|
|
45
|
+
Angular packages: 12
|
|
46
|
+
3rd-party Angular libs: 9
|
|
47
|
+
Components: 214 (0 standalone, 0%)
|
|
48
|
+
Source files: 480 ts · 190 html · 120 specs
|
|
49
|
+
|
|
50
|
+
Dependency compatibility (target: Angular 20)
|
|
51
|
+
Compatible: 60
|
|
52
|
+
Needs upgrade / partial: 3
|
|
53
|
+
Blockers (no compatible release): 2
|
|
54
|
+
Removed / discontinued: 3
|
|
55
|
+
Abandoned / unmaintained: 4
|
|
56
|
+
|
|
57
|
+
Code breaking changes (AST · 41 files)
|
|
58
|
+
Removed APIs in use: 6
|
|
59
|
+
Deprecated APIs in use: 22
|
|
60
|
+
Modernization opportunities: 512
|
|
61
|
+
|
|
62
|
+
Must-fix before upgrading
|
|
63
|
+
✗ @angular/flex-layout — Officially discontinued; no releases past v15.
|
|
64
|
+
→ Angular CDK Layout + native CSS Flexbox/Grid
|
|
65
|
+
✗ tslint — deprecated and unsupported.
|
|
66
|
+
→ angular-eslint
|
|
67
|
+
✗ protractor — dropped from the Angular CLI.
|
|
68
|
+
→ Playwright or Cypress
|
|
69
|
+
|
|
70
|
+
Recommended upgrade path
|
|
71
|
+
v15 → v16 → v17 → v18 → v19 → v20
|
|
72
|
+
```
|
|
73
|
+
|
|
17
74
|
## Why "zero dependency"?
|
|
18
75
|
|
|
19
76
|
The published package has an empty `dependencies` map. It relies only on the Node standard library:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ng-upgrade-doctor",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Zero-dependency Angular upgrade readiness & blast-radius diagnostic. Run npx ng-upgrade-doctor in any Angular project to get a full picture of what needs upgrading, what will break, and how hard it will be.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|