potiuk edited a comment on issue #17453:
URL: https://github.com/apache/airflow/issues/17453#issuecomment-894623948


   Also just one point - conflicting dependencies are not and will never be as 
huge problem as you might think. I made sure of it when designing the whole 
system of constraints and automated upgrades. I thought and experimented a lot 
with that over the last few years and my experiences from last few years are 
rather positive here.
   
   The 'general' approach of almost all active direct dependencies we use is 
that they are updating dependencies pretty fast and by simply updating to 
latest versions of dependent packages solves most of the problems. We also 
advise all our users to update to latest versions of providers when they can 
(also it is kind of given when we release image and constraints we always use 
latest released versions of providers and dependencies that work). 
   
   We are continuously bumping the constraints with 'eager' upgrade (they are 
updated after all tests pass). 
   
   Also the way we approach our dependencies in setup.py makes it quite 
difficult to get into conflict situation when you look closer  - we rarely 
update minimum versions (mainly when we handle a CVE or incompatible change in 
implementing certain APIs).
   
   We also usually do not add upper-bounds for our dependencies - unless we 
know they are breaking something. On one hand it is risky (but our constraints 
and the fact that we only upgrade after successful tests mitigate the risk) but 
also handle the situations when even major upgrades of dependencies work 
without any fixes. Not everyone uses SemVer, we cannot rely on that, so we 
actually will never know if things are going to break. Constraints and making 
them essential while installing airflow solve the problem very nicely.
   
   This actually makes it pretty possible to keep it all working and conflicts 
are far and few between (and usually can be solved with proper constraints use).


-- 
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-unsubscr...@airflow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to