v0.6.0 (2019-09-17)
Major changes
This version of Jupyter Book contains several major enhancements to the book's
build process and layout. Here as some major highlights:
Page build process
When you run jupyter-book build
, your pages will now be converted into HTML
instead of Jekyll Markdown. This uses nbconvert
under the hood, and should make
behavior more consistent (and less-dependent on Jekyll's specific markdown flavor, Kramdown).
This will also make it easier to build individual page HTML without requiring a full book.
Page layout enhancements.
There are a number of enhancements to the layout of each page of the book.
The topbar is now sticky, and uses whitespace more effectively. In addition, the
right TOC will now only show up when the page is wide enough, and let the user
hover over it to see the page's TOC content on narrower screens.
Jupytext integration
✨✨experimental✨✨
Jupyter Book can now build page HTML from Jupytext text files. This allows
you to store your book content in plain text and convert into Jupyter Notebooks
and page HTML at build time. See the documentation on using jupytext
for more information.
PDF downloads
There's now a button that uses PrintJS
to download a PDF version of each
page of your book. This will let readers download content offline and
read on their own.
TOC auto-generation
We've improved the auto-generation of the Table of Contents for a folder
of book content. This should make it easier to quickly get started
generating a TOC file for your Jupyter Book.
Popouts and full-width cells
There are now two different kinds of cell layouts. popouts will
be placed to the right of your book content. This allows you to call out
information without disrupting the narrative flow of your page. full-width
cells will take up a larger width on the page, causing the reader to focus on
this information. This makes it easier to highlight wide-form visual content.
Here are a few examples of this, you can find out more on the layouts documentation
Footers
You can now add a configurable footer to each page of your book! You can
do so from the footer_text
field in the config.yml
file for your book.
PRs and Issues
Implemented enhancements:
- Improve the auto-TOC function #271
- Export pages to PDF #267
- Adding popouts to the right #266
- Add option to execute notebooks when building the book #234
- Add a footer for each page #233
- adding error message context to the build CLI command #320 (choldgraf)
- Wrap
jekyll-raw
cells with {% raw %} #308 (SamLau95) - adding popout cell #302 (choldgraf)
- adding right toc showing when there's no sidebar content #300 (choldgraf)
- adding jupytext support #280 (choldgraf)
- adding print button #279 (choldgraf)
- Updating page layout and hoverable table of contents #278 (choldgraf)
- Add a hiding topbar w/ scroll #276 (choldgraf)
- Improving TOC functionality #273 (choldgraf)
- use celltagpreprocessor to remove parts of cells and updating running code module #264 (choldgraf)
- Create footer #254 (martinagvilas)
- removing jekyll markdown templates #249 (choldgraf)
- adding simple page building #248 (choldgraf)
- HTML build step #239 (choldgraf)
- [WIP] Refactoring page layout + adding popouts and a topbar #169 (choldgraf)
Fixed bugs:
- Some small formatting issues following upgrade to master #296
- Make the PDF print work for MathJax math #285
- Code cells in plain Markdown files are rendered as raw text #283
- 'jupyter-book upgrade' deletes new references #261
- default book doesn't build properly on github - symlink error #237
- Double check installation dependencies #211
- Don't use quotes for user-entered YAML entries #305 (SamLau95)
- Set a blank excerpt for all pages #303 (SamLau95)
- fixing footer width #301 (choldgraf)
- Use CDNs for JS libraries #292 (SamLau95)
- Load thebelab asynchronously #291 (SamLau95)
- Fix missing </div> if page.interact_link is false #290 (SamLau95)
- fixing jupytext markdown inconsistencies #288 (choldgraf)
- fixing double math printing #286 (choldgraf)
- fixing up print functionality #284 (choldgraf)
- making a download PDF button appear on all pages #282 (choldgraf)
- fixing the TOC function #270 (choldgraf)
- [FIX] Fix references being deleted with jupyter-upgrade #263 (martinagvilas)
- fixing links #260 (choldgraf)
- adding instructions for build #257 (choldgraf)
- fixing pypi description #256 (choldgraf)
- version fix #250 (choldgraf)
Closed issues:
- Jupyter Notebook can't close a running notebook #317
- Building book fails with a jinja2.exceptions.TemplateNotFound error #310
- serving non- md/ipynb content #295
- Broken links #259
- Missing file error #253
- Multicursor sometimes only deletes one line when there's spaces #251
- Release summary for v0.6 #331
Merged pull requests:
- fixing releases info #333 (choldgraf)
- dev0 bump #332 (choldgraf)
- bumping version for release #330 (choldgraf)
- fixing up execute docs #328 (choldgraf)
- updating documentation for build #326 (choldgraf)
- adding miniconda-based test #324 (choldgraf)
- removing outdated FAQ entry #319 (choldgraf)
- Changes to make work with
conda skeleton pypi jupyter-book
#315 (krinsman) - Update Docs to include alternative method for building Jekyll locally. #313 (krinsman)
- Omit entries w/o URLs and external links from TOC #309 (SamLau95)
- documenting execution functionality #299 (choldgraf)
- adding beta label to features #294 (choldgraf)
- adding a sample CircleCI build config #293 (choldgraf)
- footer width #287 (choldgraf)
- adding help entries #277 (choldgraf)
- Circlecibot #269 (choldgraf)
- factoring out page module #265 (choldgraf)
- summary not large image for twitter #247 (choldgraf)
- twitter share #246 (choldgraf)
- updating changelog #245 (choldgraf)
- version bump to dev #243 (choldgraf)