Failed to compile after updating to version 2.17.0

after installing version 2.17.0 I receive an error when running the app from Radzen studio.
I tried this on three difference machines.

ERROR in src/app/techneaux-api-auth.service.ts(3,33): error TS2307: Cannot find module '@angular/http'.

ng-cli: i 「wdm」: Failed to compile.

Hi @michael,

We will release a hotfix version shortly.

1 Like

@michael the hotfix version 2.17.1 has been released. The issue should be fixed now.

I also get the following error:

ERROR in node_modules/rxjs/Observable.d.ts(1,15): error TS2307: Cannot find module 'rxjs-compat/Observable'.
node_modules/rxjs/Subscription.d.ts(1,15): error TS2307: Cannot find module 'rxjs-compat/Subscription'.
src/app/bht-layout/bht-layout.component.ts(3,10): error TS2305: Module '"C:/_projects/ReferenceMgt_radzen/client/node_modules/rxjs/Subscription"' has no exported member 'Subscription'.
src/app/bht-layout/bht-layout.component.ts(4,10): error TS2305: Module '"C:/_projects/ReferenceMgt_radzen/client/node_modules/rxjs/Observable"' has no exported member 'Observable'.

@subzerodeluxe do you have any custom code in your application? If not please zip the meta directory and send it over to Thank you in advance!

Or you can paste the code of the bht-layout.component.ts.

Yes. I needed to refactor my RxJS code. Rookie mistake!
Thanks anyways for the quick reply! :slight_smile:

Indeed the upgrade to Angular 7 brought RxJS 6.0 which has some breaking changes. We decided not to bring the rxjs-compat module in order to reduce the final application bundle size.

I am still having the same problem with 2.18. It is working with 2.12, can you please give some pointers to this refactorting?

Well, there are a few breaking changes in RxJS 6.

  1. Different internal structure that requires you to change your import statements
    e.g. import { Subject } from 'rxjs/Subject' => import { Subject } from 'rxjs'
  2. pipe() as a method to chain your operators, the old way of chaining them will not work
  3. Some operators were renamed e.g. do() => tap()

Depending on your lines of code, it could be as simple as changing a few import statements