angular / angular-cli

CLI tool for Angular
https://cli.angular.dev
MIT License
26.77k stars 11.98k forks source link

ng serve / ng build does not work on Windows dev drive mounted as a volume #27119

Open gingters opened 8 months ago

gingters commented 8 months ago

Which @angular/* package(s) are the source of the bug?

compiler-cli, compiler

Is this a regression?

No

Description

I'm on Windows 11, using a dev drive ( D: ). The dev drive is mounted to C:\Dev as a mounted volume.

I have ng newed a project on this dev drive (i.e. D:\sg\projects\test-project ).

When I run ng serve and also ng build from D:\sg\projects\test-project all is fine. When I run ng serve from C:\Dev\sg\projects\test-project (the usual location) it builds the projects, starts the dev server, but in the served index.html file the two script tags at the end of the body (polyfills-xxx.js and main-xxx.js) are missing. So the application won't start. When running ng build from the mounted volume the same problem can be seen. Both script tags are missing in the generated file.

There is also no output that would hint at a problem.

Expected behaviour: It should workl. Alternatively, if it won't generate the script tags, it should at least print a warning or error to the console that something is wrong and the generated application won't run, and maybe not running the command from a mounted volume but directly onthe volume should be done instead. That said, i would be really unhappy with that alternative.

Please provide a link to a minimal reproduction of the bug

ng new on mounted dev drive

Please provide the exception or error you saw

There is no exception.

Please provide the environment you discovered this bug in (run ng version)

Angular CLI: 17.2.0
Node: 21.6.1 (Unsupported)
Package Manager: yarn 1.22.19
OS: win32 x64

Angular:
...

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.1702.0 (cli-only)
@angular-devkit/core         17.2.0 (cli-only)
@angular-devkit/schematics   17.2.0 (cli-only)
@schematics/angular          17.2.0 (cli-only)

Anything else?

No response

MartinSGill commented 1 month ago

Seeing identical behaviour.

Steps to reproduce:

  1. Have a dev drive (e.g. p:)
  2. Mount it to a volume (e.g. c:\projects)
  3. cd c:\projects
  4. Run ng new my-app
  5. Run ng build

ERROR ... my-app\src\main.ts' is missing from the TypeScript compilation. [plugin angular-compiler]

If I add "preserveSymlinks" to angular.json build succeeds, and the server starts, but nothing shows on the page.

  1. Delete the my-app folder
  2. Repeat all the steps above, replacing 3. with cd p:\ and everything succeeds.
MrJithil commented 3 weeks ago

Checked in windows vmware instance on mac but the issue is not reproducible.

@MartinSGill Could you please provide your ng version along with the node -v.