Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make etcd3 & python-consul2 soft dependencies #127

Merged
merged 2 commits into from
May 10, 2021
Merged

Make etcd3 & python-consul2 soft dependencies #127

merged 2 commits into from
May 10, 2021

Conversation

yuvipanda
Copy link
Contributor

Fixes #125

TODO:

  • Update docs

@welcome
Copy link

welcome bot commented Mar 28, 2021

Thanks for submitting your first pull request! You are awesome! 🤗

If you haven't done so already, check out Jupyter's Code of Conduct. Also, please make sure you followed the pull request template, as this will help us review your contribution more quickly.
welcome
You can meet the other Jovyans by joining our Discourse forum. There is also a intro thread there where you can stop by and say Hi! 👋

Welcome to the Jupyter community! 🎉

Copy link
Member

@GeorgianaElena GeorgianaElena left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not installing these deps for TraefikToml seems like a good idea 👍 Thanks @yuvipanda!

@@ -1,7 +1,5 @@
aiohttp
escapism
etcd3
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you want to add these (etcd3 and python-consul2) to dev-requirements.txt instead, to fix the tests?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's not a bad idea at all! This is a breaking change tho, so we should announce widely.

I also want to test that the toml provider works without these libraries. How do you think we can do that?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't notice any toml proxy test failing in https://github.com/jupyterhub/traefik-proxy/pull/127/checks?check_run_id=2211574725 ❤️ Only the consul and etcd ones.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right. But in the future, if we accidentally introduce a change that automatically imports etcd3 or python-consul2, the tests in this repo won't catch it! But for an end user who doesn't have these packages installed but only wants to use the TOML proxy, it will fail. So I want to find a way to test that the toml proxy works even without these packages installed.

@dolfinus
Copy link
Contributor

Hello.

Any updates here?

@GeorgianaElena
Copy link
Member

Thanks for the ping @dolfinus! This is ready to go, we just need to document the change somewhere visible and add a test to ensure we won't introduce any change in the future that might break TomlProxy when etcd3 and consul clients aren't installed (see @yuvipanda's comment above).

I'll open a new issue about this to un-block this PR.

@GeorgianaElena GeorgianaElena merged commit d8d729c into jupyterhub:master May 10, 2021
@dolfinus
Copy link
Contributor

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Make etcd3 and consul libraries opt-in
4 participants