Certain aspects of Beam functionality depend on actively evolving libraries, for example RunInference model handlers might require dependencies like PyTorch or Tensorflow.
We should document Beam policy on compatibility with with third-party libraries, which are not in Beam's dependency chain already.
Testing the in-between versions can be done as needed. For example, we test against all supported versions of Pyarrow and Pandas, but those versions are also in our dependency chain already so we have requirements spelled-out. Dependencies like Tensorflow, on the other hand, are optional and not part of 'extras'.
Issue Priority
Priority: 2 (default / most normal work should be filed as P2)
What needs to happen?
Certain aspects of Beam functionality depend on actively evolving libraries, for example RunInference model handlers might require dependencies like PyTorch or Tensorflow.
We should document Beam policy on compatibility with with third-party libraries, which are not in Beam's dependency chain already.
Then, we should make sure our compatibility suites test at least against the lowest supported version, and the highest supported version: https://github.com/apache/beam/blob/master/.github/workflows/beam_PreCommit_Python_Coverage.yml
Testing the in-between versions can be done as needed. For example, we test against all supported versions of Pyarrow and Pandas, but those versions are also in our dependency chain already so we have requirements spelled-out. Dependencies like Tensorflow, on the other hand, are optional and not part of 'extras'.
Issue Priority
Priority: 2 (default / most normal work should be filed as P2)
Issue Components