angular / angular-cli

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

Incremental angular build with esbuild can't locate secondary entrypoints in 3rd party libraries #27805

Closed sonikasharma1403 closed 2 months ago

sonikasharma1403 commented 3 months ago

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

Don't known / other

Is this a regression?

No

Description

Incremental build with angular esbuild (@nx/angular:browser-esbuild and buildLibsFromSource=false) fails if referencing library secondary entrypoints in the code. It works with webpack (@nx/angular:webpack-browser), or when referencing secondary entrypoints in external libraries (from npm) (3rd party modules)

Please provide a link to a minimal reproduction of the bug

No response

Please provide the exception or error you saw

base.tsconfig.json has paths as `
  "paths": {
      "@cds/core": [
        "node_modules/@test/clr-core"
      ],
      "@cds/core/*": [
        "node_modules/@test/clr-core/*"
      ],

`

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

latest angular with Nx

Anything else?

image
alan-agius4 commented 3 months ago

This seems like a bug but we'll need to look at a reproduction to find and fix the problem. Can you setup a minimal repro please?

You can read here why this is needed. A good way to make a minimal repro is to create a new app via ng new repro-app and adding the minimum possible code to show the problem. Then you can push this repository to github and link it here.

This might be related to your directory structure so its really important to get an accurate repro to diagnose this.

JoostK commented 3 months ago

Does this also apply to @angular/angular:browser-esbuild, not Nx's variant? They are different builders.

clydin commented 3 months ago

If those secondary entrypoints are using the package.json exports field then this is expected behavior. TypeScript specifically does not support this scenario and does not recommend using the paths option to map to node modules. TypeScript Documentation on the topic: https://www.typescriptlang.org/docs/handbook/modules/reference.html#paths-should-not-point-to-monorepo-packages-or-node_modules-packages

alan-agius4 commented 2 months ago

Thanks for reporting this issue. However, you didn't provide sufficient information for us to understand and reproduce the problem. Please check out our submission guidelines to understand why we can't act on issues that are lacking important information.

If the problem persists, please file a new issue and ensure you provide all of the required information when filling out the issue template.

angular-automatic-lock-bot[bot] commented 1 month ago

This issue has been automatically locked due to inactivity. Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.