Commit Graph

3609 Commits

Author SHA1 Message Date
Jason Grout
009dcf43cf change filename to unicode string 2015-01-22 23:06:18 +00:00
Jason Grout
ad35813576 Make nbextension test a little clearer about the intent. 2015-01-22 22:33:45 +00:00
Jason Grout
9701ce1752 Add some unit tests for the new dictionary syntax for installing nbextensions 2015-01-22 21:49:33 +00:00
Jason Grout
996d77cc89 Add documentation to check_nbextension, and switch order of parameters to be consistent with install_nbextension. 2015-01-22 21:23:12 +00:00
Jason Grout
25b475bc0a Refactor the logic to get the nbextension directory
We do this so that check_nbextension corresponds to install_nbextension.
2015-01-22 21:18:09 +00:00
Jason Grout
6b4c986407 Work around a bug in setting and getting the mtime in python 2
See http://bugs.python.org/issue12904.  Basically, we can get the mtime in
nanosecond precision, but only set it in microsecond precision.  This means
that the shutil.copy2 will not set the destination's mtime to exactly the same
mtime as our source.  The end result is that we can *always* end up copying
the extension because the source always appears newer.  We add a microsecond of fudge time when checking to see
if the source is newer than the destination to get around this.

This bug is fixed in Python 3.3+, I believe.
2015-01-22 20:49:51 +00:00
Jason Grout
3beb707717 Copy as much of the nbextension as we can, even if there are errors for some of the files. 2015-01-22 20:47:10 +00:00
Jason Grout
a3d0a1764b Fix the path we use when walking to include the path separator
This is so that parent[len(path):] isn't an absolute path, so the pjoin doesn't throw dest away.
2015-01-22 20:46:42 +00:00
Jason Grout
fc5a3bb304 Don't overwrite the dest variable 2015-01-22 20:41:27 +00:00
Jason Grout
bf4a20f382 Initial take on implementing configurable destinations for nbextensions.
This allows for a directory in a package to be called 'nbextensions', but be installed to an nbextension named after the package, for example.
2015-01-22 18:23:39 +00:00
Thomas Kluyver
2deb7d1f29 Update help link about Markdown
Closes gh-7428
2015-01-12 09:46:55 -08:00
Matthias Bussonnier
7df157f6e4 Make modal backdrop static by default.
does not dismiss dialog accidentally if click on faded area.

Closes #7403
2015-01-11 15:51:14 +01:00
Brian E. Granger
538381b028 Merge pull request #7397 from jasongrout/comprehension
Generate fontweight enum values without an extraneous variable from a comprehension
2015-01-10 12:05:25 -08:00
Min RK
3228719b26 fix highlight test for failed highlighting
not sure how this ever succeeded, but it's failing now
2015-01-10 11:05:45 -08:00
Matthias Bussonnier
4991b08d6c Merge pull request #7387 from minrk/system-wide-nbextensions
allow system-wide installtion of nbextensions
2015-01-10 13:20:16 +01:00
Brian E. Granger
db10980a8f Merge pull request #7401 from mathieu1/new-notebook-same-kernel
create new notebook with same kernel
2015-01-09 17:07:20 -08:00
Min RK
07b1e77d3b path.sep 2015-01-09 14:18:31 -08:00
Min RK
9a1dba2c14 remove duplicate arg conflict check 2015-01-09 14:15:32 -08:00
Min RK
cebf80d881 s/nbextensions/nbextensions_dir
make it clearer from name that arg refers to dir
2015-01-09 14:15:32 -08:00
Min RK
f3da69c38d allow system-wide paths for nbextensions
like kernel specs, default install is `/usr/local/share/jupyter/nbextensions`

add `--user` for .ipython/nbextensions path
2015-01-09 14:15:31 -08:00
Brian E. Granger
ab83599d36 Merge pull request #7389 from minrk/one-websocket
use single WebSocket connection for all channels
2015-01-09 11:37:51 -08:00
Min RK
a6800450e4 Merge pull request #7398 from jasongrout/body-classes
Split apart the body attributes and classes in the notebook templates
2015-01-09 10:18:05 -08:00
Min RK
3cf6eacc86 Merge pull request #7324 from quantopian/separate-checkpoint-manager
DEV: Refactor checkpoint logic out of FileContentsManager into a separate class.
2015-01-09 10:17:15 -08:00
Mathieu
d90cc0e0de put current kernel at the top 2015-01-09 18:41:51 +01:00
Mathieu
4e5839dde4 add choice of kernel for new notebook 2015-01-09 15:46:06 +01:00
Mathieu
0eb340b3e2 create new notebook with same kernel 2015-01-09 04:26:16 +01:00
Jason Grout
5dea7ad30b Split apart the body attributes and classes in the notebook templates 2015-01-08 23:41:50 +00:00
Scott Sanderson
64e5c49608 DEV: Break get_checkpoint into separate methods.
One for notebooks and one for checkpoints.
2015-01-08 17:00:53 -05:00
Scott Sanderson
2569c3069d STY: s/CheckpointManager/Checkpoints
It's easy to confuse CheckpointManager and ContentsManager.
2015-01-08 14:41:46 -05:00
Scott Sanderson
021e2da495 DEV: Separate FileCheckpointManager and GenericFileCheckpointManager.
- Adds a `GenericCheckpointMixin` as a helper for implementing the two
  boundary-traversing Checkpoint API methods, `create_checkpoint` and
  `restore_checkpoint`.

- `GenericFileCheckpointManager` is implemented as a subclass of
  `FileCheckpointManager` using `GenericCheckpointMixin`.  Note that
  this is the safe subtyping relationship because of method
  signature *contra*variance: `FileCheckpointManager` accepts
  `FileContentsManager` in its method signatures type, whereas
  `GenericFileCheckpointManager` accepts any `ContentsManager`.

- Moved Checkpoint-related classes to their own files.
2015-01-08 14:07:17 -05:00
Jason Grout
0bdfdc03ca python3 does not like adding lists and map results
Thanks to @takluyver for pointing this out
2015-01-08 18:43:38 +00:00
Jason Grout
18cfbc0d11 Generate fontweight enum values without an extraneous variable from a comprehension
In python 2, the comprehension will create a new class attribute, i.  Using a map will not create the extra local variable.
2015-01-08 18:24:38 +00:00
Scott Sanderson
12fe97e2af DEV: Allow CheckpointManagers to optimize for shared backends.
On `create_checkpoint` and `restore_checkpoint`, pass a path and a
`ContentsManager` to `CheckpointManager` instead of an already-loaded
model.

The `CheckpointManager` base class provides a correct implementation of
these methods that's generic across any ContentsManager, but subclasses
are free to specialize when the storage backend of `ContentsManager` is
shared.
2015-01-07 21:23:55 -05:00
Scott Sanderson
55d4e20aaf DEV: Remove ContentsManager.walk. 2015-01-07 16:13:42 -05:00
Scott Sanderson
2b73f1e620 DEV: Implement os.walk analog for ContentsManagers. 2015-01-06 23:59:31 -05:00
Scott Sanderson
1e2e86dcca MAINT: Return dicts from CheckpointManager.get_checkpoint.
The output is going to get converted to a dict anyway, and this makes it
easier to pipe output from a CheckpointManager directly to a
ContentsManager.
2015-01-06 14:28:59 -05:00
Min RK
1cac03528b use single WebSocket connection for all channels
multiplex on a 'channel' key in message,
rather than separate websockets.

Unlike zmq, there aren't different message patterns that require the channels to be separate.

Reduces FD count by factor of 3 and connection complexity in js.
2015-01-06 11:15:15 -08:00
Matthias Bussonnier
2b7568c13f Merge pull request #7375 from minrk/empty-execute-result
ensure data, metadata are set in execute_results
2015-01-06 12:52:02 +01:00
Matthias Bussonnier
87b7f7599c Merge pull request #7278 from minrk/nb-file-ext
don't enforce .ipynb extension in URLs
2015-01-06 12:42:54 +01:00
Matthias Bussonnier
f51872c4c2 Merge pull request #7346 from jdfreder/terminal-page
Use page backdrop color in terminal page
2015-01-06 12:27:46 +01:00
Min RK
b891a50896 Merge pull request #7379 from juhasch/js-tests
Js tests
2015-01-05 11:23:11 -08:00
Jonathan Frederic
f79b914e5c invoke css 2015-01-05 11:12:43 -08:00
Jonathan Frederic
f0da3c863c Make headerbar -1 margin global 2015-01-05 11:12:23 -08:00
Juergen Hasch
5e641876da fix insert_cell_at_index call in tests 2015-01-05 11:21:30 +01:00
Juergen Hasch
2fbf8835e1 fix insert_cell_at_index call in tests 2015-01-05 11:18:41 +01:00
Matthias Bussonnier
cc0efade88 Merge pull request #7376 from minrk/modal-z-index
recompile css
2015-01-05 07:01:17 +01:00
Min RK
c9c6b8d8a2 recompile css
it had fallen out of sync with updated bootstrap
2015-01-04 12:13:50 -08:00
Min RK
d2335ab000 handle missing data, metadata in validate_mimebundle 2015-01-04 12:06:23 -08:00
Min RK
9e3e5cfca7 store widget state in single key
rather than in a dict, which doesn't work without reserializing *all* stored widget states (of all notebooks), since localStorage only supports storing strings.
2015-01-04 11:56:16 -08:00
Min RK
ffaa09492a Merge pull request #7315 from Carreau/codacy2
miscellaneous cleanup
2015-01-03 12:22:45 -08:00