Add Python 3.14 built-in complete platforms for AWS Lambda#23107
Add Python 3.14 built-in complete platforms for AWS Lambda#23107sureshjoshi merged 3 commits intopantsbuild:mainfrom
Conversation
Generate complete platform JSON files for Python 3.14 on both x86_64 and arm64 architectures, using the public.ecr.aws/lambda/python Docker images.
Add PYTHON_314 to PythonAwsLambdaFunctionRuntimes enum and its corresponding entries in RUNTIME_TAG_MAPPING for both x86_64 and arm64 architectures. Update the test_to_interpreter_version parametrization to cover Python 3.13 (previously missing) and Python 3.14. Add a changelog entry for 2.32.x.
|
Thanks for the PR. Two questions, per an upcoming LLM policy disclosure - were any LLMs or LLM-adjacent tools used to generate this PR? Another one, how were the complete-platforms generated in this release? I see the note about the Docker image in the description - so was the pex output piped to a file? |
|
Hi, @sureshjoshi. Thanks for reviewing my PR! I did it myself =). I generated the JSON files by running I also generated the files with the official Docker images and confirmed that the |
|
Would you mind printing out what you get when you run (the x86_64 and arm versions straight from docker) Because I get something different, so I’m a little confused |
|
Was the difference only in I ran in 3 environments (real AWS, official Docker on WSL, official Docker on macOS) with the same results for E.g. in a Mac: Those last lines are only metadata about where the command was executed. |
@jbsilva more than prefer, these are the only correct ones to use. You went the extra mile there and that was correct to do. The issue you'd run into is with the |
|
Thanks for the confirmation @jbsilva - was just checking why my spot check had a discrepancy. You confirmed it's what I thought it was coming from. |
Problem
python_aws_lambda_functionandpython_aws_lambda_layerdid not supportruntime="python3.14", even though AWS Lambda has supported the Python 3.14runtime since November 2025.
Users were forced to manually generate and vendor a
complete_platformsJSONfile as a workaround.
Solution
Add built-in complete platform configurations for Python 3.14 on both
x86_64andarm64(Graviton2), so users can simply write:Changes
complete_platform_3.14-x86_64.jsonandcomplete_platform_3.14-arm64.json,generated from the official
public.ecr.aws/lambda/python:3.14Docker imageusing
pex3 interpreter inspect --markers --tags --indent=2.PYTHON_314toPythonAwsLambdaFunctionRuntimesand itsRUNTIME_TAG_MAPPINGentries for both architectures.test_to_interpreter_versionto cover Python 3.13 (previouslymissing from tests) and 3.14.
Relates to #18195, #21656.