jscheffl opened a new pull request, #57717:
URL: https://github.com/apache/airflow/pull/57717

   closes: #55841
   related: #57555 #49446
   
   Sorry that I was not actively enough paying attention that the contributed 
mocking of provider forms w/o Fab was not working. I _thought_ it was fixed by 
#49446 and did not test explicitly myself. Raising awareness in the bug #55841 
now made me a follow-up fix.
   
   This PR reverts mostly the changes made by #49446 as the original code was 
"almost" working, just did not consider that mocking the WTForms and FAB 
classes only works if the modules are really installed. The mock is now 
extended to mock the modules to tell the system they are available before 
mocking. If installed just mocks will be applied to load fields, if WTForms, 
FAB and flask_babel are not installed the system is patched to assume they are 
existing.
   
   How to test the fix:
   Best Option: Patch the single file into an installation and check if it is 
working
   Alternative:
   - Start based on this branch via `breeze start-airflow --python 3.12 
--load-example-dags --backend postgres --executor LocalExecutor --answer y` and 
then log on to the UI. To to admin -> connections and see all is working. No 
surprise FAB is installed per default. Then log out and stop API server in the 
tmux panel. Then remove the FAB provider and tooling via `uv pip uninstall 
WTForms apache-airflow-providers-fab flask_appbuilder flask_babel` in the panel 
where API server is stopped. Restart API Server and logon the UI again. Double 
check that on Admin->Providers the FAB provider is non existing. Then check 
Admin->Connections and Add a connection if fields are populated, e.g. from 
Airbyte


-- 
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]

Reply via email to