-
Notifications
You must be signed in to change notification settings - Fork 276
chore: remove 3.6 support #1359
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
Conversation
| if sys.version_info.major == 3 and sys.version_info.minor <= 6: | ||
| # NOTE: Unfortunately, copy.deepcopy doesn't work in Python 3.6.5. | ||
| # -------------------- | ||
| # > rv = reductor(4) | ||
| # E TypeError: can't pickle _thread.RLock objects | ||
| # ../../.pyenv/versions/3.6.10/lib/python3.6/copy.py:169: TypeError | ||
| # -------------------- | ||
| # As a workaround, this operation uses shallow copies in Python 3.6. | ||
| # If your code modifies the shared data in threads / async functions, race conditions may arise. | ||
| # Please consider upgrading Python major version to 3.7+ if you encounter some issues due to this. | ||
| return copy.copy(original) | ||
| else: | ||
| return copy.deepcopy(original) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This makes the project incompatible with python 3.6, I decided to include it since I think it makes sense to but let me know what you think 🧠
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
⭐ praise: These are all awesome changes to keep this project healthy! I understand this can cause unsupported versions of Python to error, but I believe recommending upgrades in these cases is reasonable and perhaps we even encourage?
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1359 +/- ##
=======================================
Coverage ? 91.00%
=======================================
Files ? 222
Lines ? 7512
Branches ? 0
=======================================
Hits ? 6836
Misses ? 676
Partials ? 0 ☔ View full report in Codecov by Sentry. |
zimeg
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@WilliamBergamin LGTM! And excellent writeup on our support schedule I think.
Huge fan of the special cases that are no longer needed after this PR. Please do feel free to merge it when the time is right 🚢 💨
| if sys.version_info.major == 3 and sys.version_info.minor <= 6: | ||
| # NOTE: Unfortunately, copy.deepcopy doesn't work in Python 3.6.5. | ||
| # -------------------- | ||
| # > rv = reductor(4) | ||
| # E TypeError: can't pickle _thread.RLock objects | ||
| # ../../.pyenv/versions/3.6.10/lib/python3.6/copy.py:169: TypeError | ||
| # -------------------- | ||
| # As a workaround, this operation uses shallow copies in Python 3.6. | ||
| # If your code modifies the shared data in threads / async functions, race conditions may arise. | ||
| # Please consider upgrading Python major version to 3.7+ if you encounter some issues due to this. | ||
| return copy.copy(original) | ||
| else: | ||
| return copy.deepcopy(original) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
⭐ praise: These are all awesome changes to keep this project healthy! I understand this can cause unsupported versions of Python to error, but I believe recommending upgrades in these cases is reasonable and perhaps we even encourage?
| 3.7.17 | ||
| 3.13.7 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🏥 praise: Thanks for keeping notes for maintainers current too!
Summary
This PR removes support for Python 3.6.
As announced in our blog post, "Python Development at Slack", we're dropping support for older Python versions. As mentioned in #603 our CI can no longer guarantee stable support of python 3.6
Testing
Everything still work s with python 3.7
Category
slack_bolt.Appand/or its core componentsslack_bolt.async_app.AsyncAppand/or its core componentsslack_bolt.adapter/docsRequirements
Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you are agreeing to those rules.
./scripts/install_all_and_run_tests.shafter making the changes.