User can now ask ein to truncate long outputs in a worksheet. Use the
customizable variable `ein:truncate-long-cell-output' to control this behavior.
Set to nil to have no truncation, otherwise an integer value specifying the
number of lines to keep before truncating.
Loading large notebooks (>1M) can be slow. At least some of this is due to
downloading from the jupyter server, but this operation is asynchronous and
should not block emacs. My suspicion is that when Emacs blocks it is when it is
generating the internal data structures used to represent the notebook in emacs.
This is somewhat unavoidable, but part of the slow down may be due to reaching
the cons threshold. These changes try to temporarily increase the cons threshold
while loading the notebook. We'll see if it helps at all.
Don't think we were handling https:// url's correctly.
Also some code cleanup in ein-connect; fix longstanding bug in ein:load-files,
and tweak default timeout for starting a jupyter session from within emacs.
Add configurable timeout (see `ein:jupyter-server-run-timeout`) that will
hopefully abort calls to `ein:jupyter-server-run` that hang; this is to help
with issues like those reported in #176.
Also update documentation, dependencies in preparation for 0.13.0 release.
ein company backend now dutifully looks for the file and line where an object is
defined when company so asks it. When ein fails in its duty it fails silently
and I am not sure yet if that is the correct behavior. For now it will stand,
until I think of something better.
Some cell actions now have a true undo. Moving, inserting and executing cells
can all be undone. Deleting cell does not have an undo at the moment, though the
preferred method for users is to call ein:worksheet-kill-cell which puts the
removed cell into the kill-ring.
Newly created notebooks no longer error on saving - bug in how
kernelspec metadata was being filled in.
Also a number of miscellaneous fixes to indentation that have
inexplicably appeared in the code.
Some small fixes for typos and catching up on version info.
Somewhat hackish solution by defadvicing json.el code to
overcome possible bug in said code. Apparently
`json-encode` does not handle nested empty hash tables properly.
Start of a refactor of code for accessing Jupyter's new contents API.
First up an implementation of list contents.
New function for flattening lists borrowed from cl-alexandria (how did
we survive withoutthis in the before times?)
Updating author list here and there.