jupyterhub / kubespawner

Kubernetes spawner for JupyterHub
https://jupyterhub-kubespawner.readthedocs.io
BSD 3-Clause "New" or "Revised" License
545 stars 304 forks source link

Require jupyterhub 4+, currently latest kubernetes_asyncio, and stop testing k8s 1.23 #726

Closed consideRatio closed 1 year ago

consideRatio commented 1 year ago

I repeatedly failed to figure out why our test suite started failing in our oldest dependencies test using JupyterHub 1 in #725. I spend a lot of time looking into this as it was also a clue for test failures in binderhub that probably was unrelated it turns out. With this background of investing significant time into maintenance for backward compatibility, I suggested in #727 we drop support for the previous major JupyterHub versions in KubeSpawner 6.0.0.

In this PR I'm declaring it a requirement to use jupyterhub>=4 directly even though jupyterhub>=2 practically works to my knowledge. I motivate going straight to >=4 to simplify future maintenance and reduce the amounts of tests we need to run in our test suite. My assumption is that there is little value to support jupyterhub 2, 3 and 4 in kubespawner 6+ released after jupyterhub 4, because the z2jh distribution and other users of kubespawner would upgrade to jupyterhub 4 at the same time they would update to a new version of kubespawner.


In the spirit of reducing some maintenance load, I'd like to also stop testing against k8s 1.23 and let KubeSpawner 6 come without guarantees it will work, even though it currently is known to work.

I suggest KubeSpawner 6 and z2jh 3 both ship with a disclaimer of "k8s 1.23 is tested to work, but going onwards we won't test against k8s 1.23".

Note that dropping testing against k8s 1.23 is motivated by wanting to make a new breaking release of action-k3s-helm that drops support for k8s 1.23 testing which is hard to maintain as well, see https://github.com/jupyterhub/action-k3s-helm/issues/94.


yuvipanda commented 1 year ago

Thanks, @consideRatio

yuvipanda commented 1 year ago

Note that dropping testing against k8s 1.23 is motivated by wanting to make a new breaking release of action-k3s-helm that drops support for k8s 1.23 testing which is hard to maintain as well, see jupyterhub/action-k3s-helm#94.

👍🏾