Version 0.10


  • Allow configuration of initial section numbering via notebook metadata:
    • uses``toc.base_numbering`` as set by the toc2 notebook plugin (thanks to @phelps-sg)

  • Allow configuration of initial section numbering via notebook metadata (thanks to @phelps-sg)

  • Refactor testing and deployment:
    • Move from Travis CI to GitHub Actions for CI and CD

    • Introduce testing for Windows

    • Ensure release of logging handlers after build finishes

    • Move from Coveralls to Codecov for test coverage reporting

    • Use RTD directly for docs CI, and make the build fail on warnings


Add compatibility of sphinx conversion with ipywidgets. For examples see the section in Writing Code and Formatting Output, and for sphinx extension configuration see ipypublish.sphinx.notebook. Note, the sphinx version dependency is now >=1.8.

Additionally the code base has been formatted by black, and some minor bugs/warnings have been fixed.


Improve ipubpandoc filter conversion of equations:

  • Ensure equations that are already wrapped in a math environment are not wrapped twice.

  • For RST output, ensure multi-line equations are correctly indented

v0.10.6 & v0.10.7

Added sphinx option for toggling notebook input and output cells. For examples see Toggle inputs/outputs and Writing Code and Formatting Output.


Remove requirement for sphinx < 2.0


Fix image reference clashes in rst files (see chrisjsewell/ipypublish#90)


Minor Improvements to ipypublish.sphinx.notebook:

  • remove sphinx.ext.imgconverter from sphinx auto-builds

  • add additional known sphinx roles


Update dependency requirements:

  • Only require backport dependencies for python version older than their implementation

  • use ordered-set, instead of oset dependency, since it is better maintained


Minor Improvements to ipypublish.sphinx.notebook:

  • Formatting of the execution_count is now inserted by: ipysphinx_input_prompt.format(count=execution_count)

  • Use “Code Cell Output” as placeholder for output image caption


  • Added Sphinx extension for glossary referencing: ipypublish.sphinx.gls. See ipypublish.sphinx.gls

  • Added ConvertBibGloss post-processor, to convert a bibglossary to the required format

  • Added notebook-level metadata options for bibglossary and sphinx (see Document Level Metadata Schema)

  • Large refactoring and improvements for test suite, particularly for testing of Sphinx extensions (using the Sphinx pytest fixtures) and creation of the IpyTestApp fixture

  • fixed tornado version restriction

Back-compatibility breaking changes:


def run_postprocess(self, stream, filepath, resources):
   output_folder = filepath.parent


def run_postprocess(self, stream, mimetype, filepath, resources):
   output_folder = filepath.parent

Version 0.9


Bug fix for widefigures (see issue), thanks to @katie-jones


Added Conda distribution:

`console $ conda install -c conda-forge ipypublish `

v0.9.1 & 0.9.2

Minor big fix to fix blank line between directives and options in RST


Major Improvements

Version 0.8


Handle Cell Attachments

Images can also be embedded in the notebook itself. Just drag an image file into the Markdown cell you are just editing or copy and paste some image data from an image editor/viewer.

The generated Markdown code will look just like a “normal” image link, except that it will have an attachment: prefix:

![a stick figure](attachment:stickfigure.png)

In the Jupyter Notebook, there is a special “Attachments” cell tool-bar which you can use to see all attachments of a cell and delete them, if needed.


RST Converter

  • added standard rst/sphinx converter

  • added nbsphinx converter

  • added optional printing of traceback

  • allow segments to be yaml (with yaml.safe_load)

  • added document level metadata schema


Outline templates now use a jinja file, instead of json:

  • extracted templates into separate files

  • use template outline file instead of json schema

  • improve front end logging

  • update documentation

  • version bump

  • added tests

Version 0.7


Improved the dict_to_kwds filter and added biboptions metadata tags. See Metadata Tags


Major API Update

  • Converted export configurations and templates from python to JSON

  • Added validation schema for configurations and templates

  • added option to control style of bibliography in latex

  • Converted script executables to console entry points

  • Updated test configuration from nose to pytest

    • added many more tests for all export configurations and user interface

    • fixed Mac Os build on Travis

  • Improved user interface

  • Added ipynb to python file (with commented metadata) exporter

  • Updated documentation with new API and how to convert plugins

Version 0.6


Added support for raw cells

Raw output is now included in the latex (if raw format is latex), and html (if raw format is html)


Encoding Bug Fixes for Python < 3.6 and addition of documentation


Better support for LaTeX math environments



  • added language translation

  • added width/height options for latex figures

  • changed embedded html to be iframes, with lazy loading for reveal slides

  • added titles and author for html and slides

  • bibtexparser uses “link” rather than “url” key (fixed)

  • fixed regex for headers (one or more # not zero or more)

  • allow codecells with no outputs

  • added ansi colors for latex listings

  • added adjust box for resizing tables too wide to fit in page width


Added output level metadata. See Metadata Tags


changed top-level meta tag from latex_doc -> ipub (to reflect that it also applies to html/slides output)


  • improved control of slide output

  • changed from using utf8x -> xelatex, for handling font encoding

  • added mkdown output tag

Version 0.5


Small bug fix for html caption prefixing

  • moved html caption prefixing to LatexCaption, so that captions from other cells are prefixed


Slide autonumbering and captions from code output


Improvements to Slide Output and Smart Slide Creation:

  • slide rows/columns partitioned by markdown headers

  • improved latex listings default options for text & stream data


Default Conversion Plugins & Enhancements to HTML/Slides Conversion

  • added auto numbering and correct reference hyperlinks for figures/tables/equations/code in html & slides

  • added text meta-tag, default meta-tag post processor, and additional converters based on it

  • added embeddable html

Version 0.4


added universal bdist flag


Introduced nbpresent: for reveal.js slideshow creation and serving

  • a lot of refactoring of html template creation improvement of command line argument processing introduction of preprocessors general awesomeness

Version 0.3

First full, tested pypi release!

Version 0.2

New Latex Metadata convention:

Now all under “latex_doc” key with no “latex_” prefix , e.g.

"latex_doc" : {
    "ignore": true

instead of:

{"latex_ignore": true}

Version 0.1

Initial release, before changing latex meta tag convention