title: RxJS error handling
body: <p>I've got an issue with RxJS swallowing errors. So in my case I've got something like this:</p>
  
  <pre><code>function funcThatThrowsError(fn, ..args) {
       return fn.bind(fn, ...args);
  }
  
  function fetchItems() {
       Observable.fromPromise(
          reqwest({
              url: `${API_ROOT}${url}`,
              method,
              data,
              contentType: "application/json"
          })
      ).map(funcThatThrowsError(null, "someValue"))
  }
  
  const observableA = fechItems();
  const observableB = ... ;
  
  Observable
      .combineLatest(
          observableA,
          observableB,
          () =&gt;  { }
      )
      .forEach(
          () =&gt; { }, // success
          (err) -&gt; console.log(err.stack);
      )
  </code></pre>
  
  <p>So basically I'm deliberately passing a null value as the <code>fn</code> parameter which causes the <code>funcThatThrowsError</code> to throw an exception.</p>
  
  <p>The problem is that the error callback is not invoked in this case. Rather RxJS will use it's own <code>thrower</code> function </p>
  
  <pre><code>function thrower(e) {
     throw e;
  }
  </code></pre>
  
  <p>What's the best practise to deal with this scenario. I feel that there is something that I'm missing.</p>