diff --git a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
index a319438b5cb48..2872e09b58b6a 100644
--- a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
@@ -172,6 +172,7 @@
get_provider_dependencies,
get_related_providers,
load_constraints,
+ regenerate_provider_dependencies_once,
)
from airflow_breeze.utils.python_versions import get_python_version_list
from airflow_breeze.utils.reproducible import get_source_date_epoch, repack_deterministically
@@ -851,6 +852,7 @@ def prepare_provider_documentation(
PrepareReleaseDocsUserQuitException,
PrepareReleaseDocsUserSkippedException,
update_changelog,
+ update_index_rst,
update_min_airflow_version_and_build_files,
update_release_notes,
)
@@ -923,6 +925,12 @@ def prepare_provider_documentation(
only_min_version_update=only_min_version_update,
with_min_airflow_version_bump=with_min_airflow_version_bump,
)
+ update_index_rst(
+ provider_id=provider_id,
+ with_breaking_changes=with_breaking_changes,
+ maybe_with_new_features=maybe_with_new_features,
+ )
+
except PrepareReleaseDocsNoChangesException:
no_changes_packages.append(provider_id)
except PrepareReleaseDocsChangesOnlyException:
@@ -3028,6 +3036,8 @@ def update_providers_next_version():
"""
from airflow_breeze.utils.packages import update_providers_with_next_version_comment
+ # make sure dependencies are regenerated before we start
+ regenerate_provider_dependencies_once()
get_console().print("\n[info]Scanning for providers with '# use next version' comments...\n")
updates_made = update_providers_with_next_version_comment()
@@ -3042,6 +3052,9 @@ def update_providers_next_version():
f"\n[success]Updated {len(updates_made)} provider(s) with "
f"{sum(len(deps) for deps in updates_made.values())} dependency change(s).[/]"
)
+ # Regenerate provider dependencies after some of them changed
+ regenerate_provider_dependencies_once.cache_clear()
+ regenerate_provider_dependencies_once()
else:
get_console().print(
"\n[info]No updates needed. All providers with '# use next version' "
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 875a15aeebe41..d489d1b1c2706 100644
--- a/dev/breeze/src/airflow_breeze/prepare_providers/provider_documentation.py
+++ b/dev/breeze/src/airflow_breeze/prepare_providers/provider_documentation.py
@@ -1119,15 +1119,22 @@ def _generate_new_changelog(
provider_details.changelog_path.write_text("\n".join(new_changelog_lines) + "\n")
-def _update_index_rst(
- context: dict[str, Any],
+def update_index_rst(
provider_id: str,
- target_path: Path,
+ with_breaking_changes: bool,
+ maybe_with_new_features: bool,
):
+ get_console().print(f"\n[info]Update index.rst for {provider_id}\n")
+ provider_details = get_provider_details(provider_id)
+ jinja_context = get_provider_documentation_jinja_context(
+ provider_id=provider_id,
+ with_breaking_changes=with_breaking_changes,
+ maybe_with_new_features=maybe_with_new_features,
+ )
index_update = render_template(
- template_name="PROVIDER_INDEX", context=context, extension=".rst", keep_trailing_newline=True
+ template_name="PROVIDER_INDEX", context=jinja_context, extension=".rst", keep_trailing_newline=True
)
- index_file_path = target_path / "index.rst"
+ index_file_path = provider_details.documentation_provider_distribution_path / "index.rst"
old_text = ""
if index_file_path.is_file():
old_text = index_file_path.read_text()
@@ -1208,8 +1215,6 @@ def update_changelog(
maybe_with_new_features=maybe_with_new_features,
with_min_airflow_version_bump=with_min_airflow_version_bump,
)
- get_console().print(f"\n[info]Update index.rst for {package_id}\n")
- _update_index_rst(jinja_context, package_id, provider_details.documentation_provider_distribution_path)
def _generate_get_provider_info_py(context: dict[str, Any], provider_details: ProviderPackageDetails):
diff --git a/dev/breeze/src/airflow_breeze/utils/packages.py b/dev/breeze/src/airflow_breeze/utils/packages.py
index f81645c7758e3..60dd862ec36f5 100644
--- a/dev/breeze/src/airflow_breeze/utils/packages.py
+++ b/dev/breeze/src/airflow_breeze/utils/packages.py
@@ -1241,8 +1241,8 @@ def _update_dependency_line_with_new_version(
new_constraint = f'"{provider_package_name}>={new_version}"'
updated_line = line.replace(old_constraint, new_constraint)
- # Remove the "# use next version" comment after upgrading
- updated_line = updated_line.replace(" # use next version", "")
+ # remove the comment starting with '# use next version' (and anything after it) and rstrip spaces
+ updated_line = re.sub(r"#\s*use next version.*$", "", updated_line).rstrip()
# Track the update
provider_id_short = pyproject_file.parent.relative_to(AIRFLOW_PROVIDERS_ROOT_PATH)
diff --git a/providers/atlassian/jira/docs/index.rst b/providers/atlassian/jira/docs/index.rst
index af54cf795dea0..d0dd6a78a95a8 100644
--- a/providers/atlassian/jira/docs/index.rst
+++ b/providers/atlassian/jira/docs/index.rst
@@ -93,7 +93,7 @@ The minimum Apache Airflow version supported by this provider distribution is ``
PIP package Version required
========================================== ==================
``apache-airflow`` ``>=2.11.0``
-``apache-airflow-providers-common-compat`` ``>=1.8.0``
+``apache-airflow-providers-common-compat`` ``>=1.10.1``
``apache-airflow-providers-http``
``atlassian-python-api`` ``>3.41.10``
========================================== ==================
diff --git a/providers/fab/docs/index.rst b/providers/fab/docs/index.rst
index 61e8b792026e9..c69c88b46f69c 100644
--- a/providers/fab/docs/index.rst
+++ b/providers/fab/docs/index.rst
@@ -150,5 +150,5 @@ Downloading official packages
You can download officially released packages and verify their checksums and signatures from the
`Official Apache Download site `_
-* `The apache-airflow-providers-fab 3.0.4 sdist package `_ (`asc `__, `sha512 `__)
-* `The apache-airflow-providers-fab 3.0.4 wheel package `_ (`asc `__, `sha512 `__)
+* `The apache-airflow-providers-fab 3.1.0 sdist package `_ (`asc `__, `sha512 `__)
+* `The apache-airflow-providers-fab 3.1.0 wheel package `_ (`asc `__, `sha512 `__)