bugraoz93 commented on PR #61822: URL: https://github.com/apache/airflow/pull/61822#issuecomment-3894196196
Finally, I moved the tests to main :D Normally, PR is ready and working. https://github.com/apache/airflow/actions/runs/21968985699/job/63466790648?pr=61822 Only failed for the older version. I think Airflow 3.1.7 and the main ctl are not compatible. After this is merged, we will catch these kinds of things earlier in the process. ``` FAILED airflow-ctl-tests/tests/airflowctl_tests/test_airflowctl_commands.py::test_airflowctl_commands[connections update] - AssertionError: ❌ Output contained unexpected text for command 'airflowctl connections update --connection-id=test_con --conn-type=postgres' Matched error pattern: Server error Output: Debug mode is enabled. Please be aware that your credentials are not secure. Please unset AIRFLOW_CLI_DEBUG_MODE or set it to false. 2026-02-13 00:14:18 [warning ] Server error [airflowctl.api.client] extra={'detail': [{'type': 'extra_forbidden', 'loc': ['body', 'team_name'], 'msg': 'Extra inputs are not permitted', 'input': None}]} Server response error: Client error message: {'detail': [{'type': 'extra_forbidden', 'loc': ['body', 'team_name'], 'msg': 'Extra inputs are not permitted', 'input': None}]} Client error, Please check the command and its parameters. If you need help, run the command with --help. assert not 'Server error' ``` These changes made me realise I overlooked the part of adding a new field in the datamodels, which is not breaking if you send the old request from the user perspective. That is not the case if you send the new request (datamodel in main) to the old Pydantic model (v3-1-test API datamodel), which is not there. So, in main, we have some breaking changes we need to handle. The old version of airflowctl is compatible with the 3.1.7 version since we haven't backported any changes. I will check if I can fix the backward compatibility easily because it looks a bit tricky. I have an idea to get the env var on Airflow version and keep both versions of the datamodels and switch accordingly. This will make it compatible with the old version. The tricky parts are generating the datamodel from another branch, but that should be possible. I may need to reschedule the release a week or two if I cannot make breaking changes compatible with the older version tomorrow :( Or we can accept the breaking part since we are still in 0.1.x, which I would still be on the side of waiting a week or two to fix this, but on the other hand, features are waiting to be released. What do you think, @potiuk? -- 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]
