-
Notifications
You must be signed in to change notification settings - Fork 12k
Cannot build AOT - 'Illegal state: Could not load the summary for directive CdkTrapFocus' [Library] #10615
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@hansl This is still an issue in 6.0.0
|
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 |
@filipesilva I tried creating a smaller repo than my library but was unsuccessful to reproduce the error. I regenerated my project from scratch and still see the same issue. That being said, something I noticed that I can successfully build in --prod when I change my app/ imports around that reference the projects/library.
Using this lets me ng serve and make changes in the library with browser refresh, however I cannot build in aot.. I receive the error listed in this issue.
Consuming the published npm package however lets me build the app in aot. Is this a feature request or user error? I would like to be able to serve my project from the projects/src so I can make changes and quickly deploy the demo when I choose to. Thanks! |
I really can't tell if it's a feature request or a bug without a repro. I have no idea what's going on in your project, and haven't seen that error elsewhere... I'm sorry but this is the kind of issue that really needs a repro. |
@filipesilva sorry about that, you should be able to clone this https://github.com/Tyler-V/ngx-easy You can reproduce with these steps: [Error]
[Success]
|
Heya, going through your repro and finding a couple of odd things:
I don't actually think your demo app is using the libraries in the repo, it is instead installing from npm. The intended workflow (described in https://github.com/angular/angular-cli/wiki/stories-create-library) would be something like this for your repository:
The last I tried to fix up the dependencies so this works and pushed my work so far in Tyler-V/ngx-easy#1. While doing
These basically say I say this because I tested with ngc as well and it was ok:
My bet is that tsconfig support in So at the moment I am sorry to say we are still blocked. Progress was made though! A workaround for now is to do |
I will look into this soon, but ng-packagr. Doesn’t respective might not respect the ‘baseUrl’ as it sets it to folder of the entry point. A quick fix I believe is to add an addition path resolution entry to ‘../../dist/virtual-scroll’ as per my comment in @filipesilva PR. I’ll try to give more details later, as currently I am out. |
I guess that means that there is an implicit That can be problematic though... changing the baseurl changes how the paths are interpreted on extended tsconfigs, and having a different baseUrl on certain parts of a monorepo will either break the app or the tooling (e.g. vscode). (I have this same answer on Tyler-V/ngx-easy#1 but I think this is the better place for the conversation). |
Yeah there is something similar https://github.com/dherges/ng-packagr/blob/master/src/lib/ts/tsconfig.ts I do think it is problematic, and is something that we should tackle, but I need to understand why it was done in the first place (I am thinking because ng-packagr ships it’s own tsconfig). Ill see what happens what breaks when removing it. In mono repos it’s a problem and in fact I had to do two tsconfig https://github.com/alan-agius4/ng-mono-repo-starter/blob/master/tsconfig.build.json I did a PR to remove this: ng-packagr/ng-packagr#862 |
Awesome @alan-agius4, that was a super quick fix! |
That was fast! Thank you @filipesilva / @alan-agius4 ng build virtual-scroll --prod All working, thanks for the help guys. |
Overriding `baseUrl` cause incorrect module resolutions when using a custom `tsconfig` with `path`. This was noticed in Angular CLI Closes angular/angular-cli#10615 BREAKING CHANGE: `baseUrl` in `tsconfig` is not overridden anymore, thus non-relative module paths will be resolved relative to the `baseUrl` in `tsconfig.json`
Good work getting this resolved. I have the same problem, but am not quite ready to post the details. As a maintainer myself, I fully understand the strong desire for detailed bug descriptions, dumps of logs, reproducible test cases, and so on. I often demand them myself. At the same time, many of these "bugs" occur in complex systems, many of which are private. It could take hours to strip it down to a shareable repro case. In this particular case of
I wonder if someone could simply share the logic and situation in which this message is displayed. In other words, what the heck does it mean? What is a "summary"? Who is trying to load it? Why might they not be able to load it? How does loading fail? I know you're all incredibly busy building your great system, but even though yes, developers like us might be able to figure that out by rummaging through source code, you might be able to answer right away. Such information might be enough for people to point people in the right direction so that they can move ahead and solve the problem themselves. |
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
Versions
Repro steps
ng build --prod
Observed behavior
Desired behavior
Successfully build app and projects libraries
Mention any other details that might be useful (optional)
I am using the latest cli and trying to build a library with the
ng generate library
command.I'm able to serve and build the projects without issue (minus ng-packagr/ng-packagr#822)
I have my demo app for displaying these libraries in the app.component of my project where I have generated two libraries, the demo app will not build with the --prod flag however.
I believe this is a .tsconfig issue based on the comments received in opening angular/components#11124
I am opening this issue here as well because I believe there is something maybe missing from the default project settings or to see if anyone else might have an idea on how to fix this.
Thanks!
The text was updated successfully, but these errors were encountered: