NBConvert 5.5

With many significant improvements, we are pleased to announced nbconvert
5.5.0!

It is available via pypi (pip install nbconvert -U). For conda it should
appear in a day or so when the conda-forge feed picks up the new version (conda
install nbconvert -c conda-forge).

We had some investment in latex and pdf conversions that have been
longstanding in the Miltestone for 5.5. We got template improvements and
several bug squashes into the release. However some of the more fundamental
improvements like spaces in paths/names and http image references are still
in progresss as we work through better approaches. Look for those
improvements in the next release.

For full details about the release, see the changelog
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst>,
but we've highlighted the significant changes below, and readthedocs page
<http://www.google.com/url?q=http%3A%2F%2Fnbconvert.readthedocs.io%2Fen%2Flatest%2Fchangelog.html%23id1&sa=D&sntz=1&usg=AFQjCNH9xiO0L_83DrtJXyQbZtLr9S_s2Q>
should update shortly.

Contributors

The following 18 authors contributed 144+ commits -- Thank you all!

   - Benjamin Ragan-Kelley
   - Clayton A Davis
   - DInne Bosman
   - Doug Blank
   - Henrique Silva
   - Jeff Hale
   - Lukasz Mitusinski
   - M Pacer
   - Maarten Breddels
   - Madhumitha N
   - Matthew Seal
   - Paul Gowder
   - Philipp A
   - Rick Lupton
   - Rüdiger Busche
   - Thomas Kluyver
   - Tyler Makaro
   - WrRan

The full list of changes they made can be seen on GitHub
<https://github.com/jupyter/nbconvert/issues?q=milestone%3A5.5+>
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#significant-changes>Significant
Changes
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#deprecations>
Deprecations

Python 3.4 support was dropped. Many of our upstream libraries stopped
supporting 3.4 and it was found that serious bugs were being caught during
testing against those libraries updating past 3.4.

See :ghpull:`979`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id2>
for
details.
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#ipywidget-support>IPyWidget
Support

Now when a notebook executing contains Jupyter Widgets
<https://github.com/jupyter-widgets/ipywidgets/>, the state of all the
widgets can be stored in the notebook's metadata. This allows rendering of
the live widgets on, for instance nbviewer, or when converting to html.

You can tell nbconvert to not store the state using the store_widget_state
argument:

jupyter nbconvert --ExecutePreprocessor.store_widget_state=False --to
notebook --execute mynotebook.ipynb

This widget rendering is not performed against a browser during execution,
so only widget default states or states manipulated via user code will be
calculated during execution. %%javascript cells will execute upon notebook
rendering, enabling complex interactions to function as expected when
viewed by a UI.

If you can't view widget results after execution, you may need to select
Trust Notebook under the File menu of the UI in question.

See :ghpull:`779`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id4>
, :ghpull:`900`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id6>,
and :ghpull:`983`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id8>
for
details.
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#execute-preprocessor-rework>Execute
Preprocessor Rework

Based on monkey patching required in papermill
<https://github.com/nteract/papermill/blob/0.19.1/papermill/preprocess.py> the
run_cell code path in the ExecutePreprocessor was reworked to allow for
accessing individual message parses without reimplementing the entire
function. Now there is a processs_message function which take a ZeroMQ
message and applies all of its side-effect updates on the cell/notebook
objects before returning the output it generated, if it generated any such
output.

The change required a much more extensive test suite covering cell
execution as test coverage on the various, sometimes wonky, code paths made
improvements and reworks impossible to prove undamaging. Now changes to
kernel message processing has much better coverage, so future additions or
changes with specs over time will be easier to add.

See :ghpull:`905`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id10>
 and :ghpull:`982`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id12>
for
details
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#out-of-memory-kernel-failure-catches>Out
Of Memory Kernel Failure Catches

When running out of memory on a machine, if the kernel process was killed
by the operating system it would result in a timeout error at best and hang
indefinitely at worst. Now regardless of timeout configuration, if the
underlying kernel process dies before emitting any messages to the effect
an exception will be raised notifying the consumer of the lost kernel
within a few seconds.

See :ghpull:`959`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id14>
, :ghpull:`971`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id16>,
and :ghpull:`998`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id18>
for
details
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#latex--pdf-template-improvements>Latex
/ PDF Template Improvements

The latex template was long overdue for improvements. The default template
had a rewrite which makes exports for latex and pdf look a lot better. Code
cells in particular render much better with line breaks and styling the
more closely matches notebook browser rendering. Thanks t-makaro for the
efforts here!

See :ghpull:`992`
<https://github.com/jupyter/nbconvert/blob/master/docs/source/changelog.rst#id20>
for
details



Thanks all for the combined efforts. We'll start working on the next wave
of improvements to come.

-- 
You received this message because you are subscribed to the Google Groups 
"Project Jupyter" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/CAJF6vz4FF3FGdm1XigqJs0agfk349-7rkU1uDYXtKJqgiZBaEQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to