Skip to content

postinstall ivy ngcc error there is no format with import statements xxx entry-point #29564

Closed

Description

@elvisbegovic

🐞 bug report

Affected Package

Caused by packages/compiler-cli/ngcc/src/packages/dependency_resolver.ts

Description

At postinstall ngcc throw "imports|entry-points" errors on 3th party lib.
By example with angular-tree-component and ngx-virtual-scroller 3th party lib.

🔬 Minimal Reproduction

Simply run command:
ng new ap --minimal --defaults --skipInstall --enable-ivy && cd ap && npm i angular-tree-component && npm i ngx-virtual-scroller && npm install

At postinstall console will throw for

  1. angular-tree-component : Entry point 'angular-tree-component' contains deep imports into 'lodash/*...

  2. ngx-virtual-scroller : Error: There is no format with import statements in 'C:/.../node_modules/ngx-virtual-scroller' entry-point.

🌍 Your Environment

Angular CLI: 8.0.0-beta.10
Node: 11.12.0
OS: win32 x64
Angular: 8.0.0-beta.10
animations, cli, common, compiler, compiler-cli, core, forms, 
language-service, platform-browser, platform-browser-dynamic, router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.800.0-beta.10
@angular-devkit/build-angular     0.800.0-beta.10
@angular-devkit/build-optimizer   0.800.0-beta.10
@angular-devkit/build-webpack     0.800.0-beta.10
@angular-devkit/core              8.0.0-beta.10
@angular-devkit/schematics        8.0.0-beta.10
@ngtools/webpack                  8.0.0-beta.10
@schematics/angular               8.0.0-beta.10
@schematics/update                0.800.0-beta.10
rxjs                              6.4.0
typescript                        3.3.4000
webpack                           4.29.6

cc @filipesilva

update1: improve issue style

Activity

  1. filipesilva commented on Mar 28, 2019

    @filipesilva
    Contributor

    @petebacondarwin @gkalpak do you know what is happening with these two packages and what can be done for them to work with Ivy?

  2. petebacondarwin commented on Mar 28, 2019

    @petebacondarwin
    Contributor

    In the latter case (Error: There is no format with import statements in 'C:/.../node_modules/ngx-virtual-scroller' entry-point.) we need a format to have import statements so that we can work out the dependencies between entry-points (and packages). This is because we must compile them in order (most dependended upon first).

    It looks like this package only exposes one entry-point format via "main": "dist/virtual-scroller.js",. Looking at that file, this appears to be a CommonJS format. This format is on our roadmap to support - it is related to UMD, which is also on the roadmap.

    That being said, I wonder if we could use .d.ts typings files to work out these dependencies 🤔

  3. petebacondarwin commented on Mar 28, 2019

    @petebacondarwin
    Contributor

    Regarding the former error (angular-tree-component : Entry point 'angular-tree-component' contains deep imports into ngx-virtual-scroller). I can't find where the angular-tree-component depends upon the ngx-virtual-scroller.

  4. elvisbegovic commented on Mar 28, 2019

    @elvisbegovic
    ContributorAuthor

    @petebacondarwin this is two different error for each lib.
    First for angular-tree-component which seems only warning :

    Entry point 'angular-tree-component' contains deep imports into 'lodash/defaultsDeep', 'lodash/get', 'lodash/omit', 'lodash/isNumber', 'lodash/first', 'lodash/last', 'lodash/some', 'lodash/every', 'lodash/compact', 'lodash/find', 'lodash/isString', 'lodash/isFunction', 'lodash/throttle', 'lodash/includes', 'lodash/pick'. This is probably not a problem, but may cause the compilation of entry points to be out of order.

    Second is real error for ngx-virtual-scroller which throw :

    Error: There is no format with import statements in 'C:/.../node_modules/ngx-virtual-scroller' entry-point.

  5. petebacondarwin commented on Mar 28, 2019

    @petebacondarwin
    Contributor

    Cool. So the first is probably not a problem, since lodash does not contain code that needs to be compiled by ngcc anyway.

    I will have a look at whether we can avoid all the problems of the second error by using typings files instead of formats with imports...

  6. added this to the needsTriage milestone on Mar 28, 2019
  7. petebacondarwin commented on Mar 28, 2019

    @petebacondarwin
    Contributor

    Tracking at FW-1210

  8. added
    area: coreIssues related to the framework runtime
    and removed on Apr 2, 2019
  9. speige commented on Apr 6, 2019

    @speige

    @petebacondarwin I'm the maintainer of ngx-virtual-scroller. Can you advise on what code changes I can make to my library for it to be ivy compatible? You said the error was due to using CommonJS Module format. I've tried every module format (CommonJS, UMD, AMD, System, ESNext) & all of them give this identical error.

    The only change I made was in tsconfig.json

      "compilerOptions": {
         "module": "commonjs",
      }
    

    to

      "compilerOptions": {
        "module": "ES2015",
      }
    

    (I iterated through each of the other options for module as well)

    Is there something more I should be doing? What is the preferred module format?

    Thanks.

  10. speige commented on Apr 6, 2019

    @speige

    @petebacondarwin nevermind. I think I figured it out. I came across https://github.com/ng-packagr/ng-packagr which seems to fix my npm package format.

  11. petebacondarwin commented on Apr 6, 2019

    @petebacondarwin
    Contributor

    Hi @speige - glad you found ng-packagr. It is a good tool and save a lot of hassle. Anyway in case you didn't get to the bottom of it. The problem was not that TS was compiling CommonJS format. It was that when you bundled the code you were not generating any bundle formats that ngcc (currently) cannot parse. This should be fixed in the future, but at the moment the vast majority of packages include bundles that are formatted as ES2015 or ES5 code with ES6 import and export statements, which can easily be consumed by bundlers like webpack, etc.

  12. speige commented on Apr 7, 2019

    @speige

    @istiti I've released a new version to npm 2.0.6, could you test & see if the error is gone?

  13. elvisbegovic commented on Apr 8, 2019

    @elvisbegovic
    ContributorAuthor

    @speige correct, error is gone

    @petebacondarwin it seems Angular compiler failed to compile with first error too (angular-tree-component) I get :

    ERROR in There is no typings path for TreeNodeWrapperComponent in C:/Users/.../node_modules/angular-tree-component/dist/components/tree-node-wrapper.component.d.ts.
    We need to add an export for this class to a .d.ts typings file because Angular compiler needs to be able to reference this class in compiled code, such as templates.
    The simplest fix for this is to ensure that this class is exported from the package's entry-point.
    
  14. 51 remaining items

  15. kschwidder commented on Jun 27, 2019

    @kschwidder

    Running the latest release 8.0.3

    ERROR in ./node_modules/@angular/flex-layout/ivy_ngcc/esm2015/extended.js 133:578
    Module parse failed: Unexpected token (133:578)
    You may need an appropriate loader to handle this file type.
    | }
    | }

    DefaultImgSrcDirective.ngDirectiveDef = ɵngcc0.ɵɵdefineDirective({ type: DefaultImgSrcDirective, selectors: [["img", "src.xs", ""], ["img", "src.sm", ""], ["img", "src.md", ""], ["img", "src.lg", ""], ["img", "src.xl", ""], ["img", "src.lt-sm", ""], ["img", "src.lt-md", ""], ["img", "src.lt-lg", ""], ["img", "src.lt-xl", ""], ["img", "src.gt-xs", ""], ["img", "src.gt-sm", ""], ["img", "src.gt-md", ""], ["img", "src.gt-lg", ""]], factory: function DefaultImgSrcDirective_Factory(t) { return ɵDefaultImgSrcDirective_BaseFactory((t || DefaultImgSrcDirective)); }, inputs: { src.xs: "src.xs", src.sm: "src.sm", src.md: "src.md", src.lg: "src.lg", src.xl: "src.xl", "src.lt-sm": "src.lt-sm", "src.lt-md": "src.lt-md", "src.lt-lg": "src.lt-lg", "src.lt-xl": "src.lt-xl", "src.gt-xs": "src.gt-xs", "src.gt-sm": "src.gt-sm", "src.gt-md": "src.gt-md", "src.gt-lg": "src.gt-lg" }, features: [ɵngcc0.ɵɵInheritDefinitionFeature] });
    | const ɵDefaultImgSrcDirective_BaseFactory = ɵngcc0.ɵɵgetInheritedFactory(DefaultImgSrcDirective);
    | /@PURE/ ɵngcc0.ɵsetClassMetadata(DefaultImgSrcDirective, [{
    ERROR in ./node_modules/@angular/flex-layout/ivy_ngcc/esm2015/flex.js 192:653
    Module parse failed: Unexpected token (192:653)
    You may need an appropriate loader to handle this file type.
    | }
    | }
    DefaultLayoutDirective.ngDirectiveDef = ɵngcc0.ɵɵdefineDirective({ type: DefaultLayoutDirective, selectors: [["", "fxLayout", ""], ["", "fxLayout.xs", ""], ["", "fxLayout.sm", ""], ["", "fxLayout.md", ""], ["", "fxLayout.lg", ""], ["", "fxLayout.xl", ""], ["", "fxLayout.lt-sm", ""], ["", "fxLayout.lt-md", ""], ["", "fxLayout.lt-lg", ""], ["", "fxLayout.lt-xl", ""], ["", "fxLayout.gt-xs", ""], ["", "fxLayout.gt-sm", ""], ["", "fxLayout.gt-md", ""], ["", "fxLayout.gt-lg", ""]], factory: function DefaultLayoutDirective_Factory(t) { return ɵDefaultLayoutDirective_BaseFactory((t || DefaultLayoutDirective)); }, inputs: { fxLayout: "fxLayout", fxLayout.xs: "fxLayout.xs", fxLayout.sm: "fxLayout.sm", fxLayout.md: "fxLayout.md", fxLayout.lg: "fxLayout.lg", fxLayout.xl: "fxLayout.xl", "fxLayout.lt-sm": "fxLayout.lt-sm", "fxLayout.lt-md": "fxLayout.lt-md", "fxLayout.lt-lg": "fxLayout.lt-lg", "fxLayout.lt-xl": "fxLayout.lt-xl", "fxLayout.gt-xs": "fxLayout.gt-xs", "fxLayout.gt-sm": "fxLayout.gt-sm", "fxLayout.gt-md": "fxLayout.gt-md", "fxLayout.gt-lg": "fxLayout.gt-lg" }, features: [ɵngcc0.ɵɵInheritDefinitionFeature] });
    | const ɵDefaultLayoutDirective_BaseFactory = ɵngcc0.ɵɵgetInheritedFactory(DefaultLayoutDirective);
    | /@PURE/ ɵngcc0.ɵsetClassMetadata(DefaultLayoutDirective, [{
    ERROR in ./node_modules/@angular/flex-layout/ivy_ngcc/esm2015/grid.js 92:719
    Module parse failed: Unexpected token (92:719)
    You may need an appropriate loader to handle this file type.
    | }
    | }
    DefaultGridAlignDirective.ngDirectiveDef = ɵngcc0.ɵɵdefineDirective({ type: DefaultGridAlignDirective, selectors: [["", "gdGridAlign", ""], ["", "gdGridAlign.xs", ""], ["", "gdGridAlign.sm", ""], ["", "gdGridAlign.md", ""], ["", "gdGridAlign.lg", ""], ["", "gdGridAlign.xl", ""], ["", "gdGridAlign.lt-sm", ""], ["", "gdGridAlign.lt-md", ""], ["", "gdGridAlign.lt-lg", ""], ["", "gdGridAlign.lt-xl", ""], ["", "gdGridAlign.gt-xs", ""], ["", "gdGridAlign.gt-sm", ""], ["", "gdGridAlign.gt-md", ""], ["", "gdGridAlign.gt-lg", ""]], factory: function DefaultGridAlignDirective_Factory(t) { return ɵDefaultGridAlignDirective_BaseFactory((t || DefaultGridAlignDirective)); }, inputs: { gdGridAlign: "gdGridAlign", gdGridAlign.xs: "gdGridAlign.xs", gdGridAlign.sm: "gdGridAlign.sm", gdGridAlign.md: "gdGridAlign.md", gdGridAlign.lg: "gdGridAlign.lg", gdGridAlign.xl: "gdGridAlign.xl", "gdGridAlign.lt-sm": "gdGridAlign.lt-sm", "gdGridAlign.lt-md": "gdGridAlign.lt-md", "gdGridAlign.lt-lg": "gdGridAlign.lt-lg", "gdGridAlign.lt-xl": "gdGridAlign.lt-xl", "gdGridAlign.gt-xs": "gdGridAlign.gt-xs", "gdGridAlign.gt-sm": "gdGridAlign.gt-sm", "gdGridAlign.gt-md": "gdGridAlign.gt-md", "gdGridAlign.gt-lg": "gdGridAlign.gt-lg" }, features: [ɵngcc0.ɵɵInheritDefinitionFeature] });
    | const ɵDefaultGridAlignDirective_BaseFactory = ɵngcc0.ɵɵgetInheritedFactory(DefaultGridAlignDirective);
    | /@PURE/ ɵngcc0.ɵsetClassMetadata(DefaultGridAlignDirective, [{
    ** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
    ℹ 「wdm」: Failed to compile.
    ℹ 「wdm」: Compiling...
    r Date: 2019-06-27T15:12:30.731Z - Hash: ec287296550544a1ddcb - Time: 2475ms
    8 unchanged chunks

    ERROR in ./node_modules/@angular/flex-layout/ivy_ngcc/esm2015/extended.js 133:578
    Module parse failed: Unexpected token (133:578)
    You may need an appropriate loader to handle this file type.
    | }
    | }

    DefaultImgSrcDirective.ngDirectiveDef = ɵngcc0.ɵɵdefineDirective({ type: DefaultImgSrcDirective, selectors: [["img", "src.xs", ""], ["img", "src.sm", ""], ["img", "src.md", ""], ["img", "src.lg", ""], ["img", "src.xl", ""], ["img", "src.lt-sm", ""], ["img", "src.lt-md", ""], ["img", "src.lt-lg", ""], ["img", "src.lt-xl", ""], ["img", "src.gt-xs", ""], ["img", "src.gt-sm", ""], ["img", "src.gt-md", ""], ["img", "src.gt-lg", ""]], factory: function DefaultImgSrcDirective_Factory(t) { return ɵDefaultImgSrcDirective_BaseFactory((t || DefaultImgSrcDirective)); }, inputs: { src.xs: "src.xs", src.sm: "src.sm", src.md: "src.md", src.lg: "src.lg", src.xl: "src.xl", "src.lt-sm": "src.lt-sm", "src.lt-md": "src.lt-md", "src.lt-lg": "src.lt-lg", "src.lt-xl": "src.lt-xl", "src.gt-xs": "src.gt-xs", "src.gt-sm": "src.gt-sm", "src.gt-md": "src.gt-md", "src.gt-lg": "src.gt-lg" }, features: [ɵngcc0.ɵɵInheritDefinitionFeature] });
    | const ɵDefaultImgSrcDirective_BaseFactory = ɵngcc0.ɵɵgetInheritedFactory(DefaultImgSrcDirective);
    | /@PURE/ ɵngcc0.ɵsetClassMetadata(DefaultImgSrcDirective, [{
    ERROR in ./node_modules/@angular/flex-layout/ivy_ngcc/esm2015/flex.js 192:653
    Module parse failed: Unexpected token (192:653)
    You may need an appropriate loader to handle this file type.
    | }
    | }
    DefaultLayoutDirective.ngDirectiveDef = ɵngcc0.ɵɵdefineDirective({ type: DefaultLayoutDirective, selectors: [["", "fxLayout", ""], ["", "fxLayout.xs", ""], ["", "fxLayout.sm", ""], ["", "fxLayout.md", ""], ["", "fxLayout.lg", ""], ["", "fxLayout.xl", ""], ["", "fxLayout.lt-sm", ""], ["", "fxLayout.lt-md", ""], ["", "fxLayout.lt-lg", ""], ["", "fxLayout.lt-xl", ""], ["", "fxLayout.gt-xs", ""], ["", "fxLayout.gt-sm", ""], ["", "fxLayout.gt-md", ""], ["", "fxLayout.gt-lg", ""]], factory: function DefaultLayoutDirective_Factory(t) { return ɵDefaultLayoutDirective_BaseFactory((t || DefaultLayoutDirective)); }, inputs: { fxLayout: "fxLayout", fxLayout.xs: "fxLayout.xs", fxLayout.sm: "fxLayout.sm", fxLayout.md: "fxLayout.md", fxLayout.lg: "fxLayout.lg", fxLayout.xl: "fxLayout.xl", "fxLayout.lt-sm": "fxLayout.lt-sm", "fxLayout.lt-md": "fxLayout.lt-md", "fxLayout.lt-lg": "fxLayout.lt-lg", "fxLayout.lt-xl": "fxLayout.lt-xl", "fxLayout.gt-xs": "fxLayout.gt-xs", "fxLayout.gt-sm": "fxLayout.gt-sm", "fxLayout.gt-md": "fxLayout.gt-md", "fxLayout.gt-lg": "fxLayout.gt-lg" }, features: [ɵngcc0.ɵɵInheritDefinitionFeature] });
    | const ɵDefaultLayoutDirective_BaseFactory = ɵngcc0.ɵɵgetInheritedFactory(DefaultLayoutDirective);
    | /@PURE/ ɵngcc0.ɵsetClassMetadata(DefaultLayoutDirective, [{
    ERROR in ./node_modules/@angular/flex-layout/ivy_ngcc/esm2015/grid.js 92:719
    Module parse failed: Unexpected token (92:719)
    You may need an appropriate loader to handle this file type.
    | }
    | }
    DefaultGridAlignDirective.ngDirectiveDef = ɵngcc0.ɵɵdefineDirective({ type: DefaultGridAlignDirective, selectors: [["", "gdGridAlign", ""], ["", "gdGridAlign.xs", ""], ["", "gdGridAlign.sm", ""], ["", "gdGridAlign.md", ""], ["", "gdGridAlign.lg", ""], ["", "gdGridAlign.xl", ""], ["", "gdGridAlign.lt-sm", ""], ["", "gdGridAlign.lt-md", ""], ["", "gdGridAlign.lt-lg", ""], ["", "gdGridAlign.lt-xl", ""], ["", "gdGridAlign.gt-xs", ""], ["", "gdGridAlign.gt-sm", ""], ["", "gdGridAlign.gt-md", ""], ["", "gdGridAlign.gt-lg", ""]], factory: function DefaultGridAlignDirective_Factory(t) { return ɵDefaultGridAlignDirective_BaseFactory((t || DefaultGridAlignDirective)); }, inputs: { gdGridAlign: "gdGridAlign", gdGridAlign.xs: "gdGridAlign.xs", gdGridAlign.sm: "gdGridAlign.sm", gdGridAlign.md: "gdGridAlign.md", gdGridAlign.lg: "gdGridAlign.lg", gdGridAlign.xl: "gdGridAlign.xl", "gdGridAlign.lt-sm": "gdGridAlign.lt-sm", "gdGridAlign.lt-md": "gdGridAlign.lt-md", "gdGridAlign.lt-lg": "gdGridAlign.lt-lg", "gdGridAlign.lt-xl": "gdGridAlign.lt-xl", "gdGridAlign.gt-xs": "gdGridAlign.gt-xs", "gdGridAlign.gt-sm": "gdGridAlign.gt-sm", "gdGridAlign.gt-md": "gdGridAlign.gt-md", "gdGridAlign.gt-lg": "gdGridAlign.gt-lg" }, features: [ɵngcc0.ɵɵInheritDefinitionFeature] });
    | const ɵDefaultGridAlignDirective_BaseFactory = ɵngcc0.ɵɵgetInheritedFactory(DefaultGridAlignDirective);
    | /@PURE/ ɵngcc0.ɵsetClassMetadata(DefaultGridAlignDirective, [{
    ℹ 「wdm」: Failed to compile.

  16. petebacondarwin commented on Jun 27, 2019

    @petebacondarwin
    Contributor

    @kschwidder - the version to use for testing ivy is 8.1.0-rc.0 and higher.

  17. kschwidder commented on Jun 28, 2019

    @kschwidder

    8.1.0-rc.0 fixed some areas. Now I am getting this instead

    ERROR in ../node_modules/@angular/flex-layout/extended/typings/class/class.d.ts:30:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    30 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/extended/typings/img-src/img-src.d.ts:38:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    38 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/flex/typings/flex/flex.d.ts:50:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    50 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/grid/typings/align-columns/align-columns.d.ts:28:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    28 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/grid/typings/align-rows/align-rows.d.ts:28:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    28 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/grid/typings/areas/areas.d.ts:31:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    31 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/grid/typings/auto/auto.d.ts:31:23 - error TS2314: [0mGeneric type 'ɵɵBaseDef' requires 1 type argument(s).

    31 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/grid/typings/columns/columns.d.ts:32:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    32 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/grid/typings/gap/gap.d.ts:31:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    31 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~
    ../node_modules/@angular/flex-layout/grid/typings/rows/rows.d.ts:32:23 - error TS2314: Generic type 'ɵɵBaseDef' requires 1 type argument(s).

    32 static ngBaseDef: ɵngcc0.ɵɵBaseDef;
    ~~~~~~~~~~~~~~~~

    ** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
    ℹ 「wdm」: Failed to compile.
    ℹ 「wdm」: Compiling...

    Date: 2019-06-28T09:55:12.010Z - Hash: e370a87c7805c7380678
    5 unchanged chunks

    Time: 2598ms
    ℹ 「wdm」: Compiled successfully.

    ERROR in node_modules/@angular/flex-layout/extended/typings/class/class.d.ts(30,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/extended/typings/img-src/img-src.d.ts(38,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/flex/typings/flex/flex.d.ts(50,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/grid/typings/align-columns/align-columns.d.ts(28,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/grid/typings/align-rows/align-rows.d.ts(28,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/grid/typings/areas/areas.d.ts(31,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/grid/typings/auto/auto.d.ts(31,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/grid/typings/columns/columns.d.ts(32,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/grid/typings/gap/gap.d.ts(31,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    node_modules/@angular/flex-layout/grid/typings/rows/rows.d.ts(32,23): error TS2314: Generic type 'ɵɵBaseDef<T>' requires 1 type argument(s).
    
  18. kccsf commented on Jun 28, 2019

    @kccsf
  19. wottpal commented on Jul 2, 2019

    @wottpal

    @magnattic Did you fix your issue? I also get a problem like this with https://github.com/arkon/ng-inline-svg which prevents compilation when ivy is turned on:

    ERROR in There is no format with import statements in '[...]/node_modules/ng-inline-svg' entry-point.
    

    Which comes after the following warning:

    WARNING in Entry point 'angular-tree-component' contains deep imports into 'lodash/defaultsDeep', 'lodash/get', 'lodash/omit', 'lodash/isNumber', 'lodash/first', 'lodash/last', 'lodash/some', 'lodash/every', 'lodash/compact', 'lodash/find', 'lodash/isString', 'lodash/isFunction', 'lodash/throttle', 'lodash/includes', 'lodash/pick'. This is probably not a problem, but may cause the compilation of entry points to be out of order.
    
  20. petebacondarwin commented on Jul 3, 2019

    @petebacondarwin
    Contributor

    @wottpal - This should be fixed. Can you confirm which version of Angular you are testing against? The ngcc fixes are only in the next versions, which currently is 8.2.0-next.0 (released yesterday).

  21. kschwidder commented on Jul 3, 2019

    @kschwidder

    +1: with 8.2.0-next.0 it is fixed !!!
    The decrease of the bundle size is amazing ! Awesome work.
    Well done. Thx a lot

  22. wottpal commented on Jul 3, 2019

    @wottpal

    @petebacondarwin Yes, I can confirm that as well. Error and Warning are gone.


    Update: Even though it compiles now I get a Runtime-Error in Chrome (also from ng-inline-svg). Seems related:

    Screenshot 2019-07-03 at 12 07 43

    (If you are wondering experimentalDecorators is set to true in my tsconfig.json, of course)

  23. kschwidder commented on Jul 3, 2019

    @kschwidder

    I am getting a runtime error as follows too:

    vendor.js:68359 ERROR TypeError: Cannot read property 'init' of undefined
    at DefaultFlexDirective.init (vendor.js:100713)
    at new FlexDirective (vendor.js:105619)
    at new DefaultFlexDirective (vendor.js:105735)
    at vendor.js:68324
    at NodeInjectorFactory.DefaultFlexDirective_Factory [as factory] (vendor.js:105739)
    at getNodeInjectable (vendor.js:68188)
    at instantiateAllDirectives (vendor.js:74464)
    at createDirectivesAndLocals (vendor.js:73860)
    at ɵɵelementStart (vendor.js:78758)
    at TeflonComponent_Template (ng:///TeflonComponent.js:39)
    defaultErrorLogger @ vendor.js:68359
    main.js:2663 TypeError: Cannot read property 'init' of undefined
    at DefaultFlexDirective.init (vendor.js:100713)
    at new FlexDirective (vendor.js:105619)
    at new DefaultFlexDirective (vendor.js:105735)
    at vendor.js:68324
    at NodeInjectorFactory.DefaultFlexDirective_Factory [as factory] (vendor.js:105739)
    at getNodeInjectable (vendor.js:68188)
    at instantiateAllDirectives (vendor.js:74464)
    at createDirectivesAndLocals (vendor.js:73860)
    at ɵɵelementStart (vendor.js:78758)
    at TeflonComponent_Template (ng:///TeflonComponent.js:39)

  24. gkalpak commented on Jul 3, 2019

    @gkalpak
    Member

    These runtime errors might be related to #31394.

  25. petebacondarwin commented on Jul 3, 2019

    @petebacondarwin
    Contributor

    @wottpal you issue does indeed appear to have the same cause as #31394. Please follow that issue for a resolution.

    @kschwidder - please can you create a new issue for you problem, providing steps to reproduce the error.

    I am closing this issue as it is becoming a catch-all for ngcc related issues and that makes it difficult to track what is broken and what is fixed. Please create new issues for failures when trying out ivy/ngcc (after searching for duplicate issues first!).

  26. angular-automatic-lock-bot commented on Sep 15, 2019

    @angular-automatic-lock-bot

    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.

  27. locked and limited conversation to collaborators on Sep 15, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions