Open buroa opened 5 years ago
Thanks for reporting! We usually spend very little time in specific modules, so unless the original Author of the module or someone who has recently worked in the module notices the documentation in the top of the page, its easy to not notice those things. There are probably many modules that need updates like these. 😄
If you'd like, you can always open a PR to address this!
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
If this issue is closed prematurely, please leave a comment and we will gladly reopen the issue.
Thank you for updating this issue. It is no longer marked as stale.
Adding to what @xeacott said, this looks like an issue where an audit by a contributor to boto*
dependent code may need to take place.
# Checking for modules referencing boto versions
grep -R 'versions.check_boto_reqs('
Output:
salt/modules/boto_s3.py: return salt.utils.versions.check_boto_reqs(boto3_ver="1.2.1")
salt/modules/boto_iam.py: return salt.utils.versions.check_boto_reqs(check_boto3=False)
salt/modules/boto_route53.py: return salt.utils.versions.check_boto_reqs(boto_ver="2.35.0", check_boto3=False)
salt/modules/boto_elbv2.py: has_boto_reqs = salt.utils.versions.check_boto_reqs()
salt/modules/boto_cloudwatch_event.py: return salt.utils.versions.check_boto_reqs()
salt/modules/boto_kinesis.py: has_boto_reqs = salt.utils.versions.check_boto_reqs()
salt/modules/boto_lambda.py: return salt.utils.versions.check_boto_reqs(
salt/modules/boto_sqs.py: has_boto_reqs = salt.utils.versions.check_boto_reqs()
salt/modules/boto_cfn.py: return salt.utils.versions.check_boto_reqs(check_boto3=False)
salt/modules/boto_efs.py: return salt.utils.versions.check_boto_reqs(boto3_ver="1.0.0", check_boto=False)
salt/modules/boto_dynamodb.py: has_boto_reqs = salt.utils.versions.check_boto_reqs(check_boto3=False)
salt/modules/boto_cloudfront.py: has_boto_reqs = salt.utils.versions.check_boto_reqs()
salt/modules/boto_elasticache.py: has_boto_reqs = salt.utils.versions.check_boto_reqs(check_boto3=False)
salt/modules/boto_ssm.py: has_boto_reqs = salt.utils.versions.check_boto_reqs()
salt/modules/boto_secgroup.py: has_boto_reqs = salt.utils.versions.check_boto_reqs(
salt/modules/boto_rds.py: return salt.utils.versions.check_boto_reqs(boto3_ver="1.3.1")
salt/modules/boto_apigateway.py: return salt.utils.versions.check_boto_reqs(
salt/modules/boto_s3_bucket.py: return salt.utils.versions.check_boto_reqs(boto3_ver="1.2.1")
salt/modules/boto3_sns.py: has_boto_reqs = salt.utils.versions.check_boto_reqs()
salt/modules/boto_elb.py: has_boto_reqs = salt.utils.versions.check_boto_reqs(
salt/modules/boto3_elasticache.py: return salt.utils.versions.check_boto_reqs()
salt/modules/boto_asg.py: has_boto_reqs = salt.utils.versions.check_boto_reqs()
salt/modules/boto_cloudwatch.py: has_boto_reqs = salt.utils.versions.check_boto_reqs(check_boto3=False)
salt/modules/boto_elasticsearch_domain.py: return salt.utils.versions.check_boto_reqs(boto_ver="2.8.0", boto3_ver="1.4.0")
salt/modules/boto_sns.py: has_boto_reqs = salt.utils.versions.check_boto_reqs(check_boto3=False)
salt/modules/boto3_route53.py: return salt.utils.versions.check_boto_reqs()
salt/modules/boto_cloudtrail.py: return salt.utils.versions.check_boto_reqs(boto3_ver="1.2.5")
salt/modules/boto3_elasticsearch.py: return salt.utils.versions.check_boto_reqs(boto3_ver="1.2.7")
salt/modules/boto_vpc.py: return salt.utils.versions.check_boto_reqs(boto_ver="2.8.0", boto3_ver="1.2.6")
salt/modules/boto_ec2.py: has_boto_reqs = salt.utils.versions.check_boto_reqs(
salt/modules/boto_cognitoidentity.py: return salt.utils.versions.check_boto_reqs(boto_ver="2.8.0", boto3_ver="1.2.1")
salt/modules/boto_iot.py: return salt.utils.versions.check_boto_reqs(boto3_ver="1.2.1", botocore_ver="1.4.41")
salt/modules/boto_datapipeline.py: return salt.utils.versions.check_boto_reqs(check_boto=False)
salt/modules/boto_kms.py: return salt.utils.versions.check_boto_reqs(boto_ver="2.38.0", check_boto3=False)
salt/renderers/aws_kms.py: return HAS_FERNET and salt.utils.versions.check_boto_reqs()
salt/utils/botomod.py: has_boto_requirements = salt.utils.versions.check_boto_reqs(check_boto3=False)
salt/utils/boto3mod.py: has_boto = salt.utils.versions.check_boto_reqs()
salt/utils/boto3_elasticsearch.py: return salt.utils.versions.check_boto_reqs(check_boto=False)
Glancing at the output, it looks like many modules are reliant on the out-dated (and I think no longer maintained) version of the Python AWS library (boto v2 has since been replaced with boto3
). It looks like some above have migrated over to boto3
, at least.
Note from AWS, when someone visits the boto v2.x docs (which had it's last update back in 2018):
Boto3, the next version of Boto, is now stable and recommended for general use. It can be used side-by-side with Boto in the same project, so it is easy to start using Boto3 in your existing projects as well as new projects. Going forward, API updates and all new feature work will be focused on Boto3.
For more information, see the documentation for boto3.
For those interested, this may be of help: boto3 docs: Migrating from Boto 2.x
Done a grep on what we currently are using:
cd requirements
egrep -r "boto=|boto>"
static/ci/py3.5/darwin.txt:boto==2.49.0
static/ci/py3.5/freebsd.txt:boto==2.49.0
static/ci/py3.5/windows.txt:boto==2.49.0
static/ci/py3.5/linux.txt:boto==2.49.0
static/ci/py3.9/darwin.txt:boto==2.49.0
static/ci/py3.9/freebsd.txt:boto==2.49.0
static/ci/py3.9/linux.txt:boto==2.49.0
static/ci/py3.6/darwin.txt:boto==2.49.0
static/ci/py3.6/freebsd.txt:boto==2.49.0
static/ci/py3.6/windows.txt:boto==2.49.0
static/ci/py3.6/linux.txt:boto==2.49.0
static/ci/freebsd.in:boto>=2.46.0
static/ci/py3.7/darwin.txt:boto==2.49.0
static/ci/py3.7/freebsd.txt:boto==2.49.0
static/ci/py3.7/windows.txt:boto==2.49.0
static/ci/py3.7/linux.txt:boto==2.49.0
static/ci/windows.in:boto>=2.46.0
static/ci/darwin.in:boto>=2.46.0
static/ci/py3.8/darwin.txt:boto==2.49.0
static/ci/py3.8/freebsd.txt:boto==2.49.0
static/ci/py3.8/linux.txt:boto==2.49.0
static/ci/linux.in:boto>=2.46.0
https://github.com/saltstack/salt/blob/4a5aa4dbe8140c24c11ac2b0d0bad9bee0eebd01/salt/modules/boto_vpc.py#L185
The boto version is wrong here. It should be something around 2.49.0 (the latest as of Nov 12, 2019).