1.0.0 fixes compatibility with Python >=3.13 and requires Python >=3.9.
- Remove deprecated debug_mediator config (replaced by mediator_log_level) #90 (@consideRatio, @minrk)
- Require jupyterhub 4+ and cleanup not required dependency on notebook #86 (@consideRatio, @manics, @minrk)
- Let c.JupyterHub.spawner_class be configurable with "sudo" #94 (@consideRatio, @minrk)
- Replace debug_mediator with mediator_log_level #54 (@Siecje, @minrk)
- ci: fix declaring Python version #99 (@consideRatio)
- Add pre-commit hooks #97 (@consideRatio, @minrk)
- ci: run tests weekly to help flag issues over time #93 (@consideRatio)
- Add dependabot config to bump github actions #91 (@consideRatio, @minrk)
- Transition from tornado's gen.coroutine to async/await #89 (@consideRatio, @minrk)
- Fix Dockerfile based example of using sudospawner #88 (@consideRatio)
- Expose version and version_info directly #85 (@consideRatio)
- Transition to pyproject.toml and modenize release docs/automation #84 (@consideRatio, @manics, @minrk)
- Python 3.9-3.13 support with GitHub Actions fixes #81 (@ken-lauer, @consideRatio)
- Replace pipes with shlex #80 (@urlicht, @consideRatio, @manics)
- Fix broken link and rename examples folder to example #98 (@consideRatio)
- Refresh README for the 1.0.0 release #96 (@consideRatio, @minrk)
- docs: add dates to changelog entries #83 (@consideRatio)
- docs: fix broken badge and add typical badges #82 (@consideRatio)
- Fix URL for sudo configuration #76 (@pdebuyl, @consideRatio)
- Update running JupyterLab docs for SudoSpawner #67 (@kinow, @consideRatio)
- Fix dead link to Dockerfile in README.md #57 (@lumbric, @consideRatio)
- Bump actions/setup-python from 5 to 6 #101 (@consideRatio)
- Bump actions/checkout from 4 to 5 #92 (@manics)
- ci: add release workflow without pypa action #69 (@consideRatio, @minrk)
- Use GitHub Actions #66 (@kinow, @minrk)
The following people contributed discussions, new ideas, code and documentation contributions, and review. See our definition of contributors.
(GitHub contributors page for this release)
@consideRatio (activity) | @Frank-Steiner (activity) | @ken-lauer (activity) | @kinow (activity) | @lumbric (activity) | @mangecoeur (activity) | @manics (activity) | @minrk (activity) | @pdebuyl (activity) | @Siecje (activity) | @urlicht (activity) | @yuvipanda (activity)
- Add
make_preexec_fnmethod as an avenue for overriding pre-exec actions, e.g. setting resource limits. Default behavior is unchanged.
- Fix bug preventing JupyterHub 0.8 from connecting to Spawners with default
ip.
- Remove deprecated code for supporting JupyterHub < 0.7. JupyterHub ≥ 0.7 is required.
- Avoid invoking sudo for poll
0.4 adds better error handling:
- report better errors when sudospawner fails; change unhelpful
ValueError: substring not foundmessage when parsing output fails to a more helpful message and log the unparsed data - treat failures to signal the process as the process being missing, and log the failure, instead of raising errors
- return ip, port from Spawner.start (future-compatibility, as setting ip, port directly is deprecated in JupyterHub 0.7)
- better handling of errors in the mediator
- allow overriding single-user spawn via sudospawner-singleuser script
- Fixes for compatibility with jupyterhub-0.4
- Relay subprocess output to Hub, to reduce silent errors
sudospawnerexecutable must be in the same dir asjupyterhub-singleuser
First release