potiuk commented on PR #22740:
URL: https://github.com/apache/airflow/pull/22740#issuecomment-1090137370

   Actually I added even more - now you do not have to even run the `reinstall` 
manually. If you will answer yes, Breeze will re-install itself from the right 
place automaticall.
   
   @uranusjr @o-nikolas  - following our earlier dscussions - I think it 
strikes the right balance between the "standard" way of managing packages with 
pipx. not having to create a separate virtualenv but also making sure that user 
will not be surprised by some development changes by switching to a different 
source tree.
   
   cc: @Bowrna  @edithturn 
   
   Right now we have those things in place:
   
   1) Everything works smoothly (and from PATH) of the user when no 
setup/pyproject changed (latest sources will be used automatically via 
--editable flag).
   
   2) We have now `selfupgrade` command in Breeze (it runs the right `pipx 
install` command behind the scenes)
   
   
![image](https://user-images.githubusercontent.com/595491/161957741-9fc32406-e3db-4541-a1db-a188b6419d38.png)
   
   3) If user installls airflow in non-editable mode, it will refuse to start 
(unless running help of selfupgrade)
   
   
![image](https://user-images.githubusercontent.com/595491/161957610-84218337-7e88-4e70-bdc4-7fbbe2ead6c0.png)
   
   4) If there are changes to the setup/pyproject files user will be warned and 
instructed how to reinstall and will even be offerent to reinstall breeze by 
pressing y within 3 seconds (it will proceed with the installed version if not 
answered)
   
   
![image](https://user-images.githubusercontent.com/595491/161958010-eeb666b1-a1d7-4f97-b624-ccc9d5d792ea.png)
   
   5) In cae we  run Breeze2 from different sources of Airflow we will also get 
warning - explaining that Breeze is installed from elsewhere and providing 
instructions and offering the user to reinstall Breeze from the current sources
   
   
![image](https://user-images.githubusercontent.com/595491/161960355-0a08328a-069b-4eee-ab4f-43cf33b105cf.png)
   
   
   Also all those are not checked and warning is not printed if:
   
   * Breeze2 is run asautocomplete
   * Breeze2 is run with `--help` command
   * Breeze2 is run with `selfupgrade` command already
   
   That allows to get autocomplete, get help  on commands without extra 
questions/warnings and selfupgrade airflow without recurrence :).
   
   I think that covers all the cases  I can think of :)


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