enten / udk

Universal Development Kit: Webpack extension which improves universal application development. - THE UDK PROJECT SUPPORT IS CURRENTLY SUSPENDED.
MIT License
29 stars 7 forks source link

compatibility with @angular 8.1.0-rc.0 #11

Closed qdouble closed 5 years ago

qdouble commented 5 years ago

When updating to @next version angular, I'm getting the following error: An unhandled exception occurred: Cannot read property 'assertCompatibleAngularVersion' of undefined

The CLI outputs this error log:

[error] TypeError: Cannot read property 'assertCompatibleAngularVersion' of undefined
    at buildUniversal (/home/marketstripe/Sites/polysolo-workspace/node_modules/udk/angular/lib/udk-builder.js:25:25)
    at onInput (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular-devkit/architect/src/create-builder.js:145:30)
    at SafeSubscriber.context.inboundBus.subscribe.i [as _next] (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular-devkit/architect/src/create-builder.js:63:29)
    at SafeSubscriber.__tryOrUnsub (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:207:16)
    at SafeSubscriber.next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:145:22)
    at Subscriber._next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:89:26)
    at Subscriber.next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:66:18)
    at Object.next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/observable/onErrorResumeNext.js:22:49)
    at SafeSubscriber.__tryOrUnsub (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:207:16)
    at SafeSubscriber.next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:145:22)
    at Subscriber._next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:89:26)
    at Subscriber.next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:66:18)
    at ReplaySubject.Subject.next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subject.js:60:25)
    at ReplaySubject.nextInfiniteTimeWindow (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/ReplaySubject.js:48:31)
    at Object.next (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/operators/shareReplay.js:33:50)
    at SafeSubscriber.__tryOrUnsub (/home/marketstripe/Sites/polysolo-workspace/node_modules/@angular/cli/node_modules/rxjs/internal/Subscriber.js:207:16)

So Version is coming up undefined here: https://github.com/enten/udk/blob/0f84107c51e377fabb4f67f4e70255fa48b17fd6/angular/lib/udk-builder.ts#L73

enten commented 5 years ago

I think the angular devkit have changed.

I will investigate next week and make an update to handle changes.

qdouble commented 5 years ago

@enten yeah, it no longer exports a Version class... it's been replaced with this function: export function assertCompatibleAngularVersion(projectRoot: string, logger: logging.LoggerApi)

https://github.com/angular/angular-cli/blob/0ed8de1e8a8bb39fa58c4a475c2fd56c2aae28fa/packages/angular_devkit/build_angular/src/utils/version.ts

enten commented 5 years ago

@qdouble
Thank you very much for your investigation.

According to your instagation: angular-devkit/build-angular changed as you described.

I made a commit to handle the change and published udk v1.1.4.

Can you try to npm install --dev udk@1.1.4 && ng build to check if this issue is resolved?

qdouble commented 5 years ago

@enten just test it and it appears to be working great again. Thanks.