-
Notifications
You must be signed in to change notification settings - Fork 414
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
[Dependency] Remove AWS dependency by default #2841
Conversation
Shall we list out the pros and cons of two options and discuss:
|
Make Pro:
Con:
Please feel free to add any other points you find that is important. : ) |
@dongreenberg - would be awesome if you could confirm this PR solved #2810 for you! |
Confirmed!! Thank you guys!! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @dongreenberg @Michaelvll - quick comments and otherwise LGTM.
…-aws-dependency-by-default
…-aws-dependency-by-default
…-aws-dependency-by-default
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @Michaelvll. Pushed some finetuning:
- Made the action sentence (choose your cloud) stand out
- A bit of rewording
- Add Kubernetes in sky check output
Wdyt?
Looks great! Thanks for updating it. I added the python requirement for Apple silicon back to the sentence above. Is that still valid? |
@@ -5,7 +5,7 @@ Installation | |||
|
|||
.. note:: | |||
|
|||
For Macs, macOS >= 10.15 is required to install SkyPilot. Apple Silicon-based devices (e.g. Apple M1) must run :code:`pip uninstall grpcio; conda install -c conda-forge grpcio=1.43.0` prior to installing SkyPilot. | |||
For Macs, macOS >= 10.15 is required to install SkyPilot. Apple Silicon-based devices (e.g. Apple M1) must use :code:`python>=3.8` and run :code:`pip uninstall grpcio; conda install -c conda-forge grpcio=1.43.0` prior to installing SkyPilot. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm on my M1 Mac I've been using 3.7 until recently with no problems?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, interesting! Let me revert it then. Thanks for confirming!
Heya @Michaelvll thanks for addressing this. I wonder if deprecation of awscli v1 would be in the pipeline, in which case awscli could also be removed from aws_dependencies.
I suppose this only applies for those using awscli v1? I do have AWS credentials already setup via the latest Is it worth to separate awscli as a separate extra? Either way, there's now no conflict with my other projects🙏 when listing Also to note only Not sure if the above necessitates it's own issue/PR to address pragmatically. But keen to here your thoughts on this, and look forward to the next release :) |
Thanks for the comment @sqr00t! I am slightly leaning towards having the awscli in the setup, so that the user do not have to go through another instruction for installing the dependencies required for AWS. Having another extra also seems complicating the installation processes a bit. Currently, seems you could install the raw skypilot and install For the check of boto3 installation, we have included the checks in Line 451 in d6f57cc
If the issue still bothers, please feel free to file another issue so we can better keep track of it. : ) |
Thanks for your quick response! I'll start a separate issue to address a small bug related to checking imports. Also thanks for linking the issue on AWS's decision not to release awscliv2 on pypi, the main pain point that I've encounted is:
To add In dev environments, some users that are less focused on engineering (i.e. Statistician-oriented Data Scientists) would prefer to minimise context switching when they want to use Skypilot, i.e. not even needing to
I think there may be some exploration in the future to integrate tooling in Go or Rust. There are already more performant tools than awscli for syncing objects, like s5cmd (although benchmarks will depend on use-case). |
Thanks for the excellent feedback @sqr00t!
That's great to hear. Curious if you use other parts of SkyPilot (e.g., managed spot?). We'd love to chat to understand how to support your use cases better; please feel free to join our Slack if you'd like. Cheers. |
Fixes #2810
This PR removes AWS dependency from the default installation dependency.
Reason:
colorama < 0.4.5
which is quite old and can conflict with users' existing environment.sky show-gpus
should be available without awscli installed.Tested (run the relevant ones):
bash format.sh
sky show-gpus
withoutaws
dependencies installedpytest tests/test_smoke.py
pytest tests/test_smoke.py::test_fill_in_the_name
bash tests/backward_comaptibility_tests.sh