Hey Hussein,
Thanks for preparing the release!

It would be great if we could create a similar verification subsection with
other releases so that all PMCs can follow the same approach and approve
the same checks. #verify-the-release-candidate-by-pmc-members.
Also, one improvement could be that we can populate RC and releases under
the same directory, such as `apache-airflow-mypy/0.1.0rc2/` rather than
`apache-airflow-mypy-0.1.0rc2/` in the Airflow root directory in dist.
Neither of these is a preventative for release.

I have checked the SVN, signature, licence, checksums, and reproducible
package builds, and technically it looks good on the PMC verification side
of things.

One thing that can block the release is that I see the packages created
with RC suffix while in the release process, we are only pushing this to
PyPI and building packages without suffix for asf-dist. Such as
https://dist.apache.org/repos/dist/dev/airflow/helm-chart/1.21.0rc2/ or
https://dist.apache.org/repos/dist/dev/airflow/3.2.2rc3/.

-1 Unfortunately, until the rc suffix in the dist is removed :( No need for
another RC. Just rebuilding and pushing without the suffix to asf-dist
should be enough :)

Best regards,
Bugra Ozturk


On Tue, Jun 9, 2026 at 10:33 AM Hussein Awala <[email protected]> wrote:

> Hey all,
>
> This is a call for the vote to release Apache Airflow Mypy version 0.1.0.
>
> The release candidate is available at:
>
>
> https://dist.apache.org/repos/dist/dev/airflow/apache-airflow-mypy-0.1.0rc2/
>
> *apache-airflow-mypy-0.1.0rc2* is the first release of the new
> apache-airflow-mypy distribution, which packages the mypy plugins used
> across the Apache Airflow monorepo as a standalone, independently
> versioned package (see PR #61422
> <https://github.com/apache/airflow/pull/61422> for details and
> motivation).
>
> This is rc2; rc1 was prepared a while ago and was superseded by this
> candidate built from the same source commit.
>
> The artifacts were generated from the tag apache-airflow-mypy-0.1.0rc2,
> which points to commit 1cc6f5425af1c142ad6480444e23014bdcc42d4f in the
> apache/airflow repository:
>
> https://github.com/apache/airflow/releases/tag/apache-airflow-mypy-0.1.0rc2
>
> The packages are available at PyPI:
>
> https://pypi.org/project/apache-airflow-mypy/0.1.0rc2/
>
> You can install the release candidate with:
>
> pip install --pre apache-airflow-mypy==0.1.0rc2
>
> Public keys are available at:
>
> https://dist.apache.org/repos/dist/release/airflow/KEYS
>
> The vote will be open for at least 72 hours (until 2026-06-12 08:30 UTC)
> or until the necessary number of votes are reached.
>
> [ ] +1 approve
> [ ] +0 no opinion
> [ ] -1 disapprove with the reason
>
> Only PMC votes are binding, but everyone is welcome to check the release
> and vote with "(non-binding)".
>
> Here is my +1 (binding).
>
> Additional notes:
>
>    -
>
>    I have verified the RC end-to-end: SVN contents, GPG signatures, SHA512
>    checksums, the signed git tag, sdist/wheel contents (LICENSE, NOTICE,
>    PKG-INFO, version 0.1.0rc2), wheel installation, and a functional mypy
>    run loading airflow_mypy.plugins.decorators and
>    airflow_mypy.plugins.outputs. The Apache RAT license check is clean.
>    -
>
>    I have also validated this RC inside an Airflow
>    repository, running a full mypy suite against apache-airflow-mypy
>    0.1.0rc2 installed from PyPI - the plugins load and behave identically
>    to the previously-vendored version.
>
> How to verify the release candidate:
>
> svn co
> https://dist.apache.org/repos/dist/dev/airflow/apache-airflow-mypy-0.1.0rc2
> mypy-rc2
> <https://dist.apache.org/repos/dist/dev/airflow/apache-airflow-mypy-0.1.0rc2mypy-rc2>
> cd mypy-rc2
> for i in *.asc;    do gpg --verify "$i"; done
> for i in *.sha512; do shasum -a 512 "$(basename "$i" .sha512)" | diff
> - "$i"; done
>
> Thanks,
> Hussein
>

Reply via email to