Commit Graph

128 Commits

Author SHA1 Message Date
Carol Willing
e8a1d2f1bd Clean up docstring errors 2017-02-08 20:53:53 -08:00
Min RK
195eea55f3 log.warning 2016-03-29 09:22:32 -07:00
Min RK
31be00b49f failure to connect may be a timeout 2016-03-04 16:28:57 +01:00
Min RK
4533d96002 use the same connection check everywhere
avoids inconsistencies in error handling
2016-03-04 16:28:57 +01:00
Min RK
f626d2f6e5 use 127.0.0.1 instead of localhost
localhost can cause some issues on badly behaved or misconfigured systems,
and 127 seems simpler.
2016-02-03 10:30:09 +01:00
Min RK
4785a1ef87 Ensure that we can bind and connect to localhost
otherwise fallback to 127.0.0.1 for defaults
2015-12-15 13:37:30 +01:00
Min RK
d1edbddb77 use gen.sleep
instead of elaborate `gen.Task(add_timeout...)`

requires tornado 4.1
2015-09-23 17:04:01 +02:00
Min RK
54c0c276ed use hmac.compare_digest for constant time comparisons on tokens 2015-07-12 11:22:21 -05:00
Min RK
c289cdfaec remove dependency on IPython
- Standalone traitlets has been released, use it directly.
- Copy url_path_join from notebook
2015-06-22 16:02:45 -07:00
Pietro Battiston
fd6e6f1ded Get url_path_join from jupyter_notebook 2015-04-24 12:34:33 +02:00
Min RK
cf3a5744e7 better handle servers failing to start
including more informative TimeoutError messages
2014-11-21 17:55:52 -08:00
Min RK
40a99e61ac drop support for old Python, IPython < 3
Require IPython >= 3.0, Python >= 3.3
2014-11-02 15:51:06 -08:00
Min RK
da51affacb add hash rounds
default 16k
2014-10-30 15:59:02 -07:00
Min RK
aed3efc557 Don't need passlib + sqlalchemy_utils for hashing
we can store hash+salt ourselves.
Since we need to implement prefix filtering, etc. ourselves,
there is little benefit to adding a large dependency just for implicit hashing.
2014-10-28 14:18:32 -07:00
Scott Sanderson
a34d514d66 BUG: Fix str/unicode warnings from SQLAlchemy on python 2.
When running with `reset_db=True` on python 2, several SQLAlchemy operations
were performed with bytes where unicode was expected, resulting in
warnings like the following.

```
/home/ssanderson/.virtualenvs/jupyterhub/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py:573:
SAWarning: Unicode type received non-unicodebind param value.
  param.append(processors[key](compiled_params[key]))
```

Fixes a few stray non-unicode literals and adds a unicode safe wrapper
for `getpass.getuser`.
2014-10-27 03:40:52 -04:00
MinRK
e47ba13aa1 catch OSError/socket.error waiting for HTTPErrors
catches ECONNREFUSED
2014-10-14 15:44:35 -07:00
MinRK
08fd76d1e8 wait for HTTP servers to start accepting requests
avoids error messages in the proxy when servers are slow to start.
2014-10-14 14:39:53 -07:00
MinRK
bb9ca0e040 store last_activity in the database
fetch it periodically (10 minutes) from the proxy
and display it on the admin page
2014-09-22 17:25:10 -07:00
MinRK
3a0f19f1a4 cookie_secret is no longer bytes
add utils.random_hex for generating a unicode object
with random hex bytes
2014-09-21 22:44:50 -07:00
MinRK
6106fecd48 raise TimeoutError in wait_for_server 2014-09-18 16:07:44 -07:00
MinRK
67e2a71d8c log unexpected errors in wait_for_server 2014-09-18 15:01:16 -07:00
MinRK
46b3e11110 make wait_for_server async 2014-09-16 15:02:42 -07:00
MinRK
0a8759b0a5 flesh out REST API
can now list/view/add/create/modify users
and start/stop single-user servers
2014-09-14 16:47:09 -07:00
MinRK
53edc0b2f7 add a notion of admin users
and an @admin_only decorator for restricted methods
2014-09-14 11:54:05 -07:00
MinRK
0b677f8d51 fix imports in utils 2014-09-13 13:23:20 -07:00
MinRK
714770d499 reorg handlers a bit
make room for API handlers
2014-09-12 12:09:26 -07:00
MinRK
8ca425fd8a make it a proper package
both jupyterhub and configurable-http-proxy
2014-08-20 20:26:02 -07:00
MinRK
c7acaec239 s/multiuser/jupyterhub 2014-08-19 17:44:30 -07:00