rjgoyln opened a new pull request, #70940:
URL: https://github.com/apache/airflow/pull/70940
`airflowctl config lint` declared `--section`, `--option`,
`--ignore-section` and
`--ignore-option` as plain strings, so the membership tests in the command
body
compared a config name against a **string** rather than against a list. Any
name
that happened to be a prefix of what the user typed slipped through:
```
$ airflowctl config lint --option auth_backends
- `auth_backend` configuration parameter moved from `api` ... <-- false
positive
- `auth_backends` configuration parameter moved from `api` ...
```
Five such pairs exist in `CONFIGS_CHANGES` today:
`auth_backend`/`auth_backends`,
`auth_rate_limit`/`auth_rate_limited`,
`sensitive_variable_fields`/`hide_sensitive_variable_fields`,
`sql_alchemy_conn`/`sql_alchemy_connect_args`, and
`worker_pods_pending_timeout`/`worker_pods_pending_timeout_check_interval`.
The mirror case on `--ignore-option` is the more damaging one: it silently
suppressed warnings the user still wanted to see.
Two related defects fall out of the same root cause:
- The comma-separated lists the docstring has always advertised
(`--section core,webserver`) only *appeared* to work, as a side effect of
substring matching. There was never a `.split(",")`.
- Verbose output joined the same strings character by character, so
`--ignore-section api --verbose` printed `Ignored sections: a, p, i`.
`airflow-core` already parses its equivalent four arguments with
`string_list_type`. That helper was defined in `airflowctl/ctl/cli_config.py`
but left unused; wiring it up aligns the two CLIs and makes `in` list
membership.
##### Behaviour change
Prefix abbreviations such as `--section co` matching `core` stop working.
That
was never documented — only the comma-list form was — so this is a bug fix
rather than a removal of intended behaviour.
---
##### 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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]