Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Apply pypi suffix to provider dependencies (including apache-airflow)
So far we only applied PyPi suffix for cross-provider dependencies - i.e. when one airflow package depended on another one released at the same time we added "dev0" suffix to their cross-dependencies, when building them on CI so that they can be installed together without conflicts (this is because of decisions made with PEP-440 where version suffixes are in different namespaces than the final versions, so it is impossible to specify "final" dependency as minimal and have the ".dev0" satisfy it only for that single package. With openlineage provider, we need to release it before Airflow 2.7.0 gets released, and openlineage provider depends on Airflow 2.7.0 so we need to also handle the situation, where OpenLineage has >= 2.7.0 for Airflow, but the dependency that is used to resolve dependencies in CI uses 2.7.0dev0. This is done by dynamically manipulating the dependencies in setup.py based on VERSION_SUFFIX_FOR_PYPI variable. This variable in CI is set to "dev0" thus all packages built have "dev0" added as version, with this change if any package has >= <CURRENT_AIRFLOW_VERSION> specified, it will also be extended with the same "dev0" suffix.
- Loading branch information