The dependencies in Alphas are currently >= 2.0.0 and should be >=2.0.0a0 in order to work with Alphas in cases which are not PEP 440-compliant.

According to https://www.python.org/dev/peps/pep-0440/, >= 2.0.0 should also work with alpha/beta releases (a1/a2) but in some cases it does not (https://apache-airflow.slack.com/archives/C0146STM600/p1602774750041800) 

Changing to ">=2.0.0a0" should help.
provider_packages/setup_provider_packages.py
"""
    Returns cross-provider dependencies for the package.
    :param provider_package_id: package id
    :return: list of cross-provider dependencies
    """
    with open(os.path.join(PROVIDERS_PATH, "dependencies.json"), "rt") as dependencies_file:
        dependent_packages = json.load(dependencies_file).get(provider_package_id) or []
    return dependent_packages
def make_sure_remote_apache_exists_and_fetch():
    """
    Make sure that apache remote exist in git. We need to take a log from the master of apache
    repository - not locally - because when we commit this change and run it, our log will include the
    current commit - which is going to have different commit id once we merge. So it is a bit
    catch-22.
    :return:
    """
    try:
        subprocess.check_call(["git", "remote", "add", "apache-https-for-providers",
                               "https://github.com/apache/airflow.git"],
                              stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
    except subprocess.CalledProcessError as e:
        if e.returncode == 128:
            print("The remote `apache-https-for-providers` already exists. If you have trouble running "
                  "git log delete the remote", file=sys.stderr)
        else:
            raise
    subprocess.check_call(["git", "fetch", "apache-https-for-providers"],
                          stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
def get_git_command(base_commit: Optional[str]) -> List[str]: