aws / aws-lambda-builders

Python library to compile, build & package AWS Lambda functions for several runtimes & framework
Apache License 2.0
340 stars 140 forks source link

Feature request: Include/Exclude Interface for AWS Lambda Builders #516

Open mildaniel opened 1 year ago

mildaniel commented 1 year ago

Describe your idea/feature/enhancement

There are currently two opposing feature requests that go hand-in-hand. One is to include files/directories in the resultant build package, and one is for exclusion. Both of these are genuine use-cases across various runtimes, and, as such, we believe should be handled together though a common include/exclude interface for the Lambda Builders library.

Include: Issue #430, PR #431 Exclude: Issue #185, PR #424

This should start with an initial design document, and once approved, can be implemented. The important notes for the design to address:

AdrianCarreno commented 1 year ago

I think the functionality should be just like .gitignore or .dockerignore. Just have a .samignore file where you would put every path you don't want in the build.

farridav commented 1 year ago

:+1: Having an optional .samignore file that overides the hardcoded EXCLUDED_FILES seems like natural behaviour to me, afterall

Explicit is better than implicit - Zen of Python

It fits with developer expectations set by many other mature tools and could easily be a non breaking change by defaulting to the hardcoded EXCLUDED_FILES when this file is not present..

ishan1608 commented 6 months ago

Has there any progress been made on this so far, to come up with a decision? We are facing similar stuff in our project, where we have a bunch of stuff like tests, tools etc. being added to the deployed code which we don't really need and is also causing our bundled zip files to become bloated.