You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2023/12/01 21:17:33 UTC

(airflow) branch main updated: Add semi-automated misc classification for providers release (#36018)

This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new dde4065995 Add semi-automated misc classification for providers release (#36018)
dde4065995 is described below

commit dde406599581a2768da823171f47a9b2a4208966
Author: Elad Kalif <45...@users.noreply.github.com>
AuthorDate: Fri Dec 1 23:17:24 2023 +0200

    Add semi-automated misc classification for providers release (#36018)
    
    * Add semi-automated misc classification for providers release
    
    * Update more instructions
---
 dev/README_RELEASE_PROVIDER_PACKAGES.md                   | 15 +++++++++++++--
 .../prepare_providers/provider_documentation.py           |  9 ++++++++-
 .../templates/CHANGELOG_TEMPLATE.rst.jinja2               |  6 ++++++
 3 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/dev/README_RELEASE_PROVIDER_PACKAGES.md b/dev/README_RELEASE_PROVIDER_PACKAGES.md
index 48a41b8783..b5eb38ed2e 100644
--- a/dev/README_RELEASE_PROVIDER_PACKAGES.md
+++ b/dev/README_RELEASE_PROVIDER_PACKAGES.md
@@ -79,13 +79,24 @@ You can read more about the command line tools used to generate the packages in
 
 # Bump min Airflow version for providers
 
-If you want to just update the min airflow version for all packages, you should modify `MIN_AIRFLOW_VERSION`
-in `dev/provider_packages/prepare_provider_packages.py` and run the `prepare-provider-documentation`
+1. Update `provider-airflow-compatibility-check` in `.github/workflows/ci.yml` to check
+compatibility with the new minimum version.
+
+2. Check if Breeze unit tests in `dev/breeze/tests/test_packages.py` need adjustments. This is done by simply
+searching and replacing old version occurrences with newer one. For example 2.5.0 to 2.6.0
+
+3. Update minimum airflow version for all packages, you should modify `MIN_AIRFLOW_VERSION`
+in `src/airflow_breeze/utils/packages.py` and run the `prepare-provider-documentation`
 command with the `--only-min-version-update` flag. This will only update the min version in
 the `__init__.py` files and package documentation without bumping the provider versions.
 
 ```shell script
+branch="Bump minimum Airflow version in providers to Airflow 2.6.0"
+git checkout -b "${branch}"
 breeze release-management prepare-provider-documentation --only-min-version-update
+git add .
+git commit -m "Bump minimum Airflow version in providers to Airflow 2.6.0"
+git push --set-upstream origin "${branch}"
 ```
 
 Note: that this command will only bump the min airflow versions for those providers that do not have it set to
diff --git a/dev/breeze/src/airflow_breeze/prepare_providers/provider_documentation.py b/dev/breeze/src/airflow_breeze/prepare_providers/provider_documentation.py
index 0193f9e0ab..da44246cea 100644
--- a/dev/breeze/src/airflow_breeze/prepare_providers/provider_documentation.py
+++ b/dev/breeze/src/airflow_breeze/prepare_providers/provider_documentation.py
@@ -125,6 +125,7 @@ class ClassifiedChanges:
 
     def __init__(self):
         self.fixes: list[Change] = []
+        self.misc: list[Change] = []
         self.features: list[Change] = []
         self.breaking_changes: list[Change] = []
         self.other: list[Change] = []
@@ -777,8 +778,14 @@ def _get_changes_classified(
     """
     classified_changes = ClassifiedChanges()
     for change in changes:
-        if "fix" in change.message.lower():
+        # Special cases
+        if "Bump minimum Airflow version in providers" in change.message.lower():
+            classified_changes.misc.append(change)
+        # General cases
+        elif "fix" in change.message.lower():
             classified_changes.fixes.append(change)
+        elif "misc" in change.message.lower():
+            classified_changes.misc.append(change)
         elif "add" in change.message.lower() and maybe_with_new_features:
             classified_changes.features.append(change)
         elif "breaking" in change.message.lower() and with_breaking_changes:
diff --git a/dev/breeze/src/airflow_breeze/templates/CHANGELOG_TEMPLATE.rst.jinja2 b/dev/breeze/src/airflow_breeze/templates/CHANGELOG_TEMPLATE.rst.jinja2
index 3a42506c0b..d6d9283738 100644
--- a/dev/breeze/src/airflow_breeze/templates/CHANGELOG_TEMPLATE.rst.jinja2
+++ b/dev/breeze/src/airflow_breeze/templates/CHANGELOG_TEMPLATE.rst.jinja2
@@ -44,6 +44,12 @@ Bug Fixes
 * ``{{ fix.message_without_backticks | safe }}``
 {%- endfor %}
 
+Misc
+~~~~
+{% for misc in classified_changes.misc %}
+* ``{{ misc.message_without_backticks | safe }}``
+{%- endfor %}
+
 .. Below changes are excluded from the changelog. Move them to
    appropriate section above if needed. Do not delete the lines(!):
    {%- for other in classified_changes.other %}