Min RK
e5b135a905
debugging websocket connections
...
- add debug statement at the very beginning of a web socket request
- add debug statement in open, indicating that the connection has been accepted
- add timeout, so failed or slow kernel_info doesn't cause the request to never get a response
- don't send kernel_info_request before authenticating the request
The last one required some icky coroutine shenanigans,
because of our subclass structure, but it should work fine.
2014-10-29 09:17:52 -07:00
MinRK
94d6196ef9
add websocket workarounds for tornado 3
...
WebSocketHandler.get is new in tornado 4
2014-10-26 19:06:48 -07:00
MinRK
769fe38789
cache kernel_info reply for protocol adaptation
...
WebSocket connections will not open until kernel_info is retrieved,
removing a race condition waiting for the reply to indicate adaptation,
which could result in a v5 message being sent to a v4 kernel.
The reply is cached, so that it need not be requested on each new connection.
2014-10-26 14:48:55 -07:00
MinRK
8c743d304f
unsigned ints for offsets
...
because signed ints for sizes is icky
2014-10-15 12:23:33 -07:00
MinRK
3de7e9bd74
test websocket-friendly binary message roundtrip
...
Python-side
2014-10-15 12:23:33 -07:00
MinRK
3693ac83ae
support binary message from javascript
2014-10-15 12:23:32 -07:00
MinRK
c9c131ebf9
s/unserialize/deserialize
2014-10-15 12:23:32 -07:00
MinRK
3a1c845f96
support buffers in comm messages
...
- add buffers arg to comm Python api
- support binary websocket messages when buffers are present
- reimplement utf8 in javascript, because javascript is the best
2014-10-15 12:23:31 -07:00
MinRK
97f7116624
allow session_id to be undefined when starting kernel channels
2014-10-12 14:55:01 -07:00
Min RK
1b5874ac65
Merge pull request #6629 from minrk/wscookie
...
remove on_first_message authentication
2014-10-12 13:25:52 -07:00
Bussonnier Matthias
76a54f0a82
Have /api return the IPython version
...
return version as a string, to be consistent with other APIs.
closes #6647
2014-10-10 19:28:04 +02:00
MinRK
624f0071a2
remove on_first_message authentication
...
in ZMQStreams. No need for weird, special first message.
- use regular cookie auth
- use url param for session id
2014-10-09 15:12:20 -07:00
MinRK
4bc339bd95
better log messages when rejecting cross-origin requests
2014-09-16 15:38:41 -07:00
MinRK
d06e337881
only compare host:port in Websocket.check_origin
...
don't include protocol
- matches tornado's own behavior
- avoids incorrect 403 in http-behind-https proxy situations.
2014-09-15 17:17:08 -07:00
Richard Everson
be80e62340
Check time of last ping before timing out a missing pong.
2014-09-14 23:22:05 +01:00
Thomas Kluyver
7e681c1c53
Merge pull request #6302 from minrk/ws-heartbeat-timeout
...
close websocket connections on ping/pong timeout
2014-09-04 15:21:25 -07:00
MinRK
568034c349
use write_error instead of get_error_html
...
get_error_html is removed in tornado 4.0
2014-08-15 13:41:13 -07:00
MinRK
b3b168648a
close websocket connections on ping/pong timeout
...
we recently added ws pings for keep alive,
and we can now use the longs to close dead connections.
This can apparently happen when connections are not closed cleanly,
e.g. on VPNs.
Setting ws_ping_timeout = 0 disables the ping mechanism altogether.
2014-08-13 11:32:25 -07:00
MinRK
fae77bd133
remove unused project_dir
2014-07-31 11:57:38 -07:00
MinRK
d4fe081fe5
move /files/
redirect to base handlers
...
and reuse it in /nbconvert/html/…
closes #6137
2014-07-31 11:57:37 -07:00
MinRK
0c0eb43719
teach contents service about non-notebook files
2014-07-31 11:57:36 -07:00
MinRK
6cce477e07
rename notebooks service to contents service
...
minimal functional changes, committing because tests are passing.
2014-07-31 11:57:36 -07:00
Thomas Kluyver
a5b145e5a2
Merge pull request #6139 from minrk/wsping
...
send ping every 30 seconds to keep websockets alive
2014-07-24 18:55:18 -07:00
MinRK
52840fcbf8
send ping every 30 seconds to keep websockets alive
2014-07-23 16:17:07 -07:00
MinRK
579f5101f0
restore websocket_url configurable
...
allows ws to be handled via separate proxies,
as appears to be the case on OpenShift and some other hosting services.
2014-07-22 14:43:40 -07:00
rgbkrk
88e52b2746
Only allow iframe embedding on same origin.
2014-07-12 00:20:24 -05:00
MinRK
1edc97e34a
s/cors_/allow_/
...
add notes about Tornado 4, and comments, updates per review
2014-06-30 10:40:31 -07:00
MinRK
acf0da01d9
make CORS configurable
...
allows setting CORS headers.
- cors_origin sets Access-Control-Allow-Origin directly
- cors_origin_pat allows setting Access-Control-Allow-Origin via regular expression, since the header spec itself doesn’t support complex access[1]
- cors_credentials sets Access-Control-Allow-Credentials: true
To allow CORS from everywhere:
ipython notebook —NotebookApp.cors_origin='*'
2014-06-27 17:47:56 -07:00
MinRK
de0a7d7850
use utils.log.get_logger where appropriate
2014-06-24 20:16:46 -07:00
Thomas Kluyver
3b92c7c24f
Merge pull request #6011 from minrk/no-jsonapi
...
only use zmq.jsonapi when talking to zmq sockets
2014-06-18 14:45:31 -07:00
Min RK
99f52dee68
Merge pull request #5827 from takluyver/kernelspec-rest-api
...
Kernel specs REST API
2014-06-18 13:53:41 -07:00
MinRK
44d2a5b62a
only use zmq.jsonapi when talking to zmq sockets
...
use stdlib json otherwise
2014-06-18 13:41:40 -07:00
Steven Anton
f937045395
Set kernel_id before checking websocket
...
If websocket attempt fails and cross origin attempt is detected, a HTTPError(404) error is raised. However, in the process of closing connections because of this 404 error, an unhandled Attribute exception (kernel_id not an attribute) is raised. Setting the kernel_id first avoids this.
2014-06-17 12:29:55 -07:00
MinRK
b06f382e9b
interrogate kernel_info to get protocol version for adaptation
2014-05-09 12:04:08 -07:00
Thomas Kluyver
02fa348c69
Create REST API for kernel specs
2014-05-08 16:18:23 -07:00
MinRK
f824aee955
log error message when API requests fail
2014-04-23 12:41:27 -07:00
Paul Ivanov
d6f2dfefea
log refusal to serve hidden files dirs
2014-03-03 12:35:37 -08:00
Matthias BUSSONNIER
a01c112b0f
allow custom headers on all pages
2014-03-01 09:43:27 +01:00
MinRK
37cb0fbdee
remove websocket url
...
websockets should follow the kernel URL
(normal behavior is unchanged, only unused configurability is removed)
2014-02-20 22:54:36 -08:00
MinRK
a184724bdb
remove base_kernel_url
2014-02-11 21:26:10 -08:00
MinRK
e1e0b19a6a
s/base_project_url/base_url/
...
deprecate NotebookApp.base_project_url
2014-02-08 23:09:24 -08:00
Brian E. Granger
eb9e0be218
Small refactoring of is_hidden to take root as default kwarg.
2014-02-05 16:43:11 -08:00
Brian E. Granger
0c794b5d2c
404 for hidden files to not revleal their existence.
2014-02-05 15:38:34 -08:00
Brian E. Granger
243392d810
Creating and testing IPython.html.utils.is_hidden.
2014-02-05 13:09:55 -08:00
Kyle Kelley
ddc9340a6a
Handle variations of name for origin
2014-01-24 00:19:59 -06:00
Kyle Kelley
e06f501cd6
s/==/is/
2014-01-22 21:12:08 -06:00
Kyle Kelley
7efc751d0e
Name change to same_origin
2014-01-22 18:26:15 -06:00
Kyle Kelley
60ab030e52
Verify that headers are set, explicitly
2014-01-22 18:21:02 -06:00
Kyle Kelley
b12f002b35
Performing check only on open.
2014-01-22 18:16:06 -06:00
Kyle Kelley
345de4e674
Use *args, **kwargs, log.warn
2014-01-21 21:08:24 -06:00