title: Angular 6 & RxJS 6 Breaking Changes
body: <p>I've google the crap out of this and I can't find a solution.</p>
  
  <p>I've been using code like this for some time now.  http is the angular HttpClient.</p>
  
  <pre><code> forgotPassword(email: string): Observable&lt;ApiReturn&gt; {
          const url = `${this.apiURL}/ForgotPassword`;
          const params = {
              email
          };
          return this.http
              .post&lt;ApiReturn&gt;(url, params, this.requestOptions)
              .pipe(catchError(e =&gt; this.handleError(e)));
      }
  </code></pre>
  
  <p>I updated to the latest Angular 6.x version and RxJS 6 (from 5.5).   Now the code is complaining about the catchError:</p>
  
  <blockquote>
    <p>Argument of type 'OperatorFunction' is not assignable to parameter of type 'OperatorFunction'.
      Types of parameters 'source' and 'source' are incompatible.
        Type 'Observable' is not assignable to type 'Observable'.</p>
  </blockquote>
  
  <p>My HttpInterceptor is also now failing to compile.</p>
  
  <pre><code>import { Injectable } from '@angular/core';
  import {
      HttpEvent,
      HttpInterceptor,
      HttpHandler,
      HttpRequest,
      HttpResponse
  } from '@angular/common/http';
  import { Log, Level } from 'ng2-logger/client';
  import { Observable } from 'rxjs';
  import { map, tap } from 'rxjs/operators';
  
  @Injectable()
  export class AuthInterceptor implements HttpInterceptor {
      constructor() {
      }
  
      intercept(
          req: HttpRequest&lt;any&gt;,
          next: HttpHandler
      ): Observable&lt;HttpEvent&lt;any&gt;&gt; {
          // Get the auth header from the service.
          // const authHeader = this.global.authenticationToken;
          // Clone the request to add the new header.
          const authReq = req.clone({
              headers: req.headers
                  .set('Access-Control-Allow-Origin', window.location.href)
          });
          // Pass on the cloned request instead of the original request.
          return next.handle(authReq);
      }
  }
  </code></pre>
  
  <blockquote>
    <p>Error: [ts] Type
    'import("c:/ProjDotNet/collegebowl-site/node_modules/@angular/core/node_modules/rxjs/internal/Observable").Observable>'
    is not assignable to type
    'import("c:/ProjDotNet/collegebowl-site/node_modules/rxjs/internal/Observable").Observable>'.
    Types of property '
    source' are incompatible.</p>
  </blockquote>
  
  <p>Basically the same issue.</p>
  
  <p>I gather I'm missing something basic in the pipe function but I can't figure it out or find an example that is doing what I am doing. Any help would be appreciated.</p>