Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maintenance: Deprecate Python 3.7 #3615

Closed
3 of 4 tasks
leandrodamascena opened this issue Jan 10, 2024 · 2 comments · Fixed by #3638
Closed
3 of 4 tasks

Maintenance: Deprecate Python 3.7 #3615

leandrodamascena opened this issue Jan 10, 2024 · 2 comments · Fixed by #3638
Assignees
Labels
help wanted Could use a second pair of eyes/hands internal Maintenance changes

Comments

@leandrodamascena
Copy link
Contributor

leandrodamascena commented Jan 10, 2024

Why is this needed?

AWS Lambda runtime will fully deprecate Python 3.7 on February 8th. This means, 3.7 functions will be unable to be updated.

Additionally, AWS SDK for Python (Boto3 and Botocore), AWS Command Line Interface (AWS CLI), and AWS CDK no longer offers support for Python 3.7 as well. The same happens with typing extensions, a library used extensively throughout this project that dropped support for Python3.7 in version 4.7.1.

We need to measure the impact of this and make the decision to remove support for Python 3.7. Keep the Python3.7 support directly impacts our supply chain in terms of preventing us from receiving new features and potential security bug fixes.

Minor or major release?

We started writing the roadmap for Powertools V3, however, we are still many steps away from having a roadmap to define new features/codebase for v3, write the RFC for V3, listen to the community, and refactor/rewrite everything necessary. So, will we deprecate Python 3.7 in a v2 minor release or wait until Powertools v3?

Is this a breaking change?

While I agree that this changes behavior and may prevent someone from receiving new Powertools updates, I think the impact is minimal for anyone using Managed Runtime Python 3.7. They will not be able to update their Python 3.7 functions from Feb/8, so those who need to update their functions will be forced to update Python to 3.8 and will not be affected by this.

Running Powertools on Lambda with OCI, and other containers platforms in general

These customers may be impacted by being blocked from receiving new Powertools updates if they use Python 3.7.
I don't think they will have problems building the containers in general, because package management tools like pip, poetry, anaconda and others will pin Powertools dependency on the latest version supported by Python 3.7.

Other runtimes

Powertools for AWS Lambda (TypeScript) dropped support for nodejs14.x along with the deprecation of Lambda nodejs14.x.

I may be missing something in my points and I would like to hear your considerations before we move forward with this decision.

Update 11/01

Which area does this relate to?

Other

Solution

Drop support for Python 3.7

Acknowledgment

@leandrodamascena leandrodamascena added triage Pending triage from maintainers internal Maintenance changes labels Jan 10, 2024
@leandrodamascena leandrodamascena removed the triage Pending triage from maintainers label Jan 10, 2024
@leandrodamascena leandrodamascena moved this from Triage to Pending review in Powertools for AWS Lambda (Python) Jan 10, 2024
@leandrodamascena leandrodamascena added the help wanted Could use a second pair of eyes/hands label Jan 10, 2024
@leandrodamascena leandrodamascena self-assigned this Jan 11, 2024
@rubenfonseca
Copy link
Contributor

I'm in favor of dropping python 3.7 support after the date with a minor version. Even if there are security updates, the customer won't be able to update their Lambdas anyway.

@leandrodamascena leandrodamascena pinned this issue Jan 11, 2024
@leandrodamascena leandrodamascena moved this from Pending review to Working on it in Powertools for AWS Lambda (Python) Jan 11, 2024
@leandrodamascena leandrodamascena linked a pull request Jan 16, 2024 that will close this issue
7 tasks
@leandrodamascena leandrodamascena added this to the Deprecate Python 3.7 milestone Jan 16, 2024
@github-project-automation github-project-automation bot moved this from Working on it to Coming soon in Powertools for AWS Lambda (Python) Feb 5, 2024
Copy link
Contributor

github-actions bot commented Feb 5, 2024

⚠️COMMENT VISIBILITY WARNING⚠️

This issue is now closed. Please be mindful that future comments are hard for our team to see.

If you need more assistance, please either tag a team member or open a new issue that references this one.

If you wish to keep having a conversation with other community members under this issue feel free to do so.

@heitorlessa heitorlessa unpinned this issue Feb 9, 2024
@heitorlessa heitorlessa moved this from Coming soon to Shipped in Powertools for AWS Lambda (Python) Feb 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Could use a second pair of eyes/hands internal Maintenance changes
Projects
Status: Shipped
Development

Successfully merging a pull request may close this issue.

2 participants