zenml icon indicating copy to clipboard operation
zenml copied to clipboard

TF tests + various integration (un)install improvements

Open avishniakov opened this issue 8 months ago • 1 comments

Describe changes

Not an actual fix for 3.8 and TF, but:

  • I allowed all runtimes for tests/integration/examples/test_tensorflow.py except Ubuntu/3.8 only (before was banned for 3.8,3.10 and 3.11 on all OS)
  • Allowed tests/integration/examples/test_huggingface.py::test_sequence_classification for 3.8, since it works fine
  • Allowed tests/integration/examples/test_huggingface.py:: test_token_classification for all versions/OS, since it works fine, but there was a bug and this test was completely skipped
  • Throw a warning for users on 3.8 using Tensorflow integration

Basically, the fix is simple - go above 3.8.

Completely Side-Effect produced by review comments:

  • I added a new REQUIREMENTS_IGNORED_ON_UNINSTALL integrations class setting, so we can skip some requirements on uninstall, like pydantic in mlflow, typing-extensions in tensorflow and so on. To ensure that we don't break other integrations by uninstalling others. Unfortunately, it will mean that some will be not uninstallable, say Kubernetes is used in many places, but none is uninstalling it in new behavior to protect others. Sahll we make it better and lookup for other installed integrations for intersections and skip ignore, in case no harm to others, or this is good enough? I personally tend to the latest.

Pre-requisites

Please ensure you have done the following:

  • [ ] I have read the CONTRIBUTING.md document.
  • [ ] If my change requires a change to docs, I have updated the documentation accordingly.
  • [ ] I have added tests to cover my changes.
  • [ ] I have based my new branch on develop and the open PR is targeting develop. If your branch wasn't based on develop read Contribution guide on rebasing branch to develop.
  • [ ] If my changes require changes to the dashboard, these changes are communicated/requested.

Types of changes

  • [ ] Bug fix (non-breaking change which fixes an issue)
  • [ ] New feature (non-breaking change which adds functionality)
  • [ ] Breaking change (fix or feature that would cause existing functionality to change)
  • [ ] Other (add details above)

avishniakov avatar Jun 18 '24 11:06 avishniakov