The order matters because it's nice when the hashes in the error message are in the same order as in the reqs file.