bolt-python icon indicating copy to clipboard operation
bolt-python copied to clipboard

Python 3.6 support plans

Open seratch opened this issue 3 years ago • 2 comments

Python 3.6 is already EOL-ed:

3.6 will receive bugfix updates approximately every 3 months for about 24 months. Sometime after the release of 3.7.0 final, a final 3.6 bugfix update will be released. After that, it is expected that security updates (source only) will be released as needed until 5 years after the release of 3.6 final, so until approximately 2021-12. As of 2021-12-23, 3.6 has reached the end-of-life phase of its release cycle. 3.6.15 was the final security release. The code base for 3.6 is now frozen and no further updates will be provided nor issues of any kind will be accepted on the bug tracker. https://www.python.org/dev/peps/pep-0494/#lifespan

Recently, I've been observing that many Python open-source libraries started dropping the major version support. What should our plans for it be?

As for bolt-python and its underlying slack-sdk modules, I believe that we should not drop 3.6 in the short term. We know that many customers' apps may be still running in 3.6 and I do understand that many Slack app maintainers are busy for other things as well.

Also, the benefits with 3.7+ on this SDK side would be somewhat limited. If we drop 3.6, we can use data classes (PEP 557), which is available since 3.7. It makes the internal code much simpler but I still would like to avoid users' immediate migration cost.

If anyone has some thoughts on this, please feel free to write in the comments!

Category (place an x in each of the [ ])

  • [ ] slack_bolt.App and/or its core components
  • [ ] slack_bolt.async_app.AsyncApp and/or its core components
  • [ ] Adapters in slack_bolt.adapter
  • [x] Others

seratch avatar Feb 25 '22 23:02 seratch

GitHub has deprecated the Ubuntu 20.04 actions runner image and plans to remove it by April 1st :warning: source issue

The next available image is Ubuntu 22.04, but it does not support Python 3.6

Error: The version '3.6' with architecture 'x64' was not found for Ubuntu 22.04.
The list of all available versions can be found here:

We heavily rely on our CI pipeline to provide support for older Python runtimes like 3.6. Without the Ubuntu 20.04 actions runner image, the task of supporting Python 3.6 becomes much more challenging. For this reason I believe it is time to stop officially supporting python 3.6

To avoid users' immediate migration cost we plan to simply remove official support without introducing 3.7+ features, this aims to provide developers some additional time to move away from python 3.6, before an incompatible change is introduced.

WilliamBergamin avatar Mar 19 '25 17:03 WilliamBergamin

Yeah, this makes sense!

seratch avatar Mar 22 '25 08:03 seratch

👋 Reopening this for now since #1330 was reverted in #1331 changes 👾 ✨

Unrelated: I also stumbled upon a chart of versions that's interesting - Python 3.8 is also EOL at this time! 📚

zimeg avatar Jul 02 '25 19:07 zimeg