Commit 24f0370
Angular compare tool: Major polish and full semantics improvements
## Rust Compiler Improvements
- Add hostDirectives parsing to component decorator extraction
- Wire @HostBinding/@HostListener extraction to component metadata
- Fix key format: wrap with []/() for proper classification
- Fix @HostListener args preservation (e.g., handleClick($event))
- Fix HTML lexer escapable raw text entity handling
## Compare Tool Enhancements
- Add full-file transformation support (transformAngularFile API)
- Add const value normalization for fair comparison
- Improve template function extraction (AST-based, handles const/arrow)
- Replace Set-based diff with LCS algorithm (preserves ordering)
- Add version metadata to reports (oxcVersion, angularVersion)
## Metadata Pass-through Fixes
- Fix host keys double-wrapping issue
- Pass providers, viewProviders, animations, schemas, styles, exportAs
- Make preserveWhitespaces and i18nUseExternalIds configurable
- Fix hostDirectives forward-ref flag pass-through
## Test Infrastructure
- Add new fixture categories: full-transform, host-directives, schemas, etc.
- Fix decorator detection (@angular/core instead of @component string)
- Add comprehensive test coverage for host decorators
Results: 92.4% material-angular match rate (587/635), 92.8% fixtures
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>1 parent 90591bc commit 24f0370
File tree
42 files changed
+10103
-430
lines changed- crates/oxc_angular_compiler/src
- component
- directive
- injectable
- ng_module
- parser/html
- pipe
- napi/angular-compiler
- e2e/compare
- fixtures
- animations
- class-metadata
- factory
- full-transform
- hmr
- host-bindings
- host-directives
- injector
- pipe-compilation
- providers
- schemas
- styles
- src
- compilers
- discovery
- src
- test
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
42 files changed
+10103
-430
lines changedLarge diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
33 | 33 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
95 | 119 | | |
96 | 120 | | |
97 | 121 | | |
| |||
110 | 134 | | |
111 | 135 | | |
112 | 136 | | |
| 137 | + | |
113 | 138 | | |
114 | 139 | | |
115 | 140 | | |
| |||
931 | 956 | | |
932 | 957 | | |
933 | 958 | | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
| 964 | + | |
| 965 | + | |
| 966 | + | |
| 967 | + | |
| 968 | + | |
| 969 | + | |
| 970 | + | |
| 971 | + | |
| 972 | + | |
| 973 | + | |
| 974 | + | |
| 975 | + | |
| 976 | + | |
| 977 | + | |
| 978 | + | |
| 979 | + | |
| 980 | + | |
| 981 | + | |
| 982 | + | |
| 983 | + | |
| 984 | + | |
| 985 | + | |
| 986 | + | |
934 | 987 | | |
935 | 988 | | |
936 | 989 | | |
| |||
1285 | 1338 | | |
1286 | 1339 | | |
1287 | 1340 | | |
| 1341 | + | |
| 1342 | + | |
| 1343 | + | |
| 1344 | + | |
| 1345 | + | |
| 1346 | + | |
| 1347 | + | |
| 1348 | + | |
| 1349 | + | |
| 1350 | + | |
| 1351 | + | |
| 1352 | + | |
| 1353 | + | |
| 1354 | + | |
| 1355 | + | |
| 1356 | + | |
| 1357 | + | |
| 1358 | + | |
| 1359 | + | |
| 1360 | + | |
| 1361 | + | |
| 1362 | + | |
| 1363 | + | |
| 1364 | + | |
| 1365 | + | |
| 1366 | + | |
| 1367 | + | |
| 1368 | + | |
| 1369 | + | |
| 1370 | + | |
| 1371 | + | |
| 1372 | + | |
| 1373 | + | |
| 1374 | + | |
| 1375 | + | |
| 1376 | + | |
| 1377 | + | |
| 1378 | + | |
| 1379 | + | |
| 1380 | + | |
| 1381 | + | |
| 1382 | + | |
| 1383 | + | |
| 1384 | + | |
| 1385 | + | |
| 1386 | + | |
| 1387 | + | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
| 1406 | + | |
| 1407 | + | |
| 1408 | + | |
| 1409 | + | |
| 1410 | + | |
| 1411 | + | |
| 1412 | + | |
| 1413 | + | |
| 1414 | + | |
1288 | 1415 | | |
1289 | 1416 | | |
1290 | 1417 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
436 | 436 | | |
437 | 437 | | |
438 | 438 | | |
| 439 | + | |
439 | 440 | | |
440 | 441 | | |
441 | | - | |
442 | | - | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
443 | 445 | | |
444 | 446 | | |
445 | 447 | | |
| 448 | + | |
| 449 | + | |
446 | 450 | | |
447 | | - | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
448 | 465 | | |
449 | | - | |
| 466 | + | |
450 | 467 | | |
451 | 468 | | |
452 | 469 | | |
| |||
723 | 740 | | |
724 | 741 | | |
725 | 742 | | |
726 | | - | |
727 | | - | |
| 743 | + | |
| 744 | + | |
728 | 745 | | |
729 | 746 | | |
730 | | - | |
| 747 | + | |
731 | 748 | | |
732 | 749 | | |
733 | 750 | | |
| |||
758 | 775 | | |
759 | 776 | | |
760 | 777 | | |
761 | | - | |
762 | | - | |
763 | | - | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
764 | 781 | | |
765 | | - | |
766 | | - | |
| 782 | + | |
| 783 | + | |
767 | 784 | | |
768 | 785 | | |
769 | 786 | | |
| |||
0 commit comments