This comes at the expense of having Try::Tiny as additional dependency, but I think Try::Tiny is widely available.