8f1317f06f
This commit fixes a bug in which a new Ivy Compiler is created every time language service receives a new request. This is not needed if the `ts.Program` has not changed. A new class `CompilerFactory` is created to manage Compiler lifecycle and keep track of template changes so that it knows when to override them. With this change, we no longer need the method `getModifiedResourceFile()` on the adapter. Instead, we call `overrideComponentTemplate` on the template type checker. This commit also changes the incremental build strategy from `PatchedIncrementalBuildStrategy` to `TrackedIncrementalBuildStrategy`. PR Close #39231 |
||
---|---|---|
.. | ||
BUILD.bazel | ||
compiler_factory_spec.ts | ||
definitions_spec.ts | ||
diagnostic_spec.ts | ||
hybrid_visitor_spec.ts | ||
language_service_adapter_spec.ts | ||
language_service_spec.ts | ||
mock_host.ts | ||
mock_host_spec.ts | ||
quick_info_spec.ts | ||
test_utils.ts | ||
type_definitions_spec.ts |