aIbrahiim commented on code in PR #37685:
URL: https://github.com/apache/beam/pull/37685#discussion_r2843396557


##########
sdks/python/setup.py:
##########
@@ -541,6 +541,9 @@ def get_portability_package_data():
               # tensorflow-transform requires dill, but doesn't set dill as a
               # hard requirement in setup.py.
               'dill',
+              # keras deps namex/optree lack version bounds - pin to avoid 
resolver issues

Review Comment:
   I investigated the install failures and traced them to three main causes:
   
   Resolver backtracking: Pip 25.1/26.0.1 was hitting its resolver limit on the 
tensorflow keras  namex/optree chain amd since Keras doesnt pin namex/optree, 
adding version bounds reduces excessive backtracking
   
   Also NumPy/Pandas ABI mismatch when uv selected NumPy 2.x but Pandas 
expected 1.x the tests failed with ValueError numpy.dtype size changed so 
constraining NumPy to 1.x for Python 3.10–3.12 fixed this
   
   Also for Python 3.13 support NumPy 1.x doesnt support Python 3.13 so we 
require numpy>=2.1.0 for 3.13 via python_version markers
   
   And i switched to uv since its resolver handles this dependency tree more 
reliably as the namex/optree version ranges (instead of exact pins) provide 
enough structure without triggering deep backtracking



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