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

shahar1 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 7e7e4a95e0c Add update-providers-next-version step to provider docs 
skill (#68739)
7e7e4a95e0c is described below

commit 7e7e4a95e0c723302632240227fbecdcbe7d7fb8
Author: Shahar Epstein <[email protected]>
AuthorDate: Fri Jun 19 09:29:25 2026 +0300

    Add update-providers-next-version step to provider docs skill (#68739)
    
    * Add update-providers-next-version step to provider docs skill
    
    The prepare-providers-documentation skill stopped after regenerating the
    build templates and handed back to the regular release workflow, leaving
    'breeze release-management update-providers-next-version' implicit. That
    step resolves inter-provider dependencies pinned with '# use next version'
    to the just-released versions and must run before the PR is opened; missing
    it ships the wave with stale lower bounds and needs a follow-up PR to fix.
    Make the skill run it as an explicit phase and check for it during 
validation.
    
    * Document the next-version step in the provider release guide
    
    Reflect in README_RELEASE_PROVIDERS.md that the 
prepare-providers-documentation
    skill now runs update-providers-next-version itself, and that an incremental
    update which bumps a version must re-run that step on the rebased branch —
    for both the skill and the interactive breeze flows.
---
 .../prepare-providers-documentation/SKILL.md       | 34 +++++++++++++++++++++-
 dev/README_RELEASE_PROVIDERS.md                    | 23 +++++++++++++++
 2 files changed, 56 insertions(+), 1 deletion(-)

diff --git a/.agents/skills/prepare-providers-documentation/SKILL.md 
b/.agents/skills/prepare-providers-documentation/SKILL.md
index fb5602f894a..d3c90f546a7 100644
--- a/.agents/skills/prepare-providers-documentation/SKILL.md
+++ b/.agents/skills/prepare-providers-documentation/SKILL.md
@@ -487,6 +487,30 @@ new versions you just wrote. It will not touch 
`changelog.rst`.
 > `airflow-providers-commits` directive). It will be regenerated on the
 > next full release. No action needed here.
 
+#### 4d. Resolve `# use next version` inter-provider pins
+
+Contributors can defer an inter-provider dependency bump by pinning it in
+`pyproject.toml` with a trailing `# use next version` comment, instead of
+hard-coding a version that does not exist yet. Now that the versions are
+bumped, resolve those pins:
+
+```bash
+breeze release-management update-providers-next-version
+```
+
+This rewrites every `# use next version` dependency to the just-bumped
+version of the referenced provider and removes the comment.
+
+> [!IMPORTANT]
+> **Run this every time, before opening the PR — even when you believe no
+> provider uses the comment** (the command is a safe no-op when none do).
+> Skipping it ships the wave with stale lower bounds on inter-provider
+> dependencies; once the PR is merged the only remedy is a separate
+> follow-up PR. This is the "Update versions of dependent providers to the
+> next version" step in `dev/README_RELEASE_PROVIDERS.md` — it lives between
+> doc preparation and PR creation, so it is easy to forget when the skill
+> hands back to the regular release workflow.
+
 ### Phase 5 — Validate
 
 Run the same checks the release manager would run:
@@ -506,11 +530,14 @@ provider-by-provider:
 
 - Confirm the version in `provider.yaml` matches the bump rule.
 - Confirm `changelog.rst` has the right sections populated.
+- Confirm Phase 4d ran: no `# use next version` comment remains where the
+  referenced provider was bumped in this wave.
 - Flag anything where Phase 3.5 had to escalate, so the RM can double-check.
 
 Stop here. Do not commit, do not push — the release manager opens the PR
 themselves following the regular release workflow in
-`dev/README_RELEASE_PROVIDERS.md`.
+`dev/README_RELEASE_PROVIDERS.md`. Make sure Phase 4d
+(`update-providers-next-version`) has been run before that PR is opened.
 
 ---
 
@@ -652,6 +679,11 @@ no leftover "Please review …" markers from a prior 
interactive
 incremental flow before invoking this skill), remove them as part of the
 final pass. Then walk the diff with the release manager.
 
+If the incremental run bumped a provider to a *new* version (Incremental
+Phase 3.5), re-run Phase 4d (`update-providers-next-version`) as well — a
+`# use next version` pin on that provider must resolve to the freshly
+bumped version before the rebased PR is pushed.
+
 ---
 
 ## Cross-Cutting Rules
diff --git a/dev/README_RELEASE_PROVIDERS.md b/dev/README_RELEASE_PROVIDERS.md
index 36841800f72..d958fc68a08 100644
--- a/dev/README_RELEASE_PROVIDERS.md
+++ b/dev/README_RELEASE_PROVIDERS.md
@@ -282,6 +282,10 @@ uncertain or major-bump cases with you, and application 
via direct edits to `pro
 (`breeze release-management prepare-provider-documentation 
--reapply-templates-only`) so the skill
 stays consistent with the existing tooling.
 
+The skill also runs the [Update versions of dependent providers to the next
+version](#update-versions-of-dependent-providers-to-the-next-version) step for 
you, so you do not
+need to run that command separately when using the skill.
+
 If you set ``DISTRIBUTIONS_LIST``, the skill scopes itself to that subset 
automatically.
 
 The skill (and the underlying breeze tooling) determines the new version of 
provider as follows:
@@ -323,6 +327,12 @@ removed.
 breeze release-management update-providers-next-version
 ```
 
+> [!NOTE]
+> The `prepare-providers-documentation` skill runs this command automatically 
as part of its
+> flow, so you only need to run it by hand when you prepared the documentation 
with the
+> interactive breeze command instead of the skill. Run it regardless of 
whether you think any
+> provider uses the `# use next version` comment — the command is a no-op when 
none do.
+
 ## Create a PR with the changes
 
 Make sure to set labels: `allow provider dependency bump` and `skip common 
compat check` to the PR,
@@ -346,6 +356,13 @@ This usually takes some time, so before merging you need 
to rebase it to latest
 are no new, incremental updates (one or two merged commits in the meantime). 
If there are - you still
 have a chance to incorporate them via the **incremental update** flow.
 
+> [!IMPORTANT]
+> Whenever an incremental update bumps a provider's version, the [Update 
versions of dependent
+> providers to the next 
version](#update-versions-of-dependent-providers-to-the-next-version) step
+> must be applied **again** on the rebased branch — regardless of whether you 
prepared the docs with
+> the skill or the interactive breeze command. The skill re-runs it 
automatically; with the
+> interactive `--incremental-update` flow you must run the command yourself.
+
 The recommended way is to invoke the same `prepare-providers-documentation` 
skill — it has a dedicated
 **Incremental Update** section that detects which commits on the rebased 
branch are not yet referenced
 in the existing `changelog.rst`, classifies only those new commits with the 
same per-PR sub-agent
@@ -365,6 +382,9 @@ recognizes the incremental scenario and walks through:
 4. Confirming any version-bump escalation with you explicitly before applying.
 5. Inserting the new entries under the correct sections of the existing 
latest-version block.
 6. Validating that no leftover `Please review` markers remain.
+7. Re-running [Update versions of dependent providers to the next
+   version](#update-versions-of-dependent-providers-to-the-next-version) when 
an incremental
+   bump raised a provider's version.
 
 If you set ``DISTRIBUTIONS_LIST`` the incremental flow honors that scope 
automatically.
 
@@ -398,6 +418,9 @@ changelogs. If there are, you need to add them to PR and 
classify the changes ma
 * remove the "Please review" comments generated by the incremental update 
process
 * if needed adjust version of provider - in changelog and provider.yaml, in 
case the new
   change changes classification of the upgrade (patchlevel/minor/major)
+* if a version was bumped, re-run [Update versions of dependent providers to 
the next
+  version](#update-versions-of-dependent-providers-to-the-next-version) (the 
interactive
+  `--incremental-update` command does not do it for you)
 
 In case you want to also release a pre-installed provider that is in 
``not-ready`` state (i.e. when
 you want to release it before you switch their state to ``ready``), you need 
to pass

Reply via email to