You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Eason09053360 (via GitHub)" <gi...@apache.org> on 2026/08/31 18:06:36 UTC
[PR] Stop airflow providers get --full mutating cached provider metadata [airflow]
Eason09053360 opened a new pull request, #72346:
URL: https://github.com/apache/airflow/pull/72346
`ProvidersManager` is a process-wide singleton, and its `providers` property hands
out the live `_provider_dict` without copying — so `ProviderInfo.data` is the cached
dict itself, not a copy.
`airflow providers get <name> --full` was assigning its de-RST'd description straight
back into that dict, so a command whose only job is to format data for display
permanently rewrote global provider metadata as a side effect. It now builds a copy
to render instead.
### How reachable is it?
Latent rather than user-visible, and worth being explicit about:
- the `airflow` CLI is a one-shot process — nothing reads the description again
before it exits
- the API server reads the same cache, but runs in a different process
- the two other in-tree readers (`providers_list` and the public API's provider
service) re-sanitize the description themselves, and `_remove_rst_syntax` is
idempotent for every description shipped today
Where it *is* reachable is a pytest process: the singleton persists across tests and
`cleanup_providers_manager` is opt-in rather than autouse, so a test exercising the
unmocked command would leak a sanitized description into the rest of the session. No
test does that today, which is why nothing has caught it.
### Test
`provider_command` was the only module under `airflow/cli/commands/` without a
matching test file, so the regression test starts one. It asserts both that the
rendered payload still has the RST stripped and that the source dict is untouched —
the second assertion is the one that fails without this change.
---
##### Was generative AI tooling used to co-author this PR?
- [X] Yes — Claude Code (Opus 5)
Generated-by: Claude Code (Opus 5) following [the guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)
--
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: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Stop airflow providers get --full mutating cached provider metadata [airflow]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #72346:
URL: https://github.com/apache/airflow/pull/72346#issuecomment-5560969098
### Backport successfully created: v3-3-test
Note: As of [Merging PRs targeted for Airflow 3.X](https://github.com/apache/airflow/blob/main/dev/README_AIRFLOW3_DEV.md#merging-prs-targeted-for-airflow-3x)
the committer who merges the PR is responsible for backporting the PRs that are bug fixes (generally speaking) to the maintenance branches.
In matter of doubt please ask in [#release-management](https://apache-airflow.slack.com/archives/C03G9H97MM2) Slack channel.
<table>
<tr>
<th>Status</th>
<th>Branch</th>
<th>Result</th>
</tr>
<tr>
<td>✅</td>
<td>v3-3-test</td>
<td><a href="https://github.com/apache/airflow/pull/72601"><img src="https://img.shields.io/badge/PR-72601-blue" alt="PR Link"></a></td>
</tr>
</table>
--
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: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Stop airflow providers get --full mutating cached provider metadata [airflow]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #72346:
URL: https://github.com/apache/airflow/pull/72346#issuecomment-5560966725
Hi maintainer, this PR was merged without a milestone set.
We've automatically set the milestone to **[Airflow 3.3.2](https://github.com/apache/airflow/milestone/150)** based on: backport label targeting v3-3-test
If this milestone is not correct, please update it to the appropriate milestone.
> This comment was generated by [Milestone Tag Assistant](https://github.com/apache/airflow/blob/main/.github/workflows/milestone-tag-assistant.yml).
--
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: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Stop airflow providers get --full mutating cached provider metadata [airflow]
Posted by "henry3260 (via GitHub)" <gi...@apache.org>.
henry3260 merged PR #72346:
URL: https://github.com/apache/airflow/pull/72346
--
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: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org