Steffen Vogel
e93cc83d58
remove unused imports
2020-04-16 12:12:22 +02:00
Greg
d126baa443
remove diaeresis
...
Signed-off-by: Greg <werner.greg@gmail.com >
2020-01-17 09:43:46 -05:00
Min RK
ff283ae636
address review
...
and fix a mis-applied GitHub suggestion
suggestions can only replace one line
2019-03-07 10:33:37 +01:00
Carol Willing
2fbcb16190
docstring formatting
...
Co-Authored-By: minrk <benjaminrk@gmail.com >
2019-03-07 10:27:54 +01:00
Carol Willing
49b9a9f017
spacing
...
Co-Authored-By: minrk <benjaminrk@gmail.com >
2019-03-07 10:26:53 +01:00
Carol Willing
aa60d948bb
docstring formatting
...
Co-Authored-By: minrk <benjaminrk@gmail.com >
2019-03-07 10:26:19 +01:00
Min RK
0c028c7186
import parsing of Accept header
...
used to determine if a request expects JSON or not
2019-02-25 13:44:10 +01:00
Min RK
5e60582ef3
run autoformat
...
apologies to anyone finding this commit via git blame or log
run the autoformatting by
pre-commit run --all-files
2019-02-19 17:00:10 +01:00
Min RK
8c76f2b30c
Merge pull request #2414 from minrk/threads
...
add an additional case for idle ThreadPoolExecutor threads
2019-02-15 11:16:30 +01:00
Min RK
5e77e448bd
add an additional case for idle ThreadPoolExecutor threads
...
this is what they look like in Python 3.7
2019-02-12 16:00:07 +01:00
Min RK
d8d1b6c149
test activity api
2019-02-11 16:17:23 +01:00
Min RK
fe5ca1a67e
Merge branch 'master' into jupyter_2105
2018-10-19 09:31:45 +02:00
tuhina2020
e449b9c193
fix the condiiton for authentation
2018-10-17 10:39:00 +05:30
Min RK
eb7648abc2
consolidate trusted alt names
...
- trust subdomain_host by default
- JupyterHub.trusted_alt_names is inherited by Spawners by default. Do we need Spawner.ssl_alt_names to be separately configurable?
2018-10-16 15:46:50 +02:00
tuhina2020
1a6b16d493
fix metrics_authentication method
2018-10-15 11:27:11 +05:30
tuhina2020
ac7ff491e1
Add tests for metrics API
2018-10-12 09:26:52 +05:30
tuhina2020
b0b7e8d25d
add metrics_authentication decorator to /metrics API
2018-10-07 13:38:32 +05:30
Min RK
f29354e0f4
Merge branch 'master' into end-to-end-ssl
2018-10-02 11:15:53 +02:00
Carol Willing
56601d93c3
Merge pull request #2149 from minrk/deprecate-maybe-future
...
stop using deprecated `gen.maybe_future`
2018-09-17 20:08:57 -07:00
Min RK
35a95b5f0c
stop using deprecated gen.maybe_future
...
we already covered supported cases since we are using tornado 5,
so handle the scalar case ourselves, as recommended in the deprecation
2018-09-14 14:13:31 +02:00
Min RK
d79a99323e
make .get_current_user
async
...
- `.get_current_user` is called in the `prepare` stage for all handlers
- use `.current_user` to access current user in methods
- adds Authenticator.refresh_user for refreshing user auth (unused at this point)
2018-09-13 10:16:13 +02:00
Thomas Mendoza
373c3f82dd
SSL setup for testing
...
Setup general ssl request, not just to api
Basic tests comprised of non-ssl test copies
Create the context only when request is http
Refactor ssl key, cert, ca names
Configure the AsyncHTTPClient at app start
Change tests to import existing ones with ssl on
Override __new__ in MockHub to turn on SSL
2018-07-23 13:41:09 -07:00
Thomas Mendoza
f7f4759bde
Build ssl_context as util, wait_up with context
2018-07-18 16:02:57 -07:00
Min RK
5002ab2990
Python 3.5.1 cannot close async iterators
...
so provide a null aclosing async context manager that does nothing
2018-06-06 11:43:33 +02:00
Min RK
a189196855
ensure async generators are properly closed
...
only terminate with iterate_until in handler, not Spawner._generate_events
2018-04-09 13:03:18 +02:00
Min RK
31d3f7a20b
allow isoformat(None)
...
simplifies "if timestamp is None" cases when we are just using it to serialize nullable timestamps to JSON
2018-04-05 11:32:34 +02:00
Min RK
707b300bd6
add iterate_until utility
...
allows iterating through an async generator, yielding items until another Future resolves
if/when that deadline Future resolves, ready items will continue to be yielded until there is one that actually needs to wait
at which point the iteration will halt
2018-04-05 11:22:00 +02:00
Min RK
fd40e27be4
indicate that REST API timestamps are UTC
...
use iso8601 Z suffix for UTC timestamps
use dateutil to parse dates from proxy, as well
even though CHP uses iso8601 UTC timestamps, we no longer assume CHP, so use more general parsing
in our db we are stuck with naïve datetime objects, so use those internally.
But ensure we put 'Z' on timestamps we ship externally
2018-04-03 15:14:47 +02:00
Min RK
dad26be2c6
call it our own maybe_future
...
our version of gen.maybe_future that's fully tornado- and asyncio-compatible
2018-03-12 18:18:47 +01:00
Min RK
b6f634368c
add utils.awaitable replacement for gen.maybe_future
...
gen.maybe_future doesn't accept asyncio coroutines
and asyncio.ensure_future doesn't accept *tornado* coroutines, so do our own thing
2018-03-12 18:18:46 +01:00
Min RK
7b4de150cc
add awaitable wrapper
...
to replace gen.maybe_future
2018-03-12 18:18:46 +01:00
Min RK
7a268c94b0
bulk find/replace async def and await
...
- `@gen.coroutine def` -> `async def`
- `yield future` -> `await future`
needs some fine tuning, but this is the big one
2018-03-12 18:18:46 +01:00
Min RK
773973825f
also show asyncio task stacks
...
which are nicely formatted on their own
there won't be many yet, but if we transition to async def,
we will get lots more useful info
2018-03-01 14:39:11 +01:00
Min RK
a184d372f4
add SIGINFO handler
...
send SIGINFO (ctrl-T) to jupyterhub and it will dump
process info
- if psutil is available, show cpu, memory, FD counts
- always show stacks of non-idle threads
2018-03-01 14:37:46 +01:00
Min RK
5f7ffaf1f6
allow default (empty) server name with named servers
...
remove generated names behavior because it doesn't work
2017-09-17 11:47:17 +02:00
Alex Ding
932689f2f8
Pass timeout value to exponential_backoff in wait functions
2017-08-29 17:45:21 -07:00
Carol Willing
da10a8e7dd
Edit docstring and comments
2017-07-26 13:00:16 -07:00
Min RK
8de38b1708
add some jitter to the deadline itself
...
so that we don't re-align a bunch of timing out calls once the deadline is reached.
(±10% of timeout by default)
2017-07-26 14:12:28 +02:00
Min RK
6db987972a
exponential backoff
...
- apply jitter to first iteration
- due to jitter, double start_wait to 0.2 so that <first wait> is still 0.1
- keep scaling by start_wait, rather than previous dt
- limit last wait to deadline so timeout is not overshot
2017-07-26 14:06:07 +02:00
yuvipanda
9f8033a147
Move exponential backoff into a function
...
Also use the 'Full Jitter' jitter algorithm from
https://www.awsarchitectureblog.com/2015/03/backoff.html
2017-07-26 14:06:07 +02:00
Min RK
e28f3947bd
Merge branch 'master' into named_servers
2017-07-21 15:43:09 +02:00
Min RK
a2e94b8493
create Spawners table
...
for named servers
removes User.servers
2017-07-18 14:28:31 +02:00
Min RK
efa6a33b0a
variables for exponential falloff
2017-07-17 10:27:42 +02:00
Min RK
8e3c4b1925
apply exponential backoff to all waits
...
Waiting for servers to come up and shut down was polled at an even interval of 100ms. If things are slow and busy, this is a lot if waiting events. exponential backoff reduces the number of callbacks triggered by slow spawners.
This may improve the load a bit when there’s a bunch of outstanding spawns.
2017-07-15 12:56:47 +02:00
Min RK
cdcc7fc3c1
return http response from wait_for_http_server
2017-06-28 21:55:15 +01:00
Min RK
a5fbc0351f
close socket when testing connections
...
rather than relying on garbage collection
2017-06-08 15:28:02 +02:00
Min RK
acc31b8441
remove Hub, Proxy from database
...
These are in-memory-only objects, no need for a table with one row
2017-05-04 11:05:58 +02:00
Christian Barra
f4a7e28aa5
add default_server_name, change spawn start
2017-02-24 00:37:40 +01:00
Carol Willing
0fe3aacb4d
Update punctuation per @minrk
2017-02-09 06:48:15 -08:00
Carol Willing
13ae12b57d
Correct style spacing
2017-02-08 21:18:12 -08:00