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

maint/ci: remove support for Python 3.6 and test against multiple versions of Python and Golang #501

Merged

Conversation

consideRatio
Copy link
Collaborator

@consideRatio consideRatio commented Mar 25, 2022

I wanted to better understand if this Python code functioned in Python 3.6-3.10, as well as if its associated Golang code in dask-gateway-server/dask-gateway-proxy would function to compile with Golang 1.12-1.18.

I couldn't arrive at a clear conclusion about Golang, but we seem to be fine with Python 3.6-3.10. A key reason that we don't properly test against all versions of Golang is that we have golang versions in many different contexts. For example, we have it in the Dockerfile's defined to start slurm/pbs/hadoop to test against them.

I raised the question if we should drop support for Python 3.6 which has reached end of life three months ago in #498. I think it makes sense to do so at this point in time.


This PR is also updated to remove support for Python 3.6 which has reached end of life.

# we test integration with. We can test against only one version and
# that would be fine.
#
- python-version: "3.6"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dask as a whole dropped 3.7 recently, so I suggest we don't worry about supporting anything below 3.8.

dask/community#213

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, okay hmmmm let's consider dropping support for Python 3.7 at a later time. For now, I added a commit that stops tests against Python 3.6 and requires Python 3.7+. Various tests rely on pre-build Dockerfiles that still use Python 3.7 etc so it would be big bloat to make such change as part of this PR.

Copy link
Member

@jacobtomlinson jacobtomlinson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me. Happy for merge after passing CI (GitHub Actions is down for maintenance right now).

@consideRatio consideRatio force-pushed the pr/test-against-multiple-versions branch from 2f7ee5a to 442a8ec Compare March 25, 2022 15:53
@consideRatio
Copy link
Collaborator Author

consideRatio commented Mar 25, 2022

Thank you @jacobtomlinson for review/merge!

I rebased this on main and removed a setup.py comment about Python 3.6. It seems to have kicked off the GitHub actions as well - they are intermittent it seems.

Classifier: Programming Language :: Python :: 3.6

@consideRatio consideRatio changed the title ci: test against multiple versions of Python and Golang maint/ci: remove support for Python 3.6 and test against multiple versions of Python and Golang Mar 25, 2022
@consideRatio
Copy link
Collaborator Author

As this was approved for merge after CI passed by @jacobtomlinson in #501 (review), and that I've only removed a outdated comment about Python 3.6 since, I'll go for a self-merge on this to be able to avoid conflicts with future development effort on dropping Python 3.7.

@consideRatio consideRatio merged commit 9967522 into dask:main Mar 26, 2022
consideRatio added a commit that referenced this pull request Mar 26, 2022
* adding conda env file with dev dependencies

* adding conda env create instructions

* adding kubectl and helm

* adding comments for where dependencies are defined

* adding comments where dependencies are defined

* updating description in development docs

* adding minikube to local dev (kubernetes) dependencies

* unpinning pytest-asyncio and adding inline comment in src files indicating that files must be kept in sync

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Remove legacy purge flag from k8s uninstall docs (#502)

Minor doc fix!

The [install instructions for dask-gateway on Kubernetes](https://gateway.dask.org/install-kube.html#shutting-everything-down) use an unsupported flag (`--purge`) in the `helm` command for cleanup and uninstalling work. When run, this throws an error at the poor user.

This PR updates the docs to remove the `--purge` flag. The behavior from `--purge` is the default behavior in the current version of `helm`.

* maint/ci: remove support for Python 3.6 and test against multiple versions of Python and Golang (#501)

* ci: test against multiple versions of Python and Golang

* Require Python 3.7+ and only test against it and higher

* adding conda env file with dev dependencies

* adding conda env create instructions

* adding kubectl and helm

* adding comments for where dependencies are defined

* adding comments where dependencies are defined

* updating description in development docs

* adding minikube to local dev (kubernetes) dependencies

* unpinning pytest-asyncio and adding inline comment in src files indicating that files must be kept in sync

* updating docs/source/develop.rst with new environment filename

* updating to python=3.10

* updating dask-gateway, dask-gateway-server, and docs dependencies blocks with inline comments

* updating CI and tests dependencies block

* updating pip dependencies block with autotoc-traits

* fixing title underline from docs workflow warning

* fixing kubernetes-asyncio to kubernetes_asyncio from feedstock name

* Apply suggestions from code review

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Brewster Malevich <sbmalev@gmail.com>
Co-authored-by: Erik Sundell <erik.i.sundell@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants