Opened 5 years ago
Closed 3 years ago
#60452 closed request (fixed)
Please update or make make a new py-awscli port for awscli v2
Reported by: | gittes (Christopher Stewart) | Owned by: | dgilman (David Gilman) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | judaew (Vadym-Valdis Yudaiev) | |
Port: | py-awscli |
Description
Hello,
I would like to request, please, to update the port py-awscli or make a new port to support the new version 2 releases of awscli at version version 2.0.12. It seems v1 and v2 cannot coexist so maybe it should still be unfortunately a single port to maintain.
The version 2 branch of awscli has been out for a few months now and the latest version just came out:
https://github.com/aws/aws-cli/blob/2.0.12/CHANGELOG.rst
It looks like it has it's own embedded python for the MacOS pkg official download but there are instruction to build the "CLI Dev Version" that involves installing requirements.txt:
https://github.com/aws/aws-cli/blob/v2/README.rst#cli-dev-version
Here's the official MacOS pkg install instructions and cliv2 migration documentation for reference:
https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html
https://docs.aws.amazon.com/cli/latest/userguide/cliv2-migration.html
Homebrew seems to have v1 and v2 separated and blindly just follows those instructions by gladly doing "pip install -r requirements.txt" in a common python3 virtualenv so they don't have to worry about defining python requirements:
https://github.com/Homebrew/homebrew-core/blob/master/Formula/awscli.rb
requirements.txt:
tox>=2.3.1,<3.0.0 wheel==0.24.0 ruamel.yaml>=0.15.0,<0.16.0 -r requirements-test.txt -r requirements-build.txt https://github.com/boto/botocore/zipball/v2#egg=botocore
requirements-test.txt:
jsonschema==2.5.1 nose==1.3.7 mock==1.3.0
requirements-build.txt:
# Requirements we need to run our build jobs for the installers. # We create the separation for cases where we're doing installation # from a local dependency directory instead of requirements.txt. cryptography==2.8 PyInstaller==3.5
I didn't do much digging but it seems the port was updated in March 22 of this year for a minor version that was not even the latest of the v1.x branch so maybe that should at least be bumped in the meantime:
https://github.com/macports/macports-ports/commit/cc27020ec21e875dc928234c51b509383b549784
Newest version of v1 branch is 1.18.55:
https://github.com/aws/aws-cli/blob/develop/CHANGELOG.rst
I'll make another ticket to bump v1 in the meantime.
Thank you in advance,
Chris
Change History (7)
comment:1 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Keywords: | awscli removed |
---|
comment:2 Changed 4 years ago by judaew (Vadym-Valdis Yudaiev)
Cc: | judaew added |
---|
comment:3 Changed 4 years ago by judaew (Vadym-Valdis Yudaiev)
comment:4 Changed 4 years ago by Tatsh (Andrew Udvare)
This is going to be a mess to support now that Amazon really seems to hate PyPI for no good reason. They have now made botocore v2 required and that won't go on PyPI either.
https://bugs.gentoo.org/710434#c4
Best option would be to treat it like a binary as we can't trust that they won't release 2.1 rewritten in Rust tomorrow.
comment:5 Changed 3 years ago by imgx64
The AWS CLI team has posted a proposal for releasing source tarballs for v2 that can be built and installed using ./configure && make && make install
. This will make packaging it much easier.
comment:6 Changed 3 years ago by judaew (Vadym-Valdis Yudaiev)
Unfortunately, awscli2
still relies on beta/dev or outdated dependencies. I have no idea how and why to create a port for an awscli2
with such versions of the dependencies:
[metadata] requires_dist = botocore==2.0.0dev146 colorama>=0.2.5,<0.4.4 docutils>=0.10,<0.16 cryptography>=3.3.2,<3.4.0 ruamel.yaml>=0.15.0,<0.16.0 s3transfer>=0.4.2,<0.5.0 wcwidth<0.2.0 prompt-toolkit>=2.0.0,<3.0.0 distro>=1.5.0,<1.6.0 awscrt==0.11.24
Here are the current versions of these dependencies in MacPorts:
$ port info --version py-botocore py-docutils py-cryptography py-wcwidth py-prompt_toolkit py-botocore -- version: 1.21.42 py-docutils -- version: 0.17.1 py-cryptography -- version: 3.4.8 py-wcwidth -- version: 0.2.5 py-prompt_toolkit -- version: 3.0.20
comment:7 Changed 3 years ago by dgilman (David Gilman)
Owner: | set to dgilman |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Outdated Python dependencies make it difficult to build AWS CLI 2 package for MacPorts. That is why the first version is still supported, more details here: https://github.com/aws/aws-cli/issues/4947#issuecomment-586046886
I think the user will be easier to install the pre-compiled package from the official site. At least until the dependencies situation improves.