Commit Graph

5262 Commits

Author SHA1 Message Date
Jonathan Frederic
a12da7cee4 Added comment describing output area stack. 2014-11-18 11:29:35 -08:00
Jonathan Frederic
d033d6c1ea Make output widget reactive. 2014-11-18 11:29:35 -08:00
Jonathan Frederic
a5779bcd0e Output Widget 2014-11-18 11:29:35 -08:00
Matthias Bussonnier
4cd8ee3bb2 Merge pull request #6881 from jasongrout/template-blocks
Make favicon and logo images blocks in the template
2014-11-18 16:52:06 +01:00
Matthias Bussonnier
0ee990614d Merge pull request #6923 from SylvainCorlay/toggle_button_tooltip
Tooltip on toggle button
2014-11-18 14:47:13 +01:00
Matthias Bussonnier
fe4bae10ac Actually typeset latex 2014-11-18 14:37:11 +01:00
Matthias Bussonnier
269d9ae195 Merge pull request #6959 from minrk/check-kernel-execute
don't execute if kernel is not connected
2014-11-18 14:33:00 +01:00
Thomas Kluyver
7cf7d3f202 Merge pull request #6818 from jdfreder/race_conditions
Add promises to the widget framework.
2014-11-17 17:14:08 -08:00
Jonathan Frederic
f9d730d01e Address @takluyver 's review comments 2014-11-17 14:17:17 -08:00
Jonathan Frederic
61ebd40206 Bug fix, promise not resolving. 2014-11-17 11:44:10 -08:00
Min RK
1914e27cff Don't pass IPython-specific args to non-IPython kernels
add a few FIXME notes that the IPython-kernel special treatment
will probably want to be removed in the Jupyter explosion.
2014-11-17 11:17:08 -08:00
Jonathan Frederic
8d8bf43fb9 Merge pull request #6916 from minrk/finish-5659
add Duplicate button to dashboard
2014-11-17 11:09:53 -08:00
Min RK
4a25d24806 don't execute if kernel is not connected 2014-11-17 10:27:46 -08:00
Min RK
5eff21f3c6 simplify NotebookList.duplicate with recent changes
- contents service + futures
- remove no-longer-necessary parent_item
2014-11-17 10:14:21 -08:00
Min RK
036c47d032 set min-width on tree-list buttons
avoids misaligned buttons when the content changes
2014-11-17 10:09:53 -08:00
Min RK
8bad784ce5 update add_duplicate_button with API changes
- allow duplicating regular files
- update with contents service API changes
- fix some path/name bugs found in session and kernel list
2014-11-17 10:09:53 -08:00
David Neto
6aae1e219f Add the "Duplicate" button in the main dashboard
so we can copy an existing notebook without having to start it's instance
2014-11-17 10:09:53 -08:00
David Neto
4bbd255f16 Change the order of Cancel and OK button in the renaming function so it matches the user experience for the same dialog boxes used in the main dashboard 2014-11-17 10:09:53 -08:00
Min RK
89598450f7 Merge pull request #6943 from jdfreder/numtextfix
Allow empty text box *while typing* for numeric widgets
2014-11-17 10:01:25 -08:00
Carlos Cordoba
abee155a11 Websockets were not started correctly on QtWebKit 4
- Draft76 was added to support QtWebKit 4 (and hence PhantomJS) a little
bit longer, but before this change kernel websockets failed to start on
that platform.
2014-11-15 19:26:06 -05:00
Min RK
d88f5c5898 Merge pull request #6874 from takluyver/config-js-api
Add JS config API
2014-11-15 12:52:38 -08:00
Min RK
c1a664dfb9 fix event hookup for kernel changed
event is kernel_created.Session

The spec name on the kernel also wasn't being changed when the kernel changed.
2014-11-15 12:19:35 -08:00
Jonathan Frederic
cfc45918bb Rebase fixes 2014-11-15 08:51:54 -08:00
Jonathan Frederic
907bde3b25 Address review comments 2014-11-15 08:49:45 -08:00
Jonathan Frederic
3c949aad92 Remove message promise. 2014-11-15 08:49:45 -08:00
Jonathan Frederic
fe398593e7 Typo fix 2014-11-15 08:49:44 -08:00
Jonathan Frederic
93cedc167e Address @takluyver 's comments 2014-11-15 08:49:44 -08:00
Jonathan Frederic
eb319c8aab Promise logic is infectious like a disease 2014-11-15 08:49:44 -08:00
Jonathan Frederic
b56fc606ad Promise the messages to the model 2014-11-15 08:49:44 -08:00
Jonathan Frederic
0d591619c6 Make all tests async display safe 2014-11-15 08:49:44 -08:00
Jonathan Frederic
56c5020a84 bool_test passing with slimerjs 2014-11-15 08:49:44 -08:00
Jonathan Frederic
b76d4d5c05 Use es6-promise polyfill 2014-11-15 08:49:44 -08:00
Jonathan Frederic
bed3a4cfda use es6 2014-11-15 08:48:36 -08:00
Jonathan Frederic
8c149c9112 Current state with lots and lots of debugging junk 2014-11-15 08:48:35 -08:00
Jonathan Frederic
b3c49fce66 Move the display Promise into a lower level method,
into the create view method of the widget manager.
This makes sure that views created by parent views
are also accounted for in the state/display order
guarantee.
2014-11-15 08:48:35 -08:00
Jonathan Frederic
6ee932f298 Add rsvp to setupbase 2014-11-15 08:48:35 -08:00
Jonathan Frederic
26d012b3b7 Add comment clarifying new hook function,
Refined Page Error output.
2014-11-15 08:48:35 -08:00
Jonathan Frederic
fed878fed9 Don't throw Errors with Objects as the message/ 2014-11-15 08:48:35 -08:00
Jonathan Frederic
17108fed3b Make errors clearer! 2014-11-15 08:48:35 -08:00
Jonathan Frederic
66caa322c5 Make Page Error output clearer 2014-11-15 08:48:35 -08:00
Jonathan Frederic
77789daa12 Test fixes 2014-11-15 08:48:35 -08:00
Jonathan Frederic
bbcd5cb55f Bug fixes 2014-11-15 08:48:34 -08:00
Jonathan Frederic
3870bb571b Use rsvp.js for Promises 2014-11-15 08:48:34 -08:00
Jonathan Frederic
c67dcc0dc3 Finished adding error handling. 2014-11-15 08:48:34 -08:00
Jonathan Frederic
1d1572421f Add a WrappedError class 2014-11-15 08:48:34 -08:00
Jonathan Frederic
b16b2e8749 Make display also pend on set_state. 2014-11-15 08:48:34 -08:00
Jason Grout
a4331a93cc Fix some this vs. that errors, as well as returning some promises to wait for fulfillment 2014-11-15 08:48:34 -08:00
Jason Grout
8e769a012f Load the utils module 2014-11-15 08:48:34 -08:00
Jason Grout
f11a51bb77 Dictionary key/value typo 2014-11-15 08:48:34 -08:00
Jason Grout
fc94383487 Better error messages with correct stack traces 2014-11-15 08:48:34 -08:00
Jason Grout
1b9948d178 Add some error handling for creating views and models 2014-11-15 08:48:33 -08:00
Jason Grout
686e73dfdf More simplifications due to promises 2014-11-15 08:48:33 -08:00
Jason Grout
4412c12929 Simplify code by using Promises in a better way; try_load -> load 2014-11-15 08:48:33 -08:00
Jonathan Frederic
c41dcb35e9 Proxy console.error calls 2014-11-15 08:48:33 -08:00
Jonathan Frederic
2eae36ac9a Use load_class in comms instead of callbacks. 2014-11-15 08:48:33 -08:00
Jonathan Frederic
5a745be138 Add Promise support to models. 2014-11-15 08:48:33 -08:00
Jonathan Frederic
78c0bbdb4d Fix view rendering order. 2014-11-15 08:48:33 -08:00
Jonathan Frederic
4beda5d0fb Initial stab at adding promises to the widget framework. 2014-11-15 08:48:33 -08:00
Jason Grout
ff680583c1 initial take on promises 2014-11-15 08:48:33 -08:00
Thomas Kluyver
2bfdbfc631 Fix some other bugs 2014-11-14 17:06:58 -08:00
Jonathan Frederic
ba9e7365be Fix #6385 2014-11-14 17:04:52 -08:00
Thomas Kluyver
89222b6dfd Actually define the module
I didn't forget something really obvious and important. Not at all.
2014-11-14 16:57:43 -08:00
Thomas Kluyver
cbd4929785 Use promising_ajax in config API 2014-11-14 15:00:37 -08:00
Thomas Kluyver
625c4f5bc2 Fix punctuation 2014-11-14 14:55:07 -08:00
Thomas Kluyver
d9b71ff750 Add JS config API 2014-11-14 14:55:07 -08:00
MinRK
29e49329e2 use CodeMirror.runMode to highlight in markdown
instead of highlight.js
2014-11-14 14:53:52 -08:00
Min RK
388fec4f96 Merge pull request #6924 from takluyver/contents-promises
Use promises in the JS contents API
2014-11-14 14:46:37 -08:00
Thomas Kluyver
3dbb600968 Merge pull request #6940 from takluyver/i6937
Just use notebook_path in download URLs
2014-11-14 14:32:45 -08:00
Thomas Kluyver
f7860ce9d2 Remove trailing comma 2014-11-14 13:05:55 -08:00
Thomas Kluyver
8d9d317e91 Merge pull request #6857 from jdfreder/celltoolbar_metadata_fix
Fix bug cell toolbars not redrawing on metadata change
2014-11-14 12:57:15 -08:00
Thomas Kluyver
8c962df79c Load promises polyfill from a script tag
So all JS code can assume promises work, without needing to require it.
2014-11-14 12:43:44 -08:00
Thomas Kluyver
7240d2dafc Just use notebook_path in download URLs
notebook_name is now superfluous

Closes gh-6937
2014-11-14 12:16:59 -08:00
Jonathan Frederic
f2b6697098 Use a property instead of a setter method 2014-11-14 11:22:28 -08:00
Jason Grout
d11f48eadb Make favicon and logo images blocks in the template 2014-11-14 15:28:40 +00:00
Kyle Kelley
d029a3f4a3 Fix link to /tree. 2014-11-13 17:50:57 -06:00
Thomas Kluyver
d3699c8e3b Update JS docstrings in contents API 2014-11-13 14:44:57 -08:00
Thomas Kluyver
1e53c1f924 Re-raise errors with throw instead of Promise.reject() 2014-11-13 14:25:28 -08:00
Thomas Kluyver
d04e41251d Merge pull request #6915 from minrk/contents-no-0
use Untitled instead of Untitled0
2014-11-13 14:04:00 -08:00
Thomas Kluyver
0295f5a487 Semicolons 2014-11-13 12:30:26 -08:00
Min RK
f569ccc58f Merge pull request #6920 from SylvainCorlay/serialize_date
Dates and Strings are JavaScript objects, and _pack_models behaves incorrectly in these cases.
2014-11-13 12:26:02 -08:00
Min RK
dcfaaf6acb Merge pull request #6922 from SylvainCorlay/checkbox_height
Correct height for the checkbox widget
2014-11-13 12:24:21 -08:00
Min RK
48d77b3f03 Merge pull request #6886 from minrk/tornado-4
require tornado 4
2014-11-13 12:23:32 -08:00
Thomas Kluyver
56320588da Return JSON from contents API checkpoint methods 2014-11-13 12:20:53 -08:00
Thomas Kluyver
aecb4bffa5 All aboard the promise train 2014-11-13 12:17:49 -08:00
Thomas Kluyver
11cfcc40d4 Use promises for GET requests 2014-11-13 11:42:52 -08:00
Thomas Kluyver
9b2dac3fc1 Infrastructure for AJAX requests returning ES6 promises 2014-11-13 11:42:37 -08:00
Sylvain Corlay
7ac82931ca Tooltip on toggle button 2014-11-13 19:04:06 +00:00
Sylvain Corlay
2a026ed45b Test packing/unpacking instances of Date and String 2014-11-13 18:50:21 +00:00
Sylvain Corlay
54d6d18baf Correct height for checkbox widget 2014-11-13 17:46:19 +00:00
Sylvain Corlay
604d0bb666 A String is an object 2014-11-13 15:42:31 +00:00
Sylvain Corlay
4b6c753f3f Dates are JavaScript objects, and _pack_models returns an empty object 2014-11-13 15:37:56 +00:00
Min RK
0a22217f7e Merge pull request #6900 from takluyver/contents-api-get-as-type
Contents API get as type
2014-11-12 21:43:50 -08:00
Min RK
e4e1d47203 Merge pull request #6694 from takluyver/config-rest-api
Add REST API for retrieving, storing and updating config
2014-11-12 21:40:30 -08:00
Min RK
0f8127c36f Merge pull request #6735 from Carreau/native-map
Use native map when possible
2014-11-12 16:31:51 -08:00
Min RK
456e65b1f3 adjustments to filename increment
- start with no number (Untitled0 -> Untitled.ipynb)
- copy of copy increments instead of adding another `-Copy` (copy Foo-Copy1.ipynb gives Foo-Copy2.ipynb, not Foo-Copy1-Copy1.ipynb)
- copy file to new folder starts with the original filename, instead of unconditional `-Copy0`
2014-11-12 16:24:35 -08:00
Thomas Kluyver
0f44eced72 Put frontend config files in profile_foo/nbconfig/ subdir 2014-11-12 15:53:35 -08:00
Min RK
47f307e4c8 don't use text mode in mkstemp
causes double-encoding of newlines,
preventing newline arg from having desired effect.
2014-11-12 14:17:32 -08:00
Min RK
b5e7ce30ca handle setting Widget.comm = None
which is done in `Widget.close`

fixes loads of warnings in widget test output, caused every time a widget is closed.
2014-11-12 11:29:10 -08:00
Thomas Kluyver
c9b6e30526 Actually pass URL params with API request 2014-11-11 18:18:36 -08:00
Thomas Kluyver
a469d7658a Add test for /tree redirects 2014-11-11 15:11:54 -08:00
Thomas Kluyver
f1f81e2efa Rename get_model() to get() 2014-11-11 14:51:21 -08:00
Thomas Kluyver
6f48b58b18 Fix various review comments 2014-11-11 14:46:53 -08:00
Thomas Kluyver
b5a6cb7da1 Allow specifying format when getting files from contents API 2014-11-11 14:20:56 -08:00
Min RK
287d572fb3 Merge pull request #6855 from takluyver/new-notebook-async
Open new windows before creating new notebooks

closes #6849
2014-11-11 14:18:00 -08:00
Min RK
a257e580a0 Merge pull request #6854 from takluyver/post-new-terminal
Create new terminals with POST request to API
2014-11-11 14:12:54 -08:00
Thomas Kluyver
e453b160b1 Some fixes for the tree view 2014-11-11 12:32:24 -08:00
Thomas Kluyver
f9db65ab6f Expose and use get requests specifying type in the JS 2014-11-11 12:32:13 -08:00
Thomas Kluyver
ce6dd40c5c Add type parameter for contents GET requests 2014-11-11 12:17:36 -08:00
Thomas Kluyver
c7529c53eb Eliminate remaining uses of extra_settings 2014-11-11 11:00:19 -08:00
Thomas Kluyver
ef98d48921 Disable passing extra AJAX settings to Contents.new() 2014-11-11 10:58:31 -08:00
Thomas Kluyver
b046af083c Fix some bugs in deleting notebooks from the dashboard 2014-11-11 10:58:31 -08:00
Thomas Kluyver
260ebcebcf Open window before creating new notebook
Avoids the need for synchronous requests.
2014-11-11 10:57:32 -08:00
Min RK
3870a30ce4 contents.new_untitled to match Python API 2014-11-10 17:29:53 -08:00
Min RK
da832ef59f split ContentsManager.new, add ContentsManager.new_untitled 2014-11-10 14:52:14 -08:00
Min RK
39041a9f03 address review in contents service
- various docstrings, comments clarified and updated
- misc typos
- fix and test creating an untitled directory via POST
- only define `message` if there's something to say
2014-11-10 14:02:21 -08:00
Min RK
ba370731a5 fix and test path regexes
- require leading `/`
- match empty string
- disallow consecutive `//`

This means that path_regex should be included as `/api/whatever%s`, not `/api/whatever/%s`
2014-11-10 14:02:21 -08:00
Min RK
5c2ae3e92c fix link-following logic in directory nav
avoid infinite recursion by recording which links have been visited
2014-11-10 14:02:20 -08:00
Min RK
81764cc1e0 update save test
fix some event waiting while there
2014-11-10 14:02:20 -08:00
Min RK
74c897cc0b unicode! 2014-11-10 14:02:20 -08:00
Min RK
bc4f0b32bb rename ContentsManager.create_file->new
consistent with js API
2014-11-10 14:02:19 -08:00
Min RK
8407ba3a08 update frontend with path/name changes
- remove name from models
- path is full path (contains name)
2014-11-10 14:02:19 -08:00
Min RK
62dedf921b remove notebook['name'] from sessions 2014-11-10 14:02:19 -08:00
Min RK
b6c4baa2fb remove copy via PUT
only copy via POST to directories
2014-11-10 14:02:19 -08:00
MinRK
3ada0c2c27 Remove separate 'path', 'name' in Contents API
- path is full path (including name)
- name is only used for read-only convenience, and plays no role in any API
- remove 'untitled upload' (POST with content and no path)
2014-11-10 14:02:18 -08:00
Kyle Kelley
464967d7a9 Merge pull request #6876 from minrk/falloff-reconnect
Add exponential falloff to kernel reconnect
2014-11-10 12:28:31 -06:00
Min RK
6d78644411 s/Connection lost/Not Connected/ 2014-11-09 10:06:48 -08:00
Min RK
4871cc4f1d wait for kernel_ready after ws_closed_error 2014-11-08 19:23:20 -08:00
Min RK
19bcc5fed9 bump minimum tornado version to 4.0
remove various websocket workaround for tornado 3
2014-11-07 22:39:25 -08:00
Min RK
f8d59bcd9e forward-port draft76 websockets
from tornado-3.2.2

only enabled during testing with phantomjs
2014-11-07 22:39:24 -08:00
Min RK
c0f64529bf allow js tests to run with tornado 4 and phantomjs 2014-11-07 22:19:41 -08:00
Min RK
42f0684994 add events to ws_closed_error in kernel.js 2014-11-07 16:10:50 -08:00
Min RK
59b54eba53 add Reconnect to kernel menu 2014-11-07 15:42:40 -08:00
Min RK
fe00509f32 add sticky Connection lost notification
when reconnect process gives up
2014-11-07 15:42:40 -08:00
Min RK
a6d427e5c9 add exponential falloff for reconnect
avoids constant reconnect attempts every 3 seconds forever

gives up after 6 tries (last timeout 64s)
2014-11-07 14:52:15 -08:00
Thomas Kluyver
5f456ef438 Document limitations of symlink parameter to install_nbextension
Closes gh-6239
2014-11-07 10:48:06 -08:00
Min RK
7cee09381f Merge pull request #6861 from quantopian/template_dir_option
DEV: Support for configurable list of extra jinja template directories.
2014-11-06 21:34:01 -08:00
Thomas Kluyver
9a7c6e78d9 JS Contents API doesn't need dialog module 2014-11-06 13:52:47 -08:00
Scott Sanderson
8a6af683ce DOC: Fix typo in comment. 2014-11-06 14:59:44 -05:00
Thomas Kluyver
ae6ae8f7b0 Return updated config from PATCH requests 2014-11-06 11:18:05 -08:00
Thomas Kluyver
c26b0f6961 Fix writing JSON on Python 2 2014-11-06 11:18:05 -08:00
Thomas Kluyver
425d5a1c02 Apply JSON config updates recursively 2014-11-06 11:18:05 -08:00
Thomas Kluyver
6786f86c63 Fix docstring, validate JSON on PUT 2014-11-06 11:18:04 -08:00
Thomas Kluyver
a76a546627 Add REST API for retrieving, storing and updating config 2014-11-06 11:18:04 -08:00
Scott Sanderson
c1196da096 DEV: Add IPython.html to the default template path.
This makes it possible to override a file with a template that also
inherits from that file.

For example, this makes it possible to override a single block of
notebook.html by creating a file called notebook.html that inherits from
templates/notebook.html.
2014-11-05 13:29:31 -05:00
Scott Sanderson
cd1304961f DEV: Support for configurable list of extra jinja template directories. 2014-11-05 00:19:17 -05:00
Min RK
c88bd5025a distinguish capture_output from buffer_output
allow capturing output without silencing it,
which is useful for slimerjs,
which requires looking at output to determine failure.
2014-11-04 15:59:27 -08:00
Jonathan Frederic
bfdf9596fd Fix bug where cell toolbars are not redrawn,
when cell metadata is changed.
2014-11-04 14:03:52 -08:00
Thomas Kluyver
538fcbc025 Close new window on error creating terminal 2014-11-04 10:44:08 -08:00
Thomas Kluyver
e6939f9aa5 Merge pull request #6846 from minrk/deprecate-heading-ui
deprecate heading cells in UI
2014-11-04 10:06:47 -08:00
Thomas Kluyver
8da4e89e3a Make a window immediately, and set its location on response
Avoids the need for async:false
2014-11-04 09:53:17 -08:00
v923z
a2081d042e replaced nbmodel.orig_nbformat by orig_nbformat 2014-11-04 15:10:55 +01:00
v923z
9c122dcd15 fixed notebook checking code 2014-11-04 14:57:44 +01:00
Min RK
ef49e32ef0 Merge pull request #6783 from takluyver/contentsmanager-js
contents.js wrapper for contents service
2014-11-03 17:09:49 -08:00
Thomas Kluyver
b7a558d5b9 Use synchronous request for creating new notebooks
To get round popup blockers
2014-11-03 15:29:09 -08:00
Min RK
04bcfa626d deprecate heading cells in UI
- removed from Kernel Menu
- Main toolbar warns via shouty dialog
- keyboard shortcuts still work to make headings in markdown cells, with no warning
2014-11-03 15:05:54 -08:00
Thomas Kluyver
2a497c16eb load_file -> load 2014-11-03 14:46:49 -08:00
Thomas Kluyver
1f2e4cc6c3 Fix passing empty list to draw_notebook_list() 2014-11-03 14:41:50 -08:00
Thomas Kluyver
a4f869aa8b Rename methods to remove _file suffix 2014-11-03 14:40:09 -08:00
Thomas Kluyver
5279418acf Make Contents.new more generic 2014-11-03 14:29:39 -08:00
Thomas Kluyver
4452754a6b Set notebook nbformat in toJSON 2014-11-03 14:20:12 -08:00
Min RK
6b67a69c22 don't assume converted notebooks are old
in notebook.js dialogs, which can now be triggered
by nbformat 4 from the future.
2014-11-03 11:50:11 -08:00
Thomas Kluyver
963921c4ff Merge pull request #6832 from minrk/request-only-once
actually send only one kernel_info request
2014-11-03 10:37:17 -08:00
Thomas Kluyver
684516c79f Fix copy-paste mistakes 2014-11-03 10:21:38 -08:00
Thomas Kluyver
658eb39c56 Remove one more unnecessary cache parameter 2014-11-03 10:19:51 -08:00
Thomas Kluyver
2962a3ce17 Remove some unnecessary cache: false parameters
According to the jQuery docs, this is only needed for GET and HEAD
requests.
2014-11-03 10:19:51 -08:00
Thomas Kluyver
a2f3e23fd8 Add copy_file to contents JS API 2014-11-03 10:19:51 -08:00
Thomas Kluyver
1ae6be218d Fix require config 2014-11-03 10:19:51 -08:00
Thomas Kluyver
b8f9dc07e2 Fix error callback when deleting file 2014-11-03 10:19:51 -08:00
Kester Tong
9797a6b7c0 typo fix 2014-11-03 10:19:51 -08:00
Kester Tong
89df330129 Modifies Contents API to return Error objects
Modfies the Contents class to return JavaScript Error objects instead of passing on the return values from $.ajax().  This has two advantages.  First, it allows the content manager to parse errors and give more informative messages than the ajax response.  Second, it makes the Contents interface more general, since other kinds of backends might generate client-side errors.
2014-11-03 10:19:50 -08:00
Thomas Kluyver
e1cbaf3d3c Fix spelling 2014-11-03 10:18:28 -08:00
Thomas Kluyver
f8ec8d4abe Various minor fixes from review 2014-11-03 10:18:28 -08:00
Thomas Kluyver
ea314a2a86 Rename callback parameters to success/error 2014-11-03 10:18:28 -08:00
Thomas Kluyver
060dd1305c Miscellaneous JS fixes 2014-11-03 10:18:28 -08:00
Thomas Kluyver
c1c591336e Some more event cleanup 2014-11-03 10:18:28 -08:00
Thomas Kluyver
cf828ccf4e Cut out some superfluous events 2014-11-03 10:18:28 -08:00
Thomas Kluyver
c9bd254735 Make contents JS API consistent 2014-11-03 10:18:28 -08:00
Thomas Kluyver
29d88a91a6 Standardise JS checkpointing API, use it for notebooks 2014-11-03 10:18:27 -08:00
Thomas Kluyver
14106cbd66 Move contents API module into services 2014-11-03 10:18:27 -08:00
Thomas Kluyver
a10dea4cd5 Add Contents.api_url convenience function 2014-11-03 10:18:27 -08:00
Thomas Kluyver
9538726b16 Don't do UI stuff in contents API module 2014-11-03 10:18:27 -08:00
Thomas Kluyver
478648bde5 Page URL is /notebooks/..., not contents 2014-11-03 10:18:27 -08:00
Thomas Kluyver
c661c85abd Add missing semicolon 2014-11-03 10:18:27 -08:00
Jeff Hemmelgarn
47a88f0e1d Remove version 2014-11-03 10:18:27 -08:00
Jeff Hemmelgarn
dab99c599f Remove unnecessary backwards compatibility code 2014-11-03 10:18:27 -08:00
Jeff Hemmelgarn
53463898eb Move contentmanager to contents 2014-11-03 10:18:27 -08:00
jhemmelg
5109be2d28 ContentManager function signatures updated 2014-11-03 10:18:04 -08:00
jhemmelg
496fa1901f Initial interface for javascript contentmanagers
contentmanager.js is going to be a js proxy for the current
filenbmanager.py.  This will allow a contentmanager for Google Drive to
be created.
2014-11-03 10:18:04 -08:00
Jeff Hemmelgarn
09e0ff93d8 Fix a few problems with cherry-picked commits
api/notebooks => api/contents
add type to JSON model
fix a few things in notebooklist.js
2014-11-03 10:18:04 -08:00
KesterTong
3994d4d56a Adds configuration options to use Google Drive content manager
Adds the key contentmanager_js_source to webapp_settings that allows for specifying the content manager JavaScript source file.  Also adds a NotebookManager subclass, ClientSideNotebookManager, which does minimal logic.  This class is used when the JavaScript content manager doesn't use the Python notebook manager, but rather implements that logic client side, as is the case for the Google Drive based content manager.

A sample command line that uses the Google Drive content manager, and the ClientSideNotebookManager, is

ipython notebook --NotebookApp.webapp_settings="{'contentmanager_js_source': 'base/js/drive_contentmanager'}" --NotebookApp.notebook_manager_class="IPython.html.services.notebooks.clientsidenbmanager.ClientSideNotebookManager"
2014-11-03 10:18:04 -08:00
KesterTong
952ac7d0d8 Moves load_notebook to ContentManager and adds new_notebook to Google Drive version 2014-11-03 10:17:12 -08:00
KesterTong
e3ef5d3b70 Moves list_notebooks to ContentManager 2014-11-03 10:17:12 -08:00
KesterTong
dfcf14f26c Uses events for ContentManager.save_notebook
Modifies ContentManager.save_notebook() to use events, so that the Notebook instance can listen for success or failure events.  Also moves some logic out of save_notebook()
2014-11-03 10:17:12 -08:00
KesterTong
04fc61285f Use events for rename_notebook
Triggers events on ContentManager.rename_notebook success and failure.  Also moves some logic out of this method.
2014-11-03 10:17:12 -08:00
KesterTong
75d7e69fc8 Use $.proxy instead of that 2014-11-03 10:17:12 -08:00
KesterTong
9881d17bb1 Remove unused event
This event never seems to get used.
2014-11-03 10:17:12 -08:00
KesterTong
61a911fc0c Fix constructor comments
Add content_manager as a dictionary key to the options param passed in to the NotebookList and Notebook constructors.
2014-11-03 10:17:12 -08:00
KesterTong
0aada3ac5d Remove deleted notebook from notebook list
Uses events to notify the NotebookList when the content manager deletes a notebook, and remove the deleted notebook in response to such an event.
2014-11-03 10:17:12 -08:00
KesterTong
077ba397c1 Removes unnecessary parameter from ContentManager.delete_notebook 2014-11-03 10:17:12 -08:00
Jeff Hemmelgarn
99323b1173 Move saving to contentmanager
Make notebook.save_notebook call contentmanager.save_notebook.
2014-11-03 10:17:12 -08:00
Jeff Hemmelgarn
5b5e194082 Move notebook.rename to contentmanager
Make notebook.rename call contentmanager.rename
2014-11-03 10:17:12 -08:00
Jeff Hemmelgarn
7043aa1b9e switch notebook.delete to use contentmanager
Make notebook.delete call contentmanager.delete_notebook
2014-11-03 10:17:12 -08:00
Jeff Hemmelgarn
728c6f005f Move deleting a notebook to contentmanager.js
Move code to handle deleting a notebook from notebooklist to
contentmanager.
2014-11-03 10:17:12 -08:00
KesterTong
993833d018 Replace other methods with ContentManager.new_notebook
Replaces Notebook.new_notebook and NotebookList.new_notebook with ContentManager.new_notebook
2014-11-03 10:17:11 -08:00
KesterTong
d17ca85f5b Adds dialog on new_notebook failure
This logic doesn't really belong in ContentManager.  It would be better to trigger an event, which is handled somewhere else.  But there's no obvious place to put this event, so creating the error dialog inside the new_notebook method is ok for now.
2014-11-03 10:17:11 -08:00
KesterTong
5717a3eb10 Make ContentManager stateless
Don't store notebook_path in ContentManager, because this sort of state (in addition to notebook_name) can change, and keeping track of this logic doesn't seem to be a part of the file management system.  Instead, this logic can be left to the Notebook instance (and possible other places that manage it).  This makes refactoring easier, and avoids having to replicate this logic in every implementation of ContentManager.
2014-11-03 10:17:11 -08:00
KesterTong
99f2647edd Use IPython style constructor 2014-11-03 10:17:11 -08:00
KesterTong
21a5b5a965 Style and bug fixes 2014-11-03 10:17:11 -08:00
jhemmelg
112a74c566 ContentManager function signatures updated 2014-11-03 10:17:11 -08:00
jhemmelg
d5a84bb8a4 Initial interface for javascript contentmanagers
contentmanager.js is going to be a js proxy for the current
filenbmanager.py.  This will allow a contentmanager for Google Drive to
be created.
2014-11-03 10:17:11 -08:00
Thomas Kluyver
a16a3d0270 Merge pull request #6045 from minrk/nbformat4
nbformat v4
2014-11-03 09:58:33 -08:00
Min RK
96183a60a0 create new terminals with POST /api/terminals
instead of GET terminals/new

to be consistent with creating new notebooks.

We had to stop using GET notebooks/new
because browsers would create new notebooks when making preview thumbnails for commonly visited pages, etc.
I assume the same issue would apply to terminals
2014-11-02 11:09:03 -08:00
Min RK
196b91e73b Merge pull request #6828 from takluyver/terminal-list
Add terminals tab to the dashboard
2014-11-02 10:46:31 -08:00
Min RK
525f6a7561 fix backward f, nb args for nbformat.write 2014-11-01 16:41:13 -07:00
MinRK
7cf53c998c restore ability to sign v3 notebooks 2014-11-01 16:41:13 -07:00
MinRK
53ef8e1e1e remove unused OuptutArea.rename_keys 2014-11-01 16:41:12 -07:00
MinRK
af735018f3 don't use nbformat.current in IPython.html
use top-level nbformat.read/write, v4 directly for compose
2014-11-01 16:41:11 -07:00
MinRK
ae0b46aa3f address review from takluyver
- various typos
- discuss multi-line strings in nbformat doc
- testing cleanup
- py3compat simplification
- don't use setdefault when composing notebook nodes
- mime-type fix in svg2pdf
2014-11-01 16:41:09 -07:00
MinRK
12f94ae2a2 use from_dict for dict->notebook
not confusing to_notebook_json
2014-11-01 16:41:09 -07:00
MinRK
d979f4bedd better regex replacement for MarkdownCell.set_heading_level
(c/o Matthias)
2014-11-01 16:41:07 -07:00
MinRK
dd95b1ef5f remove heading cells in v4 2014-11-01 16:41:07 -07:00
MinRK
458dcd12e3 make markdown heading input match output size 2014-11-01 16:41:06 -07:00
MinRK
6ca260e611 output[mime/type] -> output.data[mime/type] in javascript 2014-11-01 16:41:05 -07:00
MinRK
a50042745f semicolons, you guys! 2014-11-01 16:41:05 -07:00
MinRK
baf65234b9 move mime-bundle data to rich output.data
from top-level output keys
2014-11-01 16:41:04 -07:00
MinRK
09acc6c854 msgspec: stream.data -> stream.text 2014-11-01 16:41:04 -07:00
MinRK
14cfb2efc1 s/prompt_number/execution_count in nbformat 4 2014-11-01 16:41:03 -07:00
MinRK
07079095a8 update html/js to nbformat 4 2014-11-01 16:41:02 -07:00
Min RK
3e82ea8319 actually send only one kernel_info request
store the Future for the initial request,
allowing subsequent requests to wait on the same pending reply.

Previously, any incoming requests that arrived while waiting for the first reply would send their own request.
2014-11-01 13:38:55 -07:00
Matthias Bussonnier
63d4534959 Get pre_get to work and make session logs when adapter changes 2014-11-01 19:39:40 +01:00
Thomas Kluyver
8e1914a446 Merge pull request #6825 from minrk/bad-kernelspecs
log kernel specs that fail to load
2014-10-31 18:05:37 -07:00
Thomas Kluyver
d32322e332 Show terminals as terminals/name
Bigger click target
2014-10-31 17:28:51 -07:00
Thomas Kluyver
4025b57ed8 Only display terminals in dashboard if terminals are available 2014-10-31 15:56:53 -07:00
Min RK
1d7f8803e0 use ?download=1 to trigger download in /files/
sets `Content-Disposition: attachment...`

- master sets this unconditionally
- 2.x sets this iff file is a notebook
2014-10-31 15:45:30 -07:00
Thomas Kluyver
65e664b143 Add list of available terminals in the dashboard 2014-10-31 15:42:52 -07:00
Min RK
e329a79bc8 language is removed from kernel specs
don't use it when testing kernel spec API
2014-10-31 15:09:51 -07:00
Min RK
a2575af6a7 log kernel specs that fail to load 2014-10-31 15:03:30 -07:00
Matthias Bussonnier
1281319cc9 Merge pull request #6820 from takluyver/terminals-tornado-3
Fix terminals with Tornado 3
2014-10-31 19:23:41 +01:00
Thomas Kluyver
ce14f905e0 Fix terminals with Tornado 3
The websocket handler auth checking was calling clear_cookie(), which
threw an error because it doesn't make sense for Websockets. It doesn't
seem important, and we silence it in our other websocket handlers, so
silencing it here too.
2014-10-30 18:38:31 -07:00
Thomas Kluyver
db6cd028ea Merge pull request #6793 from takluyver/langinfo
Move language info from kernelspec to kernel_info_reply
2014-10-30 16:15:19 -07:00
Thomas Kluyver
adeefa8578 Merge pull request #6493 from SylvainCorlay/python_widget_registry
Creating a widget registry on the Python side.
2014-10-30 16:10:50 -07:00
Min RK
965102ba60 Merge pull request #6554 from Carreau/itsallaboutme
Add About IPython
2014-10-30 14:23:16 -07:00
Scott Sanderson
b4c5755ad4 BUG: Set file encoding for IPython.html.terminal.handlers. 2014-10-30 02:43:22 -04:00
Sylvain Corlay
ed5e602950 jupyter -> IPython 2014-10-29 21:52:03 -04:00
Sylvain Corlay
374459e5e7 Adding custom keys for core jptr notebook 2014-10-29 21:52:03 -04:00
Sylvain Corlay
18e77a090a registering core widgets 2014-10-29 21:52:03 -04:00
Sylvain Corlay
e5b347804a widget registry 2014-10-29 21:52:03 -04:00
Thomas Kluyver
1abce7c065 Merge pull request #6807 from minrk/debug-ws-open
debugging websocket connections
2014-10-29 18:13:19 -07:00
Min RK
5ff9ded54a Merge pull request #6614 from takluyver/nb-terminal-ui
Terminal emulator in the notebook
2014-10-29 12:35:29 -07:00
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
Mateusz Paprocki
3d825cfbcc Allow to specify CodeMirror's syntax mode as MIME
This is required for e.g. Scala, where the mode is given as
text/x-scala, but the actual implementation is in clike mode.
This wouldn't be an issue, but IPython loads modes lazily, so
you need both mode name and MIME to resolve correct file and
configure CodeMirror.
2014-10-29 16:57:57 +01:00
Bussonnier Matthias
5ecf6efdac cache sys-info 2014-10-29 14:55:12 +01:00
Jonathan Frederic
ba77877c18 Rebase fixes 2014-10-28 17:55:36 -07:00
Jonathan Frederic
04d0874a80 JS test fix 2014-10-28 16:49:46 -07:00
Jonathan Frederic
db10ae8f2d s/target_name/widget_class 2014-10-28 16:49:46 -07:00
Jonathan Frederic
cb2c76999c Address some more review comments... 2014-10-28 16:49:46 -07:00
Jonathan Frederic
3cb5ac6fbb Clarified API for the create_model function,
Also added a test!
2014-10-28 16:49:46 -07:00
Jonathan Frederic
a68df8a8b1 Address @minrk 's review comments. 2014-10-28 16:49:46 -07:00
Jonathan Frederic
fbca0bfa3f Rebase fixes. 2014-10-28 16:49:45 -07:00
Jonathan Frederic
5a655b24da Fixed typo. 2014-10-28 16:49:45 -07:00
Jonathan Frederic
2b5ebb9e8f Make Python push initial state.
Also added initial state push callback.
2014-10-28 16:49:45 -07:00
Jonathan Frederic
e7ee9c12b3 Enable widget instanciation from front-end. 2014-10-28 16:44:02 -07:00
Min RK
b26706ba69 Merge pull request #6800 from takluyver/mdcell-render-event
Add event for Markdown cell rendered
2014-10-27 20:04:26 -07:00
Min RK
e5aa7ef70b Merge pull request #6763 from takluyver/require-widget-models-comm-targets
Load comm targets and widget models from requirejs modules
2014-10-27 19:59:41 -07:00
Thomas Kluyver
659accf69e Add event for Markdown cell rendered 2014-10-27 17:39:24 -07:00
MinRK
a5a43e2746 Don't resend kernel info requests if a bad reply is received 2014-10-26 19:06:48 -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
Thomas Kluyver
c8af873aeb Remove override.css from the template 2014-10-25 17:15:50 -07:00
Thomas Kluyver
ea896c3f16 Compatibility fix for Tornado 3.x 2014-10-25 17:15:49 -07:00
Thomas Kluyver
8917e9951e Move terminal CSS into LESS file 2014-10-25 17:15:36 -07:00
Thomas Kluyver
d352d52bd8 Add comment explaining 1.02 factor 2014-10-25 17:15:36 -07:00
Thomas Kluyver
52be8bdf6b HTML fix 2014-10-25 17:15:36 -07:00
Bussonnier Matthias
1b200e5504 recompute dummy size dynamically + styling in css 2014-10-25 17:15:36 -07:00
Thomas Kluyver
1db2868d37 Use relative URL for redirect in NewTerminalHandler 2014-10-25 17:14:40 -07:00
Thomas Kluyver
7ee896861c Don't load html.terminal for tests if terminado not installed 2014-10-25 17:14:40 -07:00
Thomas Kluyver
a907d8f7f4 Put terminal handlers under base_url 2014-10-25 17:14:40 -07:00
Thomas Kluyver
cbc70a7de7 Add authentication for terminal websockets 2014-10-25 17:14:40 -07:00
Thomas Kluyver
b929b3f09e Initial REST API for terminals 2014-10-25 17:14:40 -07:00
Thomas Kluyver
9c0084e615 Multiple terminals and conditional initialisation 2014-10-25 17:14:40 -07:00
Thomas Kluyver
d4676bf2ad Terminal basically working
Still need to deal with things like authentication
2014-10-25 17:14:40 -07:00
Thomas Kluyver
d211ebf067 Basic infrastructure for terminal page 2014-10-25 17:14:39 -07:00
Thomas Kluyver
9c7d73a05e Move language info from kernelspec to kernel_info_reply 2014-10-24 16:24:24 -07:00
Thomas Kluyver
a77b5e8e31 Support specifying requirejs modules for comm targets 2014-10-24 12:15:55 -07:00
Thomas Kluyver
031530da42 Support specifying requirejs modules for widget models 2014-10-24 12:14:43 -07:00
Min RK
a58b215421 Merge pull request #6768 from jdfreder/remotetestfix
Fix an issue in the `kernel_running` function of the JS tests,
2014-10-21 17:14:05 -07:00
Jonathan Frederic
880e7be68a Merge pull request #6766 from takluyver/i6764
Open ipynb download in a new window instead of changing the URL
2014-10-21 16:46:32 -07:00
Jonathan Frederic
5366cef17d Fix an issue in the kernel_running function of the JS tests,
This fix allows the JS test to be ran against a remote server
with a higher than LAN latency.  This bug in our testing
framework was exposed when running `iptest js/widgets --url`
against tmpnb.
2014-10-21 16:43:30 -07:00
Thomas Kluyver
5ede5318d5 Merge pull request #6751 from jdfreder/iptestgun
Added --url option to iptest
2014-10-21 15:18:34 -07:00
Thomas Kluyver
eacd05505c Open download in a new window instead of changing the URL
Closes gh-6764
2014-10-21 14:54:58 -07:00
Jonathan Frederic
157e51f882 Last review comments? 2014-10-21 14:54:32 -07:00
Jonathan Frederic
fc3178e13e Make order of operations more explicit. 2014-10-21 14:28:28 -07:00
Jonathan Frederic
d33d55bcd8 Review comments 2014-10-21 13:46:13 -07:00
Jonathan Frederic
79670e8afb Merge pull request #6494 from takluyver/widget-comm-require
Allow widget views to be loaded from require modules
2014-10-21 10:11:41 -07:00
Jonathan Frederic
c3b1bf795e Add --url option to iptest 2014-10-20 20:29:01 -07:00
Thomas Kluyver
f0f6c0d29b Merge pull request #6677 from minrk/services
remove unnecessary 'js' subdir from services
2014-10-20 11:21:53 -07:00
Thomas Kluyver
c39939869f Merge pull request #6653 from mattpap/fix_ansispan
Fix IPython.utils.ansispan() to ignore stray [0m
2014-10-20 09:19:00 -07:00
Mateusz Paprocki
61c17c8ef6 Update static/style/{ipython,style}.min.css 2014-10-20 11:25:09 +02:00
Mateusz Paprocki
439098a9d5 IPython.{util->utils}.fixConsole() in html/tests/base 2014-10-20 11:12:10 +02:00
MinRK
a67abc297d remove unnecessary 'js' subdir from services
part of the point of services is that they are just code, so they won't have js/less/etc. files.
2014-10-19 15:40:50 -07:00
Matthias Bussonnier
103d5dc9b7 Merge pull request #6720 from takluyver/kernelspec-pygments-lexer
Respect kernelspec metadata for syntax highlighting in nbconvert
2014-10-19 11:11:03 +02:00
Matthias Bussonnier
d269912958 Merge pull request #6110 from minrk/binarycomm
support binary buffers in comm messages
2014-10-19 11:03:24 +02:00
MinRK
7fd161599b cleanup serialize per review 2014-10-18 19:04:57 -07:00
MinRK
ab9e2b496d move grid-float-breakpoint to 540px
collapses navbar before running over to two lines
due to help/indicator collision.
2014-10-18 18:21:07 -07:00
MinRK
e36df49c5f tweak collapsed navbar style
- notification and indicators appear above menu on small screen
- collapsed menu button floats left
2014-10-18 18:21:07 -07:00
MinRK
5ccbd18e5d collapse the navbar on narrow windows
so it doesn't take up a bunch of vertical height when not in use
2014-10-18 18:21:07 -07:00
MinRK
36cd457b11 move the navbar-collapse transition to xs
avoids stacked navbar on narrow (but not too narrow) windows
2014-10-18 18:21:06 -07:00
Matthias Bussonnier
197c66d0d5 Use native map when possible
Implemented on all modern browser.

There is a small behavior difference between $.map and Array.prototype.map
but we don't rely on it.

(jQuery flatten arrays and filters null-like)
2014-10-18 20:09:34 +02:00
Matthias Bussonnier
f8fe41dd67 add test warning shadow 2014-10-17 16:57:40 +02:00
Matthias Bussonnier
f116510592 remove debug 2014-10-17 15:17:08 +02:00
Matthias Bussonnier
8aa3815130 Add notion of action that differs from shortcuts.
This decouple the notion of shortcut from the notion of executed "action"
This allow the shortcuts manager to be purely describe as data, and the
same action to be later refered to either from the shortcut, from a toolbar
button or a menu.

This also implement a more complete keyboard shortcut handler which is
able ton interpete sequences like `Cmd-X,Meta-v` By storing the
shortcuts in a tree.
2014-10-17 15:11:10 +02:00
Matthias Bussonnier
7ae250bbeb Merge pull request #6693 from minrk/please-no-jsonp
set contentType='application/json'
2014-10-17 14:17:20 +02:00
Matthias Bussonnier
3b31574971 Merge pull request #6697 from minrk/less-1.7.5
require less >= 1.7.5
2014-10-17 14:15:54 +02:00
Thomas Kluyver
ddbe427dfa Add pygments_lexer key to kernelspec 2014-10-16 15:28:02 -07:00
Matthias Bussonnier
bd8413dfc7 Use low overhead object heritence in Js (Object.create vs new)
the use of

    XX.prototype = new YY();

Does trigger the constructor of YY without the nead for it. `Object.create`
does go around this limitation and target browser that are relatively Old.

Cf https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create

for more info

It might help to get rid of some logic in constructors that check wether some
options are passed in, that were causing errors on noteboko load.  Typically
`if(element){ }` on Abstract  `Cell` constructor.
2014-10-16 21:20:35 +02:00
MinRK
492b80d05f require less >= 1.7.5
fixes bug where `vbox > *` style was applied to `vbox()` classes
2014-10-16 11:07:14 -07:00
MinRK
95355e6ff2 Merge pull request #6624
closes #6656
closes #6399
2014-10-16 10:18:21 -07:00
Jonathan Frederic
356743495b Merge pull request #6666 from jdfreder/widget_numbers
Add version trait to Widget base,
2014-10-16 09:45:12 -07:00
MinRK
868994087f finish up FilesHandler
- load FilesHandler like everything else
- remove copy/paste leftovers
2014-10-16 09:26:27 -07:00
Thomas Kluyver
fddccc08de Merge pull request #6711 from minrk/invoke
use invoke instead of fabric
2014-10-16 09:19:41 -07:00
Matthias Bussonnier
6766daa397 Merge pull request #6705 from jhamrick/celltoolbar-justify
Right-justify celltoolbar instead of reversing
2014-10-16 17:09:07 +02:00
Matthias Bussonnier
e7c2c369e0 Add about dialog in Notebook Help Menu.
This allow to get info on version of IPython when running remotely.
The about dialog also send a kernel info request and display the banner
which is useful for non-python kernel that don't match IPython version
2014-10-16 17:04:19 +02:00
MinRK
920d49593c refuse to run js tests with phantom + tornado 4
websocket connections fail with 426 because phantomjs implements a super old draft of webosockets that recent tornado doesn't support

This refused to run in that situation with an informative message.
2014-10-15 17:38:59 -07:00
MinRK
7c2083aa60 test saving with problematic cell contents 2014-10-15 16:57:18 -07:00
MinRK
2624f82787 set contentType='application/json'
instead of skipping straight to headers

avoids jQuery's crazy JSONP detection on `=.*??`,
which was triggered because it assumed the contentType was unspecified,
and thus should be guessed based on content.
2014-10-15 16:57:18 -07:00
MinRK
41cfd4f5cf use invoke instead of fabric
it's the descendant of the part of fabric we actually use,
it doesn't have complex compiled dependencies like fabric,
and it works on Python 3.
2014-10-15 16:53:07 -07:00
Jessica B. Hamrick
8896b538b5 Add regression tests for live notebook 2014-10-15 12:46:23 -07:00
MinRK
9e425bf94b move binary msg test to services/serialize 2014-10-15 12:23:33 -07:00
MinRK
8c743d304f unsigned ints for offsets
because signed ints for sizes is icky
2014-10-15 12:23:33 -07:00
MinRK
11f5775103 test binary websocket messages
only runs on slimerjs for now
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
b548e51550 use TextEncoding for string<->ArrayBuffer
requires text-encoding js polyfill, for now
2014-10-15 12:23:32 -07:00
MinRK
3693ac83ae support binary message from javascript 2014-10-15 12:23:32 -07:00
MinRK
6cef7fcb86 use utf8.js
move message serialization to kernel.serialize module
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
Jessica B. Hamrick
b68507ae91 Display prompt in the notebook correctly 2014-10-15 12:12:07 -07:00
Jessica B. Hamrick
8294a5938b Right-justify celltoolbar instead of reversing 2014-10-15 12:11:48 -07:00
Jonathan Frederic
c0108e1089 Merge pull request #6681 from SylvainCorlay/widget_hbox_align
Minor change in widgets.less to fix alignment issue
2014-10-14 14:33:53 -07:00
Min RK
8107e8a41b Merge pull request #6669 from SylvainCorlay/font_awesome_update
Font awesome update
2014-10-14 11:37:42 -07:00
Thomas Kluyver
0b7cbae7e0 Merge pull request #6685 from minrk/allow-no-session-id
allow session_id to be undefined when starting kernel channels
2014-10-14 11:35:44 -07:00
MinRK
3946dedbda remove redundant 'responsive-utilities' from style.less
it's already included in bootstrap.less
2014-10-13 21:18:24 -07:00
Thomas Kluyver
74d2ddf751 Merge pull request #6686 from minrk/default-kernel
use default kernel name in kernels service
2014-10-13 13:57:44 -07:00
Sylvain Corlay
e9ceb94db1 genereate css 2014-10-13 20:32:01 +00:00
Jonathan Frederic
1172876191 Add version trait to Widget base,
From widget Trello: version numbers for widget models;
when reloaded, will give the widget a chance to do
something intelligent or fail (by default) if the
version number doesn't match.
2014-10-13 11:52:19 -07:00
Jonathan Frederic
98cef15a7c Merge pull request #6221 from Carreau/cm4
Switch to CodeMirror 4.6.0
2014-10-13 10:39:03 -07:00
Jonathan Frederic
6a304fc63c Merge pull request #6540 from takluyver/comms-mgr-needs-no-shell
Make comm manager (mostly) independent of InteractiveShell
2014-10-12 16:11:36 -07:00
MinRK
7da61bfc13 use default kernel name in kernels service
matches sessions API
2014-10-12 14:59:03 -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
Thomas Kluyver
db179403f8 Merge pull request #6510 from Carreau/removecython
Remove cython extension and examples.
2014-10-11 11:27:25 -07:00
Sylvain Corlay
43d08b0795 fix alignment 2014-10-10 23:19:31 -04:00
Min RK
00f88ee1be Merge pull request #6654 from Carreau/closes-6647
Have /api return the IPython version
2014-10-10 11:39:36 -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
Matthias Bussonnier
87dc17ccbc cleanup style fixed in separate PR and few other things 2014-10-10 19:21:56 +02:00
Matthias Bussonnier
b24e69b058 cleanup whitespace 2014-10-10 19:21:55 +02:00
Matthias Bussonnier
3de3ef9add add comment about codemirror.modeURL 2014-10-10 19:21:55 +02:00
Matthias Bussonnier
c183aa5fe6 remove unused cm_loadmode 2014-10-10 19:21:55 +02:00
MinRK
8e863d951c use require to load CodeMirror modes
CM's loadmode addon only works if you *don't* load CodeMirror itself with require.
2014-10-10 19:21:55 +02:00
MinRK
7aed2fbb55 fix this.editor reference 2014-10-10 19:21:55 +02:00
Matthias Bussonnier
dc912dbdbd handle somehting selected and multiple cursors and 4 tabs show content in pager 2014-10-10 19:21:50 +02:00
Matthias Bussonnier
e0f19a386e protect agains undefined 2014-10-10 19:18:57 +02:00
Matthias Bussonnier
804d89351b rework keyboard management to avoit completer and up/down bugs 2014-10-10 19:18:56 +02:00
Matthias BUSSONNIER
5b355936df Update to codemirror 4
Update to codemirror 4.6 and update most notebook to work wiht it
this include keyevent that where triggerd twice and the re-writing of
ipython-gfm anf ipython mode to work with require.
2014-10-10 19:18:56 +02:00
Jonathan Frederic
262bf7d2c9 Merge pull request #6673 from jhamrick/fix-tooltip
Fix broken show in pager button
2014-10-10 08:31:25 -07:00
Jessica B. Hamrick
685040427a Fix broken show in pager button 2014-10-09 18:34:22 -07: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
Min RK
63a7969123 Merge pull request #6416 from Carreau/foobarcode
Unify Text/CodeCell code.
2014-10-09 15:00:15 -07:00
Min RK
60bfcf8c74 Merge pull request #6665 from jdfreder/travis_please_run_on_this
Separate widget model name from com target name.
2014-10-09 11:45:41 -07:00
Jonathan Frederic
4b968ece0b s/target_name/model_name 2014-10-09 10:55:46 -07:00
Matthias BUSSONNIER
9657a3f7cd Generalise render/unrender to all cells type
Allow change of behavior in pure (custom) css.
2014-10-09 12:14:56 +02:00
Matthias Bussonnier
b2a0798fdf Merge pull request #6598 from minrk/nbformat-backport
nbformat validation
2014-10-09 11:58:56 +02:00
Matthias Bussonnier
a8949405da Merge pull request #6644 from minrk/trust-changed
trigger trust_changed properly on load
2014-10-09 11:10:59 +02:00
Matthias Bussonnier
65f41327c9 Merge pull request #6106 from chronitis/interact-slider-textedit
Allow text input on slider widgets
2014-10-09 11:09:47 +02:00
Matthias Bussonnier
7d7b85a043 Merge pull request #6649 from minrk/302-notebooks
redirect /api/notebooks to /api/contents
2014-10-09 10:52:48 +02:00
Matthias Bussonnier
fa11da9162 Merge pull request #6586 from jhamrick/kernel-session-js
Kernel and session javascript cleanup
2014-10-09 10:45:50 +02:00
Jonathan Frederic
24096b0f45 Separate widget model name from com target name. 2014-10-08 21:31:00 -07:00
MinRK
b87fee048c redirect /api/notebooks to /api/contents
eases 2.x-3.x transition for consumers such as emacs-ipython-notebook
2014-10-08 12:33:43 -07:00
MinRK
b2d946d44e don't convert notebooks on upload 2014-10-08 12:33:34 -07:00
MinRK
8392c7ac9e don't check_and_sign old notebooks on upload 2014-10-08 12:33:34 -07:00
MinRK
4ae05c729c trust is stored in code_cell.metadata
not top-level code_cell
2014-10-08 12:33:33 -07:00
MinRK
ddd3aa2a5a add dialogs for failed save/load
- failed validation doesn't prevent save/load,
  but the user is now warned about it.
- there is now a warning dialog if fromJSON fails,
  rather than the usual silent failure.
2014-10-08 12:33:32 -07:00
MinRK
1a4b795870 Use Draft4 JSON Schema for both v3 and v4
no longer need jsonpointer
2014-10-08 12:33:31 -07:00
MinRK
91c7d00f95 use jsonschema refs, no need for jsonpointer 2014-10-08 12:33:31 -07:00
Min RK
633b315a87 Merge pull request #6658 from Carreau/less-175
pin less to less than 1.7.5
2014-10-08 12:10:41 -07:00
Jessica B. Hamrick
b650c56a66 One more this/that change 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
bbb9edf374 Fix bugs with this and that 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
37c2419c5e Rename all status_event to kernel_event 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
40ebe5d816 Make kernel dialogs be a special type of dialog 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
8f28134a89 Keep trying to reconnect 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
205a35ceec Fix equals sign and clarify where the number of restart attempts comes from 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
e5a5bdcdd3 Handle and test for failed restart in session.js 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
29e6885b60 Test for autorestart and failed autorestart 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
f2ad4fc176 Better way to wait inbetween tests 2014-10-08 11:30:32 -07:00
Jessica B. Hamrick
fe2402f99d Increase wait time between tests 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
7f8b95a661 Add status_ready.Kernel event and rename status_started to status_created 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
dea6b85f3c Fix bug when clicking notification for kernel_dead.Session 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
504f0b4d9d Add docstring to Session.restart 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
c43e06bbc4 Add test for kernel_dead.Session 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
42e863db8c Remove debugging statements 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
01ba501b88 Fix event tests 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
9180004fd1 Better way of logging events 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
8d4c9e7f30 Add tests for events 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
fa718fc8d2 Use Session.restart in Notebook.start_session 2014-10-08 11:30:31 -07:00
Jessica B. Hamrick
d5a4dec6c3 Add restart function to session 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
42a9a1f46d Make kernel js events clearer and more consistent 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
f77e60764e Use session.delete rather than kernel.kill 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
951d9a7249 Don't actually change kernel constructor signature 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
05611569ec Add docstrings to kernel.js 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
4aa66d09dd Add docstrings to session.js 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
2dbfc30934 Add no_kernel.Kernel event 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
d606d53b4e More informative error messages 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
999daf041c Handle query string in Kernel.start 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
b9cf034d51 Add some more kernel tests 2014-10-08 11:30:30 -07:00
Jessica B. Hamrick
befe8eb720 Update session tests 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
99f686918b Fix kernel and session tests 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
741b2e97b1 Only set channels to null when they are fully closed 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
a601531e1c Move channels into their own object 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
cf98a0a5a0 Better respect for abstraction barriers 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
2f3d8617b4 Fix shutdown test 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
ade7692ccd Fix bugs in kernel.js 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
3dfe601a8f Fix session references in toolbar and menubar 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
9f1574eb6c User correct check for whether kernel is running in tests 2014-10-08 11:30:29 -07:00
Jessica B. Hamrick
bd3c553d44 Fix messages received by notification area 2014-10-08 11:30:28 -07:00
Jessica B. Hamrick
bd16964276 Clean up kernel.js 2014-10-08 11:30:28 -07:00
Jessica B. Hamrick
c0eb372612 Fix bugs introduced into session.js 2014-10-08 11:30:28 -07:00
Jessica B. Hamrick
3f00b88baa Fix reference to session in notebook.js 2014-10-08 11:30:28 -07:00
Jessica B. Hamrick
8d76a40677 Clean up session class 2014-10-08 11:30:28 -07:00
Bussonnier Matthias
32bcaac5e2 pin less to less than 1.7.5
1.7.5 drop all vendor-prefixed values that are set to the default value
of most browser leading to huge change in the number of lines in css and
pain everywhere.
2014-10-08 19:50:37 +02:00
MinRK
1da7562d55 trigger trust_changed properly on load
event signature was not consistent
2014-10-08 10:17:29 -07:00
Mateusz Paprocki
ff5b4c6874 Test IPython.utils.fixConsole() (really ansispan()) 2014-10-08 14:15:07 +02:00
Mateusz Paprocki
ba54e020a3 Use more yellowish color for ansiyellow 2014-10-08 14:15:00 +02:00
Mateusz Paprocki
904216d546 Fix ansispan() to ignore stray [0m 2014-10-08 14:14:53 +02:00
Jonathan Frederic
d2df98ce1a Fix conflict with d1305d7510cc3 2014-10-07 23:14:00 -07:00
Manuel Riel
a490488f62 remove commented-out code 2014-10-08 01:51:12 +02:00
Manuel Riel
67f2322a8c simplify bin-file test 2014-10-08 01:29:53 +02:00
Manuel Riel
0e95bd9eda remove unused import in test_files.py 2014-10-08 01:25:31 +02:00
Manuel Riel
4a5c7ebb25 remove unused import 2014-10-08 01:15:22 +02:00
Jonathan Frederic
032300ea49 Merge pull request #6645 from jdfreder/css_order
Make sure DOMWidget _css is set after basic style traits
2014-10-07 15:22:05 -07:00
Thomas Kluyver
95b857b679 Merge pull request #6637 from minrk/notice-python-error
Check for Python errors in js tests
2014-10-07 15:21:40 -07:00
Thomas Kluyver
6163656f28 Merge pull request #6634 from minrk/select-contains
don't use contains in SelectWidget item_query
2014-10-07 15:20:25 -07:00
Jonathan Frederic
176529cce2 Make sure DOMWidget _css is set after basic style traits 2014-10-07 13:13:24 -07:00
Matthias Bussonnier
cfbd65d808 Merge pull request #6640 from jhamrick/ui-tour
Fix icons and typos in ui tour
2014-10-07 20:29:39 +02:00
Jessica B. Hamrick
27562308b1 Fix button alignment/size 2014-10-07 10:54:50 -07:00
Jonathan Frederic
60531c917f Merge pull request #6481 from jdfreder/intvalidatefix
Fix bug in bounded int/float logic.
2014-10-07 10:50:02 -07:00
Jessica B. Hamrick
9ee37de1db Fix icons and typos in ui tour 2014-10-07 00:16:18 -07:00
MinRK
845c7b4700 Check for Python errors in js tests
When running a cell in the js tests,
this checks for any errors and treats them as a failure.

Helps avoid confusion caused by silently ignoring failures in Python code.
2014-10-06 16:04:44 -07:00
MinRK
6740d0492e don't use contains in SelectWidget item_query
gives false positive matches when some values are substrings of others
2014-10-06 12:59:16 -07:00
Manuel Riel
c5069fe1fd remove redundant abs_path 2014-10-06 20:49:27 +02:00
Manuel Riel
fc59a1b927 use ContentManagers own is_hidden() function 2014-10-06 20:46:24 +02:00
Thomas Kluyver
825284bc6d Remove superfluous error checking 2014-10-06 11:36:59 -07:00
Manuel Riel
28d4444def 2 checks for python2 and python3) 2014-10-06 14:48:36 +02:00
Manuel Riel
bb8e33d70d fix bin-file test in ipython3 2014-10-06 14:25:50 +02:00
Manuel Riel
775ea55206 another shot at bin-tests on python3 2014-10-06 13:26:11 +02:00
Manuel Riel
e75cfa24df make base64 decoding ipython3 compatible 2014-10-06 12:50:53 +02:00
Manuel Riel
c6d548fbeb correctly handle base64 and json, improve bin-file test 2014-10-06 12:29:33 +02:00
Jonathan Frederic
438dc56ea6 Merge pull request #6617 from SylvainCorlay/selection
Selection Widgets: forcing 'value' to be in 'values'
2014-10-05 21:15:10 -07:00
Manuel Riel
dc352a334b Use \xFF in bin file test 2014-10-06 01:21:34 +02:00
Manuel Riel
2268268a9d add tests for file download via ContentsManager 2014-10-06 01:00:18 +02:00
Thomas Kluyver
590ba19ac3 Clean up some JS code 2014-10-05 09:35:54 -07:00
Thomas Kluyver
1ff846520b Put callbacks for create_view and create_child_view in options
And add errback support
2014-10-05 09:35:54 -07:00
Thomas Kluyver
c4a9cf9020 Fix logic 2014-10-05 09:35:54 -07:00
Thomas Kluyver
09b10dcb86 Make changes suggested by @jdfreder 2014-10-05 09:35:54 -07:00
Thomas Kluyver
5953a3f874 Allow widget views to be loaded from require modules
This required refactoring things that create widget views to use
callbacks instead of return values.
2014-10-05 09:35:53 -07:00
Manuel Riel
36c1a145e9 add new FilesHandler class 2014-10-05 13:37:30 +02:00
Manuel Riel
2b4cbbfea2 add new FilesHandler to serve files from ContentsManager. 2014-10-05 13:37:24 +02:00
Matthias Bussonnier
e808d23594 Merge pull request #6607 from minrk/cluster-load-remove
remove deleted profiles from cluster list
2014-10-05 11:45:58 +02:00
Matthias Bussonnier
ffc574d4dd Merge pull request #6596 from minrk/stream-text
msgspec 5: stream.data -> stream.text
2014-10-05 11:40:02 +02:00
Matthias Bussonnier
e504ea6d1f Merge pull request #6608 from minrk/rm-delayed-callback
stop using deprecated DelayedCallback
2014-10-04 21:21:49 +02:00
Matthias Bussonnier
b0cecaf91b Merge pull request #6606 from minrk/logname
use app name on tornado log statements
2014-10-04 12:22:49 +02:00
Sylvain Corlay
54a36e7369 forcing value to be in values 2014-10-03 23:47:48 +00:00
Jason Grout
7700848737 Add semantic classes to top-level containers for single widgets
This makes it much easier to customize all widgets of a certain type using
CSS.  For example, to change just the IPython widget selects, a CSS
rule like .widget-select select {...} should work well.
2014-10-03 19:13:49 +00:00
MinRK
ee1d9d65f3 stop using deprecated DelayedCallback
in favor of simpler IOLoop.add_timeout

It was added in pyzmq, but deprecated in pyzmq-13.
2014-10-03 12:05:23 -07:00
MinRK
1f231f7b5a remove deleted profiles from cluster list 2014-10-03 11:36:19 -07:00
MinRK
84a72ae87a use app name on tornado log statements
avoids mixture of 'tornado.access' and 'NotebookApp'
2014-10-03 11:07:36 -07:00
Sylvain Corlay
8a384cd489 adding a tooltip in IPython buttons 2014-10-03 16:41:34 +00:00
Matthias Bussonnier
0d9db64180 Merge pull request #6582 from jdfreder/symmetric_state
Symmetric widget get/set_state
2014-10-03 09:10:56 +02:00
Matthias Bussonnier
eeb9cb0209 Merge pull request #6558 from jhamrick/kernel-start-failure
Handle kernel start failures more gracefully
2014-10-03 09:04:00 +02:00
Jessica B. Hamrick
1d6359f970 Use codemirror for error messages 2014-10-02 16:33:35 -07:00
Min RK
28edb94897 Merge pull request #6488 from jhamrick/lock-cells
Proof of concept for preventing cell deletion via metadata
2014-10-02 15:55:07 -07:00
MinRK
f69b1b15a3 msgspec 5: stream.data -> stream.text 2014-10-02 12:10:58 -07:00
Bussonnier Matthias
0dcce32de7 use standard html 2014-10-02 16:14:03 +02:00
Min RK
0d9b7597c3 Merge pull request #6583 from takluyver/win-symlink-tsets
Windows symlink test fixes
2014-10-01 11:46:38 -07:00
Gordon Ball
48b6f53f51 Require base/js/keyboard and use keycode.enter 2014-10-01 15:37:23 +02:00
Jessica B. Hamrick
60b18ad23e Fix ReferenceError in js tests, fixes #6542 2014-10-01 00:04:33 -07:00
Thomas Kluyver
645f542e2b Interpret another error as missing symlink support on Windows
This occurs if the system and Python support symlinks, but the user does
not have permission to create them.
2014-09-30 14:11:34 -07:00
Jonathan Frederic
60bf0f5b2f s/apply_update/set_state 2014-09-30 16:02:02 -04:00
Jonathan Frederic
852ec2ab69 s/_handle_receive_state/set_state in tests too 2014-09-30 15:59:26 -04:00
Jonathan Frederic
f83140dae8 s/long thing/set_state 2014-09-30 15:55:31 -04:00
Jessica B. Hamrick
6bc5702398 More descriptive short message 2014-09-30 12:21:01 -07:00
Jessica B. Hamrick
6a8cae2913 Don't pop up modal dialog 2014-09-30 12:20:50 -07:00
Jessica B. Hamrick
d0e942213d Always show the modal dialog, and have a fallback generic message 2014-09-30 10:50:10 -07:00
Jessica B. Hamrick
46e40e5ea1 Return a proper JSON object 2014-09-30 10:50:09 -07:00
Jessica B. Hamrick
5e1e8a116c Use 501 error code instead of 400 2014-09-30 10:50:09 -07:00
Jessica B. Hamrick
c4a89cd54d Better user experience when kernel isn't found 2014-09-30 10:50:09 -07:00
Jessica B. Hamrick
5ba858fc7c Remove 'we' from message 2014-09-30 10:50:09 -07:00
Jessica B. Hamrick
263181c416 Report the exact error that occurred 2014-09-30 10:50:09 -07:00
Jessica B. Hamrick
58fcb3abb9 Show the user a different notification 2014-09-30 10:50:09 -07:00
Jessica B. Hamrick
cfc234dc89 Handle NoSuchKernel errors more gracefully 2014-09-30 10:50:08 -07:00
Min RK
780ceee03a Merge pull request #6415 from Carreau/move-md-show-logic
Move md-cell display logic to css
2014-09-30 10:35:23 -07:00