Change log summary¶
For detailed changes from the prior release, click on the version number, and
its link will bring up a GitHub listing of changes. Use
git log on the
command line for details.
- Support service environment variables and defaults in
jupyterhub-singleuserfor easier deployment of notebook servers as a Service.
--groupparameter for deploying
jupyterhub-singleuseras a Service with group authentication.
- Include URL parameters when redirecting through
- Fix group authentication for HubAuthenticated services
Spawner.will_resumefor signaling that a single-user server is paused instead of stopped. This is needed for cases like
DockerSpawner.remove_containers = False, where the first API token is re-used for subsequent spawns.
- Warning on startup about single-character usernames,
caused by common
set('string')typo in config.
- Removed spurious warning about empty
next_url, which is AOK.
- Implement Services API #705
- Add documentation for JupyterLab, pySpark configuration, troubleshooting, and more.
- Add logging of error if adding users already in database. #689
- Add HubAuth class for authenticating with JupyterHub. This class can be used by any application, even outside tornado.
- Add user groups.
/hub/user-redirect/...URL for redirecting users to a file on their own server.
- Fix docker repository location #719
- Fix swagger spec conformance and timestamp type in API spec
- Various redirect-loop-causing bugs have been fixed.
Bugfixes on 0.6:
- statsd is an optional dependency, only needed if in use
- Notice more quickly when servers have crashed
- Better error pages for proxy errors
- Add Stop All button to admin panel for stopping all servers at once
- JupyterHub has moved to a new
jupyterhubnamespace on GitHub and Docker. What was
jupyterhub/jupyterhubimage on DockerHub no longer loads the jupyterhub_config.py in an ONBUILD step. A new
jupyterhub/jupyterhub-onbuildimage does this
- Add statsd support, via
- Update to traitlets 4.1
@observeAPIs for traits
- Allow disabling PAM sessions via
c.PAMAuthenticator.open_sessions = False. This may be needed on SELinux-enabled systems, where our PAM session logic often does not work properly
Spawner.environmentconfigurable, for defining extra environment variables to load for single-user servers
- JupyterHub API tokens can be pregenerated and loaded via
JupyterHub.api_tokens, a dict of
- JupyterHub API tokens can be requested via the REST API, with a POST request to
/api/authorizations/token. This can only be used if the Authenticator has a username and password.
- Various fixes for user URLs and redirects
- Single-user server must be run with Jupyter Notebook ≥ 4.0
--no-sslconfirmation to allow the Hub to be run without SSL (e.g. behind SSL termination in nginx)
- Add lengths to text fields for MySQL support
Spawner.disable_user_configfor preventing user-owned configuration from modifying single-user servers.
- Fixes for MySQL support.
- Add ability to run each user’s server on its own subdomain. Requires wildcard DNS and wildcard SSL to be feasible. Enable subdomains by setting
JupyterHub.subdomain_host = 'https://jupyterhub.domain.tld[:port]'.
127.0.0.1for local communication instead of
localhost, avoiding issues with DNS on some systems.
- Fix race that could add users to proxy prematurely if spawning is slow.
Spawner.user_options_formfor specifying an HTML form to present to users, allowing users to influence the spawning of their own servers.
Authenticator.post_spawn_stophooks, so that Authenticators can do setup or teardown (e.g. passing credentials to Spawner, mounting data sources, etc.). These methods are typically used with custom Authenticator+Spawner pairs.
- 0.4 will be the last JupyterHub release where single-user servers running IPython 3 is supported instead of Notebook ≥ 4.0.
- No longer make the user starting the Hub an admin
- start PAM sessions on login
- hooks for Authenticators to fire before spawners start and after they stop, allowing deeper interaction between Spawner/Authenticator pairs.
- login redirect fixes
- Based on standalone traitlets instead of IPython.utils.traitlets
- multiple users in admin panel
- Fixes for usernames that require escaping
0.1 - 2015-03-07¶
First preview release