**Description**
It would be nice if the azure-storage-blob dependency for apache-airflow-providers-microsoft-azure was upgraded to a more recent version that 2.1.0. 

**Use case / motivation**

The version 12.4.0 will allow us to perform OAuth refresh token operations for long running tasks. We use this to authenticate against our datalake, and it's currently not possible with the version 2.1.0 that airflow uses. 


**Related Issues**

The 12.x version is 100% incompatible with the 2.x versions. The API has changed drastically between the two versions, so all the airflow azure operators will need to be changed and fixed. 

setup.py
"""
    The setuptools.Distribution subclass with Airflow specific behaviour
    The reason for pylint: disable=signature-differs of parse_config_files is explained here:
    https://github.com/PyCQA/pylint/issues/3737
    """
    def parse_config_files(self, *args, **kwargs):  
        """
        Ensure that when we have been asked to install providers from sources
        that we don't *also* try to install those providers from PyPI.
        Also we should make sure that in this case we copy provider.yaml files so that
        Providers manager can find package information.
        """
        super().parse_config_files(*args, **kwargs)
        if os.getenv(INSTALL_PROVIDERS_FROM_SOURCES) == 'true':
            self.install_requires = [  
                req for req in self.install_requires if not req.startswith('apache-airflow-providers-')
            ]
            provider_yaml_files = glob.glob("airflow/providers/**/provider.yaml", recursive=True)
            for provider_yaml_file in provider_yaml_files:
                provider_relative_path = relpath(provider_yaml_file, os.path.join(my_dir, "airflow"))
                self.package_data['airflow'].append(provider_relative_path)
        else:
            self.install_requires.extend(
                [get_provider_package_from_package_id(package_id) for package_id in PREINSTALLED_PROVIDERS]
            )
def add_provider_packages_to_extras_requirements(extra: str, providers: List[str]) -> None: