travis can't handle ^ using ~ instead