Recently had a discussion with AWS employees about dependency handling and their recommendation is to bundle all your own packages, including _boto3_ and _botocore_. This is not the default behavior of serverless-python-requirements unfortunately. I've opened this issue to discuss removing those two packages or even rethink the _noDeplopy_ option so it better aligns with AWS recommended practices.
If AWS doesn't recommend using the boto3/botocore (and thus it's dependencies) that ship on Lambda, then I'm fully in favor of changing the noDeploy default to an empty list.
I'll get someone to respond to this from AWS.
Hi all. I鈥檓 a SA for AWS.
Our leading practice is to ship your own version of boto with your app code either as a part of the handler zip or as a layer (for larger projects).
Feel free to reach out on the AWS Developers slack.
If someone wants to give this a shot, it should be a pretty straight-forward task. All that's needed is to change the default list in index.js and probably fix some tests after.
Most helpful comment
Hi all. I鈥檓 a SA for AWS.
Our leading practice is to ship your own version of boto with your app code either as a part of the handler zip or as a layer (for larger projects).
Feel free to reach out on the AWS Developers slack.