angular-docs-cn/packages/compiler-cli
Pete Bacon Darwin 3dfc7703c2 fix(compiler-cli): ensure LogicalFileSystem maintains case in paths (#37008)
The work to support case-sensitivity in the `FileSystem` went too far
with the `LogicalFileSystem`, which is used to compute import paths
that will be added to files processed by ngtsc and ngcc.

Previously all logical paths were canonicalised, which meant that on
case-insensitive file-systems, the paths were all set to lower case.
This resulted in incorrect imports being added to files. For example:

```
import { Apollo } from './Apollo';
import { SelectPipe } from './SelectPipe';
import * as ɵngcc0 from '@angular/core';
import * as ɵngcc1 from './selectpipe';
```

The import from `./SelectPipe` is from the original file, while the
import from `./selectpipe` is added by ngcc. This causes the
TypeScript compiler to complain, or worse for paths not to be
matched correctly.

Now, when computing logical paths, the original absolute paths
are matched against rootDirs in a canonical manner, but the actual
logical path that is returned maintains it original casing.

Fixes #36992, #36993, #37000

PR Close #37008
2020-05-18 10:28:18 -07:00
..
integrationtest feat: remove @angular/http (#27038) 2020-05-05 17:42:01 -07:00
ngcc fix(ngcc): support `defineProperty()` re-exports in CommonJS and UMD (#36989) 2020-05-14 10:50:29 -07:00
src fix(compiler-cli): ensure LogicalFileSystem maintains case in paths (#37008) 2020-05-18 10:28:18 -07:00
test test(core): verify that Ivy i18n works correctly with HTML namespaces (#36943) 2020-05-14 15:20:42 -07:00
BUILD.bazel perf(compiler-cli): split Ivy template type-checking into multiple files (#36211) 2020-05-05 18:40:42 -07:00
index.ts refactor(compiler-cli): Move diagnostics files to language service (#33809) 2019-11-14 09:29:07 -08:00
package.json refactor: remove support for TypeScript 3.8 (#37129) 2020-05-18 09:13:37 -07:00
tsconfig-build.json build: reference zone.js from source directly instead of npm. (#33046) 2019-11-06 00:48:34 +00:00
tsconfig.json perf(ivy): ngcc - only find dependencies when targeting a single entry-point (#30525) 2019-07-09 09:40:46 -07:00