Throwing an exception in Try.map should result in an exception being thrown, not a Failure result

For your use case, Either[Throwable, A] is probably a better choice. Cats’ syntax extensions for either, Cats: Either makes it easy to lift your throwing function in to either. You can then map with the expected semantics.