FYI, this should just be .catchError. With the new Future APIs the idea is you build up a chain of futures. If you use ".." now, it forks the future chain, and your "then" branch would get called in case of error