kubeflow / fairing

Python SDK for building, training, and deploying ML models
Apache License 2.0
337 stars 144 forks source link

requirements.txt has Tornado version conflict with Fairing 0.5.3 #369

Open jdumm opened 5 years ago

jdumm commented 5 years ago

/kind bug

What steps did you take and what happened:

I did a fresh install of Kubeflow and then Fairing on a GCP hosted notebook server with a default Docker image. I tried running the example notebook fairing/examples/prediction/xgboost-high-level-apis.ipynb/xgboost-high-level-apis.ipynb. During the !pip install -r requirements.txt, I get two conflicts, and the tornado conflict leads to a runtime error later:

jaeger-client 3.13.0 has requirement tornado<5,>=4.3, but you'll have tornado 6.0.3 which is incompatible. fairing 0.5.3 has requirement tornado<6.0.0,>=5.1.1, but you'll have tornado 6.0.3 which is incompatible.

For more specifics, I was following the tutorial for installing Kubeflow and running a first example here: https://www.kubeflow.org/docs/fairing/install-fairing/#set-up-kubeflow-fairing-in-a-hosted-jupyter-notebook

And then here: https://www.kubeflow.org/docs/fairing/gcp/tutorials/gcp-kubeflow-notebook/

**UPDATE: If I skip the notebook cell that runs the local requirements file, I'm actually able to proceed a little further. Maybe the requirements file needs to be changed/updated/removed? Though I do end up getting another error downstream from BackendClass(build_context_source=BuildContext):

TypeError: init() got an unexpected keyword argument 'build_context_source'

The version of BackendClass that I have only has a namespace keyword arg. Maybe the notebook needs more updating? **

What did you expect to happen:

I expected the example notebook to run without error, but the requirements.txt file has an unresolvable conflict with requirements of fairing itself.

Anything else you would like to add: I'll maybe try using an older version of Fairing?

Environment:

but from pip output above we can see it's v0.5.3.

NOTE: If you are using fair from master, please provide us the git commit hash.

issue-label-bot[bot] commented 5 years ago

Issue-Label Bot is automatically applying the label kind/bug to this issue, with a confidence of 0.97. Please mark this comment with :thumbsup: or :thumbsdown: to give our bot feedback!

Links: app homepage, dashboard and code for this bot.

ycheng commented 5 years ago

prediction need seldon_core => seldon_core-0.4.0.dist-info/METADATA:Requires-Dist: jaeger-client (==3.13.0) => jaeger-client-3.13.0/setup.py:'tornado>=4.3,<5'

jaeger-client also use tchannel that also need tornado < 5 jaeger-client require opentracing-instrumentation and it also need tornado<6

while fairing need tornado>=6.0.1

it feels like lots of work. wander how someone can run it in the first place.

jdumm commented 5 years ago

I'm working on a Kubeflow proof of concept -- is there any way forward or around this? Maybe this example notebook works with an older version of Fairing?

jinchihe commented 4 years ago

@jdumm I think that's no impact, just go ahead for trying kubeflow fairing please. :-)

fenglixa commented 4 years ago

jaeger-client removed Tornado upper boundary in master branch, issue will be addressed with jaeger-client next release. jaegertracing/jaeger-client-python/pull/262

jtfogarty commented 4 years ago

/area engprod /priority p2