potiuk commented on issue #34365: URL: https://github.com/apache/airflow/issues/34365#issuecomment-1719848479
> While testing the sources for the Google RC, I see the dependences `apache-airflow-providers-common-sql>=1.7.2.dev0`,` apache-airflow>=2.4.0.dev0` have a `dev0` suffix in the `setup.cfg` file. Is that expected for RCs? I see `apache-airflow` has a `dev0` version suffix in the Amazon RC sources too in its `setup.cfg` file. > Whereas for earlier released packages e.g. for the Google provider `10.8.0` it does NOT have a `dev0` suffix on the Airflow version in its setup.cfg file. Yes. This is all expected (providing that your observations are about the RC packages you downloaded from PyPI). I guess you downloaded the packages from PyPI - but those are not the packages that PMC members verify and vote on. They are "Convenience" to test and install the packages from PyPI but they are NOT the same as packges we vote on. The RC packages in PyPI are different than the one we have in https://dist.apache.org/repos/dist/dev/airflow/providers/ - they differ by the RC* suffix and .dev0 dependencies. The packages in https://dist.apache.org/repos/dist/dev/airflow/providers/ are the very same files we will eventually upload as "x.y.z" packages to PyPI: There are several different reasons for that process/differences: 1) In PyPI you cannot delete and re-upload package with the same version - so for PyPI testing we need to submit RC packages. It is impossible to have same package uploaded as RC and final version. So we need to slightly (dynamically) modify the packages when we are preparing them for PyPI (but only for RC candidates). 2) PIP does not recognize x.y.z.dev0 as `>=x.y.z`. This means that if we have two packages released at the same time and one depends on the other (happens) we need to dynamically add 'x.y.z.dev0` -> this will make sure that we can install the new packages from PyPI (otherwise they would comply that there is no `>=x.y.z` package. That''s why for all RCs we add `.dev0` dynamically for every dependency where we depend on any `apache-airflow` package. Otherwise we would have to first relase (vote and publish) the dependent package and only after the the package that depends on it. Ading .dev0 in PyPI RCS allows to vote and release such cross-dependent packages together. 3) Finally the packages we are voting on (because we do not vote on PyPI packages - we vote on the packages in https://dist.apache.org/repos/dist/dev/airflow/providers/ ) do not contain neither RC nor .dev0, because those are the very packages that we will move to https://downloads.apache.org/airflow/providers/ . They are THE SAME packages - with checksums and signatures etc. So the packages we VOTE on already have final versions, and final dependencies, because those are the packages that will become `x.y.z` if they pass the voting. So yeah - good points, but everything is perfectly as expected. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
